Мне интересно, существует ли стандартный способ установки приложений Python с помощью pip (без использования sudo), чтобы он работал глобально?
Пример:
Я хочу установить приложение журнала командной строки с pip с именем jrnl. Он прекрасно работает, если вы делаете "sudo pip install jrnl", однако, я предполагаю, что это достойный крайний способ сделать это.
Если я устанавливаю без sudo, просто используя «pip install jrnl», он устанавливается в .local / без глобального доступа.
Я нашел несколько способов сделать это, но мне было интересно, есть ли общий и общепринятый способ сделать это безопасным?
Спасибо!
Это может быть установлено где угодно, который находится в Вашем пути. Несколько опций, которые я нашел:
Установка на .local
через:
pip install --user <pip-pkg-name>
.local
как Вы отметили так, чтобы местоположение было в Вашем пути, с помощью .bashrc
файл, который может быть сделан.export PATH=$PATH:/home/$USER/.local/bin
к Вашему /home/$USER/.bashrc
файл. С этим можно достигнуть его отовсюду.Добавьте пользовательский путь для с этой строкой export PYTHONUSERBASE=/myappenv
в Вашем .bashrc
файл. Теперь, когда Вы делаете pip install --user <pip-pkg-name>
это будет установлено в /myappenv
.
/myappenv
сначала и добавьте его к Вашему .bashrc
файл со строкой export PATH=$PATH:/myappenv
Теперь, когда будучи сказанным так называемый стандартный способ, которым Вы упомянули, должен использовать python environment a.ka. virtualenv
устанавливать и выполнять пакеты для того приложения и не глобально, как сделано в (1) и (2) выше.
sudo pip install virtualenv
, или для python 3 + с sudo pip3 install virtualenv
.Использование:
virtualenv venv
Выберите интерпретатор по Вашему выбору с:
virtualenv -p python2.7 venv
virtualenv -p python3 myenv
source venv/bin/activate
deactivate
См.:
http://kazhack.org/?post/2014/12/12/pip-gem-install-without-sudo,
https://gist.github.com/Geoyi/d9fab4f609e9f75941946be45000632b