add some links to debian egg-handling pages, and some discussion

[Imported from Trac: page Packaging, version 5]
warner 2007-07-16 19:16:24 +00:00
parent f292fa48a8
commit b03490f33a

@ -35,4 +35,12 @@ Disadvantages:
* We haven't figured out exactly how to take advantage of setuptools's dependency management while also integrating smoothly with platform-specific package managers such as Debian apt. I (Zooko) think that this is possible, but it isn't yet standard practice among setuptools users. One important detail is the special option to setuptools called `--single-version-externally-managed`. * We haven't figured out exactly how to take advantage of setuptools's dependency management while also integrating smoothly with platform-specific package managers such as Debian apt. I (Zooko) think that this is possible, but it isn't yet standard practice among setuptools users. One important detail is the special option to setuptools called `--single-version-externally-managed`.
We already have [a patch](http://allmydata.org/darcs.cgi/tahoe-setuptools/?c=annotate&p=20070522155758-eb44e-15f8219675d4b35b2488bc742f46714526d61cb3.gz) which changes Tahoe to use setuptools, but it doesn't solve the "How to integrate smoothly with platform-specific package managers." part yet. We already have [a patch](http://allmydata.org/darcs.cgi/tahoe-setuptools/?c=annotate&p=20070522155758-eb44e-15f8219675d4b35b2488bc742f46714526d61cb3.gz) which changes Tahoe to use setuptools, but it doesn't solve the "How to integrate smoothly with platform-specific package managers." part yet.
## discussion
I came across this page: <http://wiki.debian.org/DebianPythonFAQ> , which suggests that --single-version-externally-managed is the Right Way to build debian packages out of setuptool-using python projects, and that the process is actually fairly easy.
So one way to do this is to have each of our built-in subprojects (allmydata, foolscap, zfec, and now simplejson) produce separate eggs, and have some debian glue that produces separate .debs for each. Given that both foolscap and simplejson have native ways of producing .debs, it would be good for the tahoe .deb to not include them (to allow both tahoe and the native .debs of foolscap or simplejson be installed at the same time).
So we could have a 'build' target (perhaps in the makefile) which produces a handful of eggs, or a handful of .debs, and you need to install whichever ones you don't already have. Or you can just run from source.