¿Dónde está virtualenvwrapper.sh?

35

No sé qué es más vergonzoso: que no sé cómo encontrar la respuesta a esta pregunta yo mismo, o que debe preguntarse en primer lugar, pero ...

¿Dónde apt-getcoloca el virtualenvwrapper.shscript después de que se instala virtualenvwrapper?

Estoy al final del ingenio ...

% sudo apt-get install virtualenvwrapper
...
% rehash
% which virtualenvwrapper.sh
virtualenvwrapper.sh not found
% which virtualenvwrapper
virtualenvwrapper not found
% find / -path /media -prune -o -name virtualenvwrapper.sh
/media
% dpkg-query -L virtualenvwrapper | grep 'virtualenvwrapper\.sh'
% sudo apt-get install virtualenvwrapper
Reading package lists...
Building dependency tree...
Reading state information...
virtualenvwrapper is already the newest version.
0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.

Me he quedado sin cosas para probar: apt-getdice virtualenvwrapperque ya está instalado, pero no puedo encontrar ningún signo de nada virtualenvwrapper.sh.

ACTUALIZACIÓN: Bueno, acabo de descubrir que el archivo

/etc/bash_completion.d/virtualenvwrapper

... se parece mucho virtualenvwrapper.sh. No puedo decir si este archivo se colocó allí apt-getcuando lo ejecuté apt-get install virtualenvwrapper(la fecha del archivo es hace varios meses), pero si lo fue, entonces estoy desconcertado por la aparente estupidez del acuerdo ... Por un lado, no todos usan bash(yo uso zsh). Por otro lado, uno puede querer ejecutarse virtualenvwrapper.shen momentos distintos al inicio ... Estoy seguro de que me falta algo importante aquí, pero en la superficie, parece que la apt-getinstalación de virtualenvwrapperes simplemente retardada ... En cualquier caso, desperdició unas tres horas de mi tiempo ...

kjo
fuente
2
Otro usuario de zsh aquí ... también podría dejar de usar el paquete oficial para virtualenvwrapper, ¡menos sorpresas de esa manera!
kaleissin
Puede fuente /etc/bash_completion.d/virtualenvwrapperen zsh también. Funciona bien como está.
Jim Stewart
@ JimStewart Puedo hacer muchas cosas. El punto de un paquete es que no tengo que hacerlo.
Melvyn

Respuestas:

40

De /usr/share/doc/virtualenvwrapper/README.Debian:

En contraste con la información en
/usr/share/doc/virtualenvwrapper/en/html/index.html este paquete se instala
virtualenvwrapper.sh como /etc/bash_completion.d/virtualenvwrapper.

Virtualenvwrapper está habilitado si instala el paquete bash-complete y
habilite el soporte de finalización de bash en /etc/bash.bashrc o su ~ / .bashrc.

Si solo desea usar virtualenvwrapper, simplemente puede agregar

 fuente /etc/bash_completion.d/virtualenvwrapper

a su ~ / .bashrc.

Sí, es un poco difícil de encontrar: D

phoibos
fuente
2
¿Qué hay de los zshusuarios? Genial, otro paquete que se comporta de manera diferente en cada sistema operativo. Creo que a sudo apt-get purge virtualenvwrappery sudo pip install virtualenvwrapperestá en orden.
metakermit
1
Puede fuente /etc/bash_completion.d/virtualenvwrapperen zsh también. Funciona bien como está.
Jim Stewart
1

En Ubuntu


La ubicación del script es:

/usr/share/virtualenvwrapper/virtualenvwrapper.sh


Entonces, si ha instalado virtualenvwrapper con el administrador de paquetes, debe agregar las siguientes líneas en su ~ / .bashrc :

export WORKON_HOME=~/.virtualenvs
source /usr/share/virtualenvwrapper/virtualenvwrapper.sh


Además, recuerde volver a cargar su ~ / .bashrc con:

$ source ~/.bashrc


Si todo funcionó bien, podrá ejecutar mkvirtualenv como:

mkvirtualenv --python="/usr/bin/python3" venv_name
marcelfox
fuente