[Distutils] Buildout 2 and system packages

Reinout van Rees reinout at vanrees.org
Sun Feb 24 12:38:08 CET 2013


On 23-02-13 19:13, Marius Gedminas wrote:
>> >It*could*  sort them by the order it encountered them when it was
>> >computing the working set, however, if one of the requirements it
>> >finds is in a system directory, and it happens to come early, the
>> >system directory can have other distributions that shadow
>> >distributions found by buildout.
> And since distribute is usually in dist-packages on Ubuntu, and
> distribute is the first requirement needed for buildbot itself, I always
> get dist-packages as first item in sys.path in bin/buildout.
>
> And then all my buildouts fail because Ubuntu ships zope.interface 3.6.1
> in dist-packages, and it is treated as a develop egg.

I'm missing something. Bootstrap and buildout grab distributions off 
pypi for what it needs. All that stuff ends up in the "eggs/" directory. 
So where/how exactly does it look for system packages?

My bin/buildout normally looks something like this:

#!/usr/bin/python

import sys
sys.path[0:0] = [
   '/Users/reinout/Dotfiles/buildout/eggs/zc.buildout-2.0.1-py2.7.egg',
   '/Users/reinout/Dotfiles/buildout/eggs/distribute-0.6.34-py2.7.egg',
   ]

import zc.buildout.buildout

if __name__ == '__main__':
     sys.exit(zc.buildout.buildout.main())


The only way I know to get buildout to search the system for packages 
(instead of grabbing them themselves) is to use a special recipe like 
https://pypi.python.org/pypi/syseggrecipe

What am I missing?


Reinout

-- 
Reinout van Rees                    http://reinout.vanrees.org/
reinout at vanrees.org             http://www.nelen-schuurmans.nl/
"If you're not sure what to do, make something. -- Paul Graham"



More information about the Distutils-SIG mailing list