Почему я должен устанавливать пакеты Python в `~ / .local`? - PullRequest
4 голосов
/ 30 декабря 2010

Фон

  1. Я не занимаюсь разработкой, используя систему OS X с версиями Python (для OS X 10.6 это Python 2.5.4 и 2.6.1).
  2. Я ничего не устанавливаю в каталог site-packages для версий Python, предоставляемых ОС. (Единственное исключение - Mercurial, установленный из бинарного пакета, который устанавливает два пакета в каталог сайтов-пакетов Python 2.6.1.)
  3. Я установил три версии Python, все с использованием образа диска установщика Mac OS X:
    1. Python 2.6.6
    2. Python 2.7
    3. Python 3.1.2
  4. Мне не нравится загрязнять каталог site-packages для моих установок Python. Поэтому я устанавливаю только следующие пять базовых пакетов в каталог site-packages. Фактический метод / команды, используемые для их установки, см. SO Вопрос 4324558 .
    1. Setuptools / ez_setup
    2. распространять
    3. пип
    4. virtualenv
    5. virtualenvwrapper
  5. Все остальные пакеты установлены в virtualenvs.
  6. Я единственный пользователь этого MacBook.

Вопросы

  1. Учитывая вышеизложенное, почему я должен установить пять базовых пакетов в ~/.local? Поскольку я устанавливаю эти базовые пакеты в каталоги пакетов сайтов, которые я установил, я изолирован от дистрибутивов Python для OS X.
  2. Используя этот метод, следует ли мне беспокоиться о комментарии Глифа о том, что другие вещи могут потенциально сломаться (см. Его комментарий ниже)?

Опять же, меня интересует, где установить эти пять базовых пакетов.

Смежные вопросы / Информация

Я спрашиваю из-за комментария Glyph к моего ответа к ТАК вопрос 4314376 , в котором указано:

NO. НИКОГДА не делайте sudo python setup.py install как угодно. Напишите ~ / .pydistutils.cfg, который помещает вашу установку в pip в ~ / .local или что-то в этом роде. В особенности файлы с именем ez_setup.py имеют тенденцию высасывать новые версии таких вещей, как setuptools и easy_install, которые потенциально могут сломать другие компоненты вашей операционной системы.

Ранее я спросил Как правильно установить pip, virtualenv и распространять для Python? . Однако никто не ответил «почему» использования ~/.local.

1 Ответ

3 голосов
/ 30 декабря 2010

Нет особой причины для или против установки в .local для установок Mac OS X с использованием сборок фреймворка. Разработчики ядра Python по-прежнему спорят по этому поводу с Глифом, утверждающим, что местоположение .local, введенное в Python 2.6 для других систем Unixy , должно использоваться для Mac OS X и упрощает стороннюю установку процессы, в то время как другие утверждают, что предыдущие традиционные места для сборок платформы Mac OS X более естественны. В конце концов, это зависит от вас. Особенно, если вы используете виртуальные среды, если это работает, не беспокойтесь об этом.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...