Skip to main content

VEnvDotApp

On a Mac, if you want to access the GUI, or various other mac-specific APIs, your executable needs to be present in a bundle. This can be an "app bundle" or a "framework bundle". The System python, python.org python, Homebrew Python, and pyenv python (with a little work) are all so-called "framework builds" which include such a bundle.

To build a real bundle, something that you can distribute to someone else, you probably want to use py2app. However, if you just want to pip install a tool that somebody else wrote which happens to want to present some GUI elements, or you want to develop something of your own in a virtualenv without setting up the requisite py2app infrastructure (including a setup.py, etc), this might be the tool for you.

How to use it

If you're using someone else's code and you just want to make a given virtualenv bundle-y, just pip install venvdotapp && venvdotapp.

For example:

$ mktempenv
...
$ pip install wxpython
...
$ pycrust
This program needs access to the screen. Please run with a
Framework build of python, and only when you are logged in
on the main display of your Mac.
$ pip install venvdotapp
...
$ venvdotapp
.../.virtualenvs/tmp-4337833f3452981/bin/tmp-4337833f3452981.app
$ pycrust
<A GUI Window Pops Up>

If you're writing your own program which requires an app bundle, you don't need to use the command-line script, just put the following at the very top of your main script:

from venvdotapp import require_bundle
require_bundle()

Note that this will raise an exception if your base Python is not a framework build and therefore not capable of displaying a GUI.

Release files for venvdotapp 19.7.1

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for venvdotapp 19.7.1
File Size Uploaded
venvdotapp-19.7.1.tar.gz 3.7 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for venvdotapp 19.7.1
File Interpreter ABI Platform
venvdotapp-19.7.1-py2.py3-none-any.whl Python 2, Python 3 none any Details

Total release size: 11.5 kB

Release files / venvdotapp-19.7.1.tar.gz

Download URL venvdotapp-19.7.1.tar.gz
Size 3.7 kB
Tags Source
SHA-256 checksum
How to use checksums
0dfcc93aa35cbac96e0c582365dc44c46951e8165bf8ae6c22379c2ccf6ce577
BLAKE2b-256 checksum
How to use checksums
e22f2482b195117e0b39bb8cdf16e46a28a3e23c928c5eb39b31306422191218
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/1.13.0 pkginfo/1.5.0.1 requests/2.21.0 setuptools/40.8.0 requests-toolbelt/0.9.1 tqdm/4.31.1 CPython/3.6.6

Release files / venvdotapp-19.7.1-py2.py3-none-any.whl

Download URL venvdotapp-19.7.1-py2.py3-none-any.whl
Size 7.8 kB
Tags Python 2 Python 3
SHA-256 checksum
How to use checksums
22aba27e03523a7be8f8bf88b0302f3be28a73a3c79cb988c9296dce4eec4440
BLAKE2b-256 checksum
How to use checksums
413b668344e4ee429ea768499957ecca826d9d65c9166b0ee41d0b6f4000b1a2
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/1.13.0 pkginfo/1.5.0.1 requests/2.21.0 setuptools/40.8.0 requests-toolbelt/0.9.1 tqdm/4.31.1 CPython/3.6.6

Release history Release notifications | RSS feed

This release

19.7.1 This release

2 release files

19.7.0

2 release files

0.1.0

2 release files

0.0.2

1 release file

0.0.1

1 release file

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page