[Distutils] Creating a new installation layout

PJ Eby pje at telecommunity.com
Wed Apr 11 21:00:29 CEST 2012

On Tue, Apr 10, 2012 at 1:35 AM, Tim Cuthbertson <tim at gfxmonk.net> wrote:

> Cheers, will look into it. Is there a canonical list of what possible
> directories, or should I just look at the --help output?

The latter.

Am I going to run into trouble where some projects have different
> options? For example, calling `python setup.py` could be implemented
> by distutils, setuptools, distribute, and god knows what else.

I can't speak for "what else", but the first three tools you mention
support the same installation directory options for setup.py.  (Except
distutils itself doesn't recognize --single-version-externally-managed.)

True, although I want a folder, not an archive. I could unpack it, but
> the less steps in a build script the better.

Well, if you're willing to use setuptools or distribute, you can do
 "easy_install -mxNZd tempdir projectdir", where projectdir is a directory
with a setup.py.  After running this command, tempdir will have a single
.egg subdirectory added to it, containing a version of the library with a
known directory layout.  You can then do something like:

cd tempdir
mv *.egg/EGG-INFO/scripts bin
mv *.egg lib

To get your desired layout.  For bonus points, you can rename the EGG-INFO/
subdirectory to packagename.egg-info/.  ;-)
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.python.org/pipermail/distutils-sig/attachments/20120411/06d4280d/attachment.html>

More information about the Distutils-SIG mailing list