At 04:11 PM 11/21/2005 -0600, Bob Tanner wrote: >Is there a way to override the site-packages/<module> directory name? > >I'm trying to make a debian package for FormEncode-0.4, by default >"/usr/bin/python2.4 setup.py install --no-compile -O0" creates a directory >structure llike: > >`-- usr > |-- lib > | `-- python2.4 > | `-- site-packages > | `-- FormEncode-0.4-py2.4.egg > | |-- EGG-INFO > | `-- formencode > | |-- javascript > | `-- util > >Reading python-policy 1.4, I believe a 3rd party module should be just > > /usr/lib/python<X>.<Y>/site-packages/<module-dir> > >I would like to see > >`-- usr > |-- lib > | `-- python2.4 > | `-- site-packages > | `-- formencode > | |-- javascript > | `-- util > >I'm working around the "problem" by installing a formencode.pth pointing to >the /usr/lib/python2.4/site-packages/FormEncode-0.4-py2.4.egg directory.
This isn't a "problem", it's just that the Debian policy isn't up-to-date. Python eggs install this way, and many packages (e.g. TurboGears) require the new structure. >I've played around with FormEncode's setup.py and the site-packages path >seems >to be based on the setup(name=xxx, version=yyy), but I could not see any way >to change these values without really messing up all the other tools that >depend on these values. Or all the tools that depend on the directory containing version information, and expect a certain layout within that directory structure. Do not attempt to change .egg layouts, as any package that has bothered to make itself be laid out this way almost certainly has non-trivial dependencies on it being laid out this way. Note also that in many cases, the package will be a single .egg *file*, (analagous to a Java .jar file) rather than a directory, and files are preferable to directories in most cases as they make Python import processing faster. _______________________________________________ Distutils-SIG maillist - [email protected] http://mail.python.org/mailman/listinfo/distutils-sig
