Tenía que hacer esto para mis compañeros de trabajo. El @Flavius answer funcionó muy bien una vez que agregué algunos comandos para manejar virtualenvwrapper
. Debes colocar tus venvs y tu carpeta de proyectos WORKON en un lugar que tú y tu jefe/amigo puedan encontrar y usar.
sudo mkdir -p /usr/local/share
sudo mv ~/.virtualenvs /usr/local/share
sudo mkdir -p /usr/src/venv/
Suponiendo que quieren todo el mundo en que la máquina sea capaz tanto de mkproject
y workon
:
chmod a+rwx /usr/local/share/.virtualenvs
chmod a+rwx /usr/src/venv
De lo contrario chown
y chmod
para satisfacer sus necesidades de seguridad.
Si tiene alguna ganchos o secuencias de comandos que esperan ~/.virtualenvs para estar en el lugar habitual, es mejor que un enlace simbólico que (tanto en su cuenta de usuario y de su amigo)
ln -s /usr/local/share/.virtualenvs ~/.virtualenvs
Luego modificar (y el archivo de su amigo) .bashrc
para que virtualenvwrapper sepa dónde movió las cosas. Su bashrc debe tener algo como esto:
export PROJECT_HOME="/usr/src/venv/"
export WORKON_HOME="/usr/local/share/.virtualenvs"
export USR_BIN=$(dirname $(which virtualenv))
if [ -f $USR_BIN/virtualenvwrapper.sh ]; then
source $USR_BIN/virtualenvwrapper.sh
else
if [ -f /usr/bin/virtualenvwrapper.sh ]; then
source /usr/bin/local/virtualenvwrapper.sh
else
echo "Can't find a virtualenv wrapper installation"
fi
fi
Una vez que finalice la sesión y volver en (o simplemente source ~/.bashrc
que debe ser bueno para ir con comandos como mkproject awesome_new_python_project
y workon awesome_new_python_project
Como beneficio adicional, añadir ganchos a. cargar la carpeta del proyecto en sublime cada vez que su workon
.
Pero ¿cuál es la virtualenv/virtualenvwrapper sintaxis para utilizar ese directorio? Con virtualenvwrapper, el la línea de comandos << >> some_env workon busca un ambiente en el directorio .virtualenv del usuario. – chernevik
Wh ¿A qué te refieres? Usas '. bin/activate' como de costumbre. – Flavius
Lo siento, no lo sigo. Cuando cambio a un entorno, mi línea de comando es << workon some_env >> - No toco bin/activate. – chernevik