Bob Ippolito (@etrepum) on Haskell, Python, Erlang, JavaScript, etc.

ANN: py2app 0.1.1


py2app is the bundlebuilder replacement we've all been waiting for. It is implemented as a distutils command, similar to py2exe, that builds Mac OS X applications from Python scripts, extensions, and related data files. It tries very hard to include all dependencies it can find so that your application can be distributed standalone, as Mac OS X applications should be.

py2app 0.1.1 is primarily a bugfix release:

  • Several problems related to Mac OS X 10.2 compatibility and standalone building have been resolved
  • Scripts that are not in the same directory as now work
  • A new recipe has been added that removes the pydoc -> Tkinter dependency
  • A recipe has been added for py2app itself
  • a wxPython example (superdoodle) has been added. Demonstrates not only how easy it is (finally!) to bundle wxPython applications, but also how one can deal with both py2exe and py2app.
  • A new experimental tool, py2applet, has been added. Once you've built it (python py2app, of course), you should be able to build simple applications simply by dragging your main script and optionally any packages, data files, Info.plist and icon it needs.

Known issues:

  • Includes all files from packages, it should be smart enough to strip unused .py/.pyc/.pyo files (to save space, depending on which optimization flag is used).
  • The default PyRuntimeLocations can cause problems on machines that have a /Library/Frameworks/Python.framework installed. Workaround is to set a plist that has the following key: PyRuntimeLocations=['/System/Library/Frameworks/Python.framework/Versions/2.3/Python'] (this will be resolved soon)

Download and related links are here: