The best way to package a Python module?

Jean-Paul Calderone exarkun at
Mon Jun 16 01:58:59 CEST 2008

On Mon, 16 Jun 2008 08:39:52 +1000, Ben Finney <bignose+hates-spam at> wrote:
>Jean-Paul Calderone <exarkun at> writes:
>> On Mon, 16 Jun 2008 01:37:47 +0900, js <ebgssth at> wrote:
>> >By "package", I meant APT, Ports for BSD, MacPorts, etc.
>> I don't know about ports or macport, but Debian has recently
>> switched to a different policy for python packages which does not
>> involve as many Python version specific copies of things. You might
>> want to look at "python-central" and stdeb.
>The version-specific copies are still there in the latest Debian
>practices. That's a necessary artefact of the per-version
>site-packages of Python.
>What has changed is that the tools in common use for Debian packaging
>of Python libraries have taken on the role of generating those
>per-version copies at install time.
>This means that, for pure-Python libraries, the source package need
>only contain a version-independent source and a declaration of which
>Python versions it should be installed for. The installation tool will
>take care of making the per-version copies in various places.

Maybe.  I'm no expert on Debian packaging.  However,

exarkun at boson:~$ ls -l /usr/lib/python2.{4,5}/site-packages/sqlite/
lrwxrwxrwx 1 root root 63 2007-12-27 15:29 /usr/lib/python2.4/site-packages/sqlite/ -> /usr/share/pycentral/python-sqlite/site-packages/sqlite/
lrwxrwxrwx 1 root root 63 2007-12-27 15:29 /usr/lib/python2.5/site-packages/sqlite/ -> /usr/share/pycentral/python-sqlite/site-packages/sqlite/
exarkun at boson:~$ 

That doesn't seem to agree with your statement.  Am I missing something?


> \     "Nothing so needs reforming as other people's habits."  -- Mark |
>  `\                                       Twain, _Pudd'n'head Wilson_ |
>_o__)                                                                  |
>Ben Finney

More information about the Python-list mailing list