[Pythonmac-SIG] Re: [Pysqlite-users] Looking for somebody to
package Mac binaries
Jack.Jansen at cwi.nl
Tue Jul 6 23:19:17 CEST 2004
On 6 Jul 2004, at 18:36, Mario Ruggier wrote:
> Hi, I am on an OS X machine, and, should no-one else wish to do it, I
> wouldn't mind to roll a new package every now and then with new stable
> releases. I am not sure of what the gotchas for this might be... Could
> anyone on the pythonmac-sig list point me to a good step-by-step
> procedure and checklist for creating Mac packages?
Here is my procedure. Bob uses a different one for his PackMan
database, but I prefer mine because it also makes source packages
available, which I think is a good way to ease people into developing
their own packages, and it simplifies maintenance when new versions
become available. But it does require the package to be distutils-based
(although there are ways to do non-distutils things too, see PIL for an
First, create an experimental PackMan database for yourself. The
easiest is to copy my experimental database and clean it out (if it
isn't empty already). Leave the include statement for the default
database in, as this allows you to depend on packages in the default
database (especially pseudo-packages for Python version, etc).
The database is a plist file. There's no documentation on the keys
used, but if they're not self-explanatory check Lib/plat-mac/pimp.py
for the details.
Now start with a source distribution for your package. Pick an entry
from the default database that appears to be somewhat similar to what
you're doing. Modify the name, version, description, install-check,
download-url and dependency fields to suit your package. Comment out
the MD5 checksum for now. Fiddle it until at least the download works
(the tarfile will end up in /tmp). Compute the md5 sum for the tarfile
(Tools/scripts/md5sum.py in a Python source distribution does this) and
put it in the database. Fiddle the install command and install check
until they work. Now your source package is finished.
Next create the binary installer. Go to the build directory for the
package that was used for the previous install from source, again in
/tmp. Run "python setup.py bdist-dumb" there, this creates a binary
distribution tarfile (in the "dist" subdirectory). Compute the md5sum
of this tarfile. Upload it to your webserver.\
Finally create the binary PackMan package. Start with the source
package, change the URL, flavor and md5sum. Now you should be done.
Advertise your new database, at the very least by letting me know so I
can put it on the PackMan database page
<http://www.python.org/packman>. If it turns out to be really popular
let me know and I'll put it in the official database.
Finally finally let me know where I forgot essential information in
Jack Jansen, <Jack.Jansen at cwi.nl>, http://www.cwi.nl/~jack
If I can't dance I don't want to be part of your revolution -- Emma
More information about the Pythonmac-SIG