[Distutils] ANN: py2app / bdist_mpkg 0.1.5 preview
Bob Ippolito
bob at redivi.com
Thu Oct 21 06:35:17 CEST 2004
I've put together a little preview of py2app 0.1.5, which has MAJOR
feature enhancements over 0.1.4.
http://undefined.org/python/py2app-0.1.5.mpkg.zip (installer for Mac
OS X 10.3)
http://svn.red-bean.com/bob/py2app/trunk (source repository)
http://svn.red-bean.com/pyobjc/branches/py2app-branch/ (PyObjC
repository refactored to use py2app and bdist_mpkg)
py2app:
non-ascii application names works now (e.g. Jäger)
support for non-framework builds of Python (e.g. darwinports)
slightly more documentation (INSTALLING.txt, README.txt)
PyPI information
enhanced setup.py that can use bdist_mpkg
builds and installs the py2applet tool as part of its bdist_mpkg
script (to /Developer/Applications/Python Tools/py2app/)
installs the examples to /Developer/Python/py2app/Examples
bdist_mpkg:
It's new! bdist_mpkg is a distutils command that builds a metapackage
for Installer.app (or /usr/sbin/installer). It's part of the py2app
suite.
It should work with ANY distutils-using Python module or application
that uses distutils and doesn't really screw up their "install" command
When using bdist_mpkg with a framework Python, it will default the
scripts installation dir to /usr/local/bin instead of the middle of
nowhere inside the Python framework
It installs a script, /usr/local/bin/bdist_mpkg, which you can use to
build metapackages from any setup.py. When the metapackage is built,
it will even open Installer for you (unless you pass it any --options,
or just --). This is a great alternative to using python setup.py
install. You can just customize and uncheck scripts, headers, etc. if
you don't want to install them.
You can subclass bdist_mpkg and make it do crazy things, like install
documentation, code examples, or applications. See py2app's
setup-lib/py2app_mpkg.py or PyObjC's setup-lib/pyobjc_mpkg.py (on the
py2app-branch)
bdist_mpkg should become the "guts" of the next generation
PackageManager instead of bdist_dumb tarballs.
will automatically determine if root permissions are required to
install the package (make sure you haven't mucked with your permissions
your build machine if you plan on distributing the metapackages)
After the dust settles a bit, probably this weekend, I'll do a more
official release... but I would like to get some feedback in the
meantime.
-bob
More information about the Distutils-SIG
mailing list