python - mac - Instalación de paquetes pip en la carpeta $ HOME
pip install python 3 (3)
¿Es posible? Cuando instale pip
, instale los paquetes de python dentro de mi carpeta $HOME
. (por ejemplo, quiero instalar mercurial
, usando pip
, pero dentro de $HOME
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
lugar.
PEP370 es exactamente sobre esto. ¿Es solo crear un ˜/.local
y hacer un pip install package
suficiente para que estos paquetes se instalen solo en mi carpeta $ HOME?
Puede especificar la opción -t
( --target
) para especificar el directorio de destino. Consulte pip install --help
para obtener información detallada. Este es el comando que necesitas:
pip install -t path_to_your_home package-name
por ejemplo, para instalar, digamos mxnet, en mi directorio $HOME
, escribo:
pip install -t /home/foivos/ mxnet
Si bien puedes usar un virtualenv
, no necesitas hacerlo. 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 dar como resultado que el script hg
se instale 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 adecuada en Mac OS X para user
instalaciones de user
estilo PEP370. 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 un futuro lanzamiento. Pero, por ahora, en 2.7 (y 3.2, si hg
fuera compatible con Python 3), las ubicaciones anteriores serán $HOME/Library/Python/xy/bin/hg
y $HOME/Library/Python/xy/lib/python/site-packages
.
Yo usaría virtualenv en su directorio HOME.
$ sudo easy_install -U virtualenv
$ cd ~
$ virtualenv .
$ bin/pip ...
También podría modificar ~/.(login|profile|bash_profile)
, lo que sea correcto para que su shell agregue ~ / bin a su PATH y luego ese pip|python|easy_install
sería el que se usa de forma predeterminada.