Comment 7 for bug 158756

Revision history for this message
Andi Zeidler (witsch) wrote : Re: [Bug 158756] Re: system path should be ignorable/overridable

On Nov 19, 2007, at 10:56 PM, Andreas Zeidler wrote:
> imho, `bootstrap.py` already creates the problem. please try
> installing setuptools as a package in site-packages, run
> `bootstrap.py` and have a look at the resulting `bin/buildout`, then
> do the same with setuptools installed as a global egg and without
> having it installed at all.

the following is a transcript from a freshly set up, minimal debian
system that demonstrates this...

---------- snip ----------------------------------------------
debian:~# aptitude install gcc subversion python2.4-dev python-
zopeinterface
[...snip...]
debian:~# cat > buildout.cfg

[buildout]
parts = zope3 zpy

[zope3]
recipe = zc.recipe.zope3checkout
url = svn://svn.zope.org/repos/main/Zope3/branches/3.3

[zpy]
recipe = zc.recipe.egg
eggs = zc.recipe.egg # otherwise bin/zpy will have a syntax error
interpreter = zpy
extra-paths = ${zope3:location}/src
scripts = zpy

debian:~# svn export svn://svn.zope.org/repos/main/zc.buildout/trunk/
bootstrap/bootstrap.py
A bootstrap.py
Export complete.
debian:~# python bootstrap.py
Downloading http://pypi.python.org/packages/2.4/s/setuptools/setuptools-0.6c7-py2.4.egg
Creating directory '/root/bin'.
Creating directory '/root/parts'.
Creating directory '/root/eggs'.
Creating directory '/root/develop-eggs'.
Generated script '/root/bin/buildout'.
debian:~# ./bin/buildout
Getting distribution for 'zc.recipe.zope3checkout'.
Got zc.recipe.zope3checkout 1.2.
Getting distribution for 'zc.recipe.egg'.
Got zc.recipe.egg 1.0.0.
Installing zope3.
[...snip...]
Installing zpy.
Generated interpreter '/root/bin/zpy'.
debian:~# ./bin/zpy

 >>> import zope.interface
 >>> zope.interface.__file__
'/root/parts/zope3/src/zope/interface/__init__.py'
 >>>
debian:~# rm -rf bin/ develop-eggs/ eggs/ parts/ .installed.cfg
debian:~# aptitude install python-setuptools
Reading package lists... Done
Building dependency tree... Done
Reading extended state information
Initializing package states... Done
Writing extended state information... Done
Reading task descriptions... Done
Building tag database... Done
The following NEW packages will be installed:
   python-setuptools
0 packages upgraded, 1 newly installed, 0 to remove and 0 not upgraded.
Need to get 0B/204kB of archives. After unpacking 758kB will be used.
Writing extended state information... Done
Selecting previously deselected package python-setuptools.
(Reading database ... 27858 files and directories currently installed.)
Unpacking python-setuptools (from .../python-
setuptools_0.6c3-3_all.deb) ...
Setting up python-setuptools (0.6c3-3) ...

debian:~# python bootstrap.py
Creating directory '/root/bin'.
Creating directory '/root/parts'.
Creating directory '/root/eggs'.
Creating directory '/root/develop-eggs'.
Generated script '/root/bin/buildout'.
debian:~# ./bin/buildout
Getting distribution for 'zc.recipe.zope3checkout'.
Got zc.recipe.zope3checkout 1.2.
Getting distribution for 'zc.recipe.egg'.
Got zc.recipe.egg 1.0.0.
Installing zope3.
[...snip...]
Installing zpy.
Generated interpreter '/root/bin/zpy'.
debian:~# ./bin/zpy

 >>> import zope.interface
 >>> zope.interface.__file__
'/usr/lib/python2.4/site-packages/zope/interface/__init__.pyc'
 >>>
debian:~# cat bin/zpy
#!/usr/bin/python
import sys

sys.path[0:0] = [
   '/root/eggs/zc.recipe.egg-1.0.0-py2.4.egg',
   '/usr/lib/python2.4/site-packages',
   '/root/eggs/zc.buildout-1.0.0b31-py2.4.egg',
   '/root/parts/zope3/src',
   ]

_interactive = True
if len(sys.argv) > 1:
     import getopt
     _options, _args = getopt.getopt(sys.argv[1:], 'ic:')
     _interactive = False
     for (_opt, _val) in _options:
         if _opt == '-i':
             _interactive = True
         elif _opt == '-c':
             exec _val

     if _args:
         sys.argv[:] = _args
         execfile(sys.argv[0])

if _interactive:
     import code
     code.interact(banner="", local=globals())
debian:~#
---------- snip ----------------------------------------------

>> I don't believe this is a bootstrapping issue.

i hope this helps a little to convince you it is... :)

cheers,

andi

--
zeidler it consulting - http://zitc.de/ - <email address hidden>
friedelstraße 31 - 12047 berlin - telefon +49 30 25563779
pgp key at http://zitc.de/pgp - http://wwwkeys.de.pgp.net/
plone 3.0.3 released! -- http://plone.org/products/plone