Instalación de paquetes pip en la carpeta HOME HOME
Es posible? Al instalar pip
, instale los paquetes de python dentro de mi carpeta $HOME
. (por ejemplo, quiero instalar mercurial
, usando pip
, pero dentro de $HOME
en lugar de /usr/local
)
Estoy con una máquina mac y solo pensé en esta posibilidad, en lugar de "contaminar" mi /usr/local
, usaría mi $HOME
en su lugar.
PEP370 es exactamente sobre esto. Es solo crear un ˜/.local
y hacer un pip install package
suficiente para hacer que estos paquetes se instalen solo en mi HOME HOME carpeta?
3 answers
Aunque puedes usar un virtualenv
, no es necesario. El truco es pasar el argumento PEP370 --user
al script setup.py
. Con la última versión de pip
, una forma de hacerlo es:
pip install --user mercurial
Esto debería resultar en la instalación del script hg
en $HOME/.local/bin/hg
y el resto del paquete hg en $HOME/.local/lib/pythonx.y/site-packages/
.
Tenga en cuenta que lo anterior es cierto para Python 2.6. Ha habido un poco de controversia entre los desarrolladores del núcleo de Python sobre cuál es la ubicación de directorio apropiada en Mac OS X para instalaciones al estilo PEP370 user
. En Python 2.7 y 3.2, la ubicación en Mac OS X se cambió de $HOME/.local
a $HOME/Library/Python
. Esto podría cambiar en una versión futura. Pero, por ahora, en 2.7 (y 3.2, si hg
fueran compatibles con Python 3), las ubicaciones anteriores serán $HOME/Library/Python/x.y/bin/hg
y $HOME/Library/Python/x.y/lib/python/site-packages
.
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2011-08-24 00:58:52
Usaría virtualenv en su directorio PERSONAL.
$ sudo easy_install -U virtualenv
$ cd ~
$ virtualenv .
$ bin/pip ...
Entonces también podrías alterar ~/.(login|profile|bash_profile)
, lo que sea correcto para que tu shell agregue ~/bin a tu RUTA y entonces ese pip|python|easy_install
sería el usado por defecto.
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2011-08-22 05:03:02
Puede especificar la opción -t
(--target
) para especificar el directorio de destino. Véase pip install --help
para información detallada. Este es el comando que necesita:
pip install -t path_to_your_home package-name
Por ejemplo, para instalar say mxnet, en mi directorio $HOME
, escribo:
pip install -t /home/foivos/ mxnet
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2018-04-17 03:31:32