[Distutils] Are egg files needed when building/installing via --root?

Brian Cameron Brian.Cameron at Sun.COM
Tue Dec 2 20:37:01 CET 2008


Now that we have clarified that installing the egg files are useful
and a good practice, I have some additional questions.

Currently, on Solaris, we build most Python modules without setuptools
being present on our build machine, then we install setuptools, and
lastly a handful of modules which require setuptools to build (such as
CSSutils, Python-Twisted, and elisa).  Is this correct, or should we
be making sure setuptools is installed before installing any Python
modules?

I wonder if some modules optionally might use setuptools if it is present
and build metadata for themselves.  If so, then perhaps we should be
installing setuptools before installing other Python modules in general?
Or is it correct just installing setuptools before installing modules
which require it?

Phillip:

>> Interesting, what sort of problems did the distros run into if they
>> removed the files?  That would be the sort of information that would
>> be useful to add to the manual, I think.
> 
> Actually, I would tend to assume that randomly removing files from a 
> piece of software distribution would be pretty likely to produce 
> problems, so I don't get why people try to delete them in the first 
> place...  or even why they'd *want* to.

Here at Sun we weren't sure if the files needed to be installed when
you build with "setup.py install --root".  That's why I brought up the
original question.  It sounds like other distros have also been a bit
confused in this area, so some additional documentation might help
avoid similar problems going forward.  At least it would provide a more
official pointer when people ask questions.

> Again, if you'd like to submit a documentation patch at a spot you think 
> would be suitable, I'll certainly look it over for inclusion.  

It would probably be good to have a section in the documentation which
is more targeting the distros, so the interfaces (e.g. this egg-info
metadata) which are installed when you build modules with setuptools are
described and why these files are useful.

I think the information would probably be more accurate if someone
who works more closely with setuptools were to write such documentation
if there is general agreement that it would be useful.  I think much of
the information that should go in this documentation has already been
brought to light in this discussion thread, though.

> Personally, I have no idea what to say or where to say it, as it sounds 
> too much to me like saying, "we suggest you not remove your internal 
> organs, as doing so may cause undesirable results."  ;-)

If the usefulness is that it helps with dependency checking, this would be
sufficient, I'd think.  Just to clarify what the best practices are when
installing egg metadata for various modules would be a good addition to the
documentation, I think.

Brian


More information about the Distutils-SIG mailing list