У меня есть каталог ~/foo
и все это имеет, setup.py
, который содержит:`setup.py develop` с` `install_requires` ставит DIST-packages` на вершине` sys.path` в virtualenv
from setuptools import setup, find_packages
setup(
name='foo',
version='0.1',
packages=find_packages(),
install_requires=['mock']
)
Теперь я создаю виртуальную среду с помощью:
cd ~
virtualenv --system-site-packages v1
И делать ~/v1/bin/python -c "import sys; print sys.path"
, я получаю
['',
'/home/garrett',
'/home/garrett/v1/lib/python2.7',
'/home/garrett/v1/lib/python2.7/plat-x86_64-linux-gnu',
'/home/garrett/v1/lib/python2.7/lib-tk',
'/home/garrett/v1/lib/python2.7/lib-old',
'/home/garrett/v1/lib/python2.7/lib-dynload',
'/usr/lib/python2.7',
'/usr/lib/python2.7/plat-x86_64-linux-gnu',
'/usr/lib/python2.7/lib-tk',
'/home/garrett/v1/local/lib/python2.7/site-packages',
'/home/garrett/v1/lib/python2.7/site-packages',
'/usr/local/lib/python2.7/site-packages',
'/usr/local/lib/python2.7/dist-packages',
'/usr/lib/python2.7/dist-packages',
'/usr/lib/python2.7/dist-packages/PILcompat',
'/usr/lib/python2.7/dist-packages/gtk-2.0',
'/usr/lib/pymodules/python2.7',
'/usr/lib/python2.7/dist-packages/ubuntu-sso-client']
, но, когда я
sudo pip install mock
cd ~/foo
~/v1/bin/python setup.py develop
затем Setuptools изменяет мой virtualenv-х sys.path
иметь dist-packages
mock
(где жизнь) вблизи вершины. Т.е., первые 3 записи из sys.path
стали:
['',
'/usr/local/lib/python2.7/dist-packages',
'/home/garrett/foo',
...
Это кажется намеренным глядя на the source, который модифицирует easy-install.pth
.
Вопрос
Есть в любом случае, чтобы отключить его баловаться с положением dist-packages
в моем sys.path
? В моем каталоге dist-packages
есть другие модули, которым было присвоено нежелательное преимущество.