[Distutils] PythonModulePackaging

Vincenzo Di Massa hawk78_it at yahoo.it
Thu Aug 25 23:17:57 CEST 2005

I have just put on pipy the first version of easy-deb: a tool to make source debs out of standard python modules.
I would really like to thank everyone who helped me. A special thank to "Phillip J. Eby" for setuptools.
I someone woul like to test it and tell if how it is working... I will be really HAPPY :-)


I attach the same docs:



* Packages python modules
   * from source distribution files
   * from urls
   * from PyPI records
* can package it self
* handles dependencies
* intstalls modules into eggs (from setuptools)
* can activate or deactivate an installed egg (add or remove from sys.path)
* handles a database of dependencies

=easy_deb instructions=

   $ easy-deb -h 
   for usage and options synopsis:
usage: easy-deb [options] (pypi-modulename | archive-file-name| url)

  -h, --help            show this help message and exit
  -v VERSIONS, --python-versions=VERSIONS
                        Coma separated list of python versions to package for.
                        E.g.: -v 2.3,2.4
  -d DEPS, --debian-deps=DEPS
                        Standard debian dependency string. %v is replaced with
                        python version
  -b BDEPS, --debian-build-deps=BDEPS
                        Standard debian dependency string. %v is replaced with
                        python version
  -f FIND_LINKS, --find-links=FIND_LINKS
                        Additionnal links to scan
  -D DEST_DIR, --dest-dir=DEST_DIR
                        Distribution downloaded into file
  -c, --common-dir      Install to commond dir from where tree linking is done
  -a, --arch-dep        Build arch dep packages
  -u, --update-database
                        Update the database of python modules options

   $ update-pypi -h 
   for usage and options synopsis:
usage: update-pypi [options] (module-name | show | updatew)

  -h, --help    show this help message and exit
  -a, --add     Add egg to sys.path
  -r, --remove  Add egg to sys.path

easy-deb: this tool will create a debian source package into a deb-pkg-<modulename> directory.
To compile the source package use the standard debian tools (debuild or "fakeroot debian/rules binary")

update-pypi: this script is used to enable and disable installed egg (you can enable/disable all eggs 
ing the removing the All package). Enabled eggs are on sys.path, disabled eggs must be pkg_resource.require() before you can import from them.

To install module "graph":

$ easy-deb -v2.4 graph -D /tmp/
$ cd /tmp/deb-pkg-graph0.4/graph-0.4
$ fakeroot debian/rules binary
$ sudo dpkg -i ../*.deb

$ update-pypi -a graph

-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://mail.python.org/pipermail/distutils-sig/attachments/20050825/80d56b7f/attachment.htm

More information about the Distutils-SIG mailing list