Onde está o virtualenvwrapper.sh?

35

Eu não sei o que é mais embaraçoso: que eu não sei como encontrar a resposta para essa pergunta, ou que isso precisa ser feito em primeiro lugar, mas ...

onde apt-getcoloca o virtualenvwrapper.shscript após a instalação virtualenvwrapper?

Estou no limite ...

% 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.

Eu fiquei sem coisas para tentar: o apt-getsay virtualenvwrapperjá está instalado, mas não consigo encontrar nenhum sinal de virtualenvwrapper.shlugar nenhum.

UPDATE: Bem, eu acabei de descobrir que o arquivo

/etc/bash_completion.d/virtualenvwrapper

... parece muito com virtualenvwrapper.sh. Não sei dizer se esse arquivo foi colocado lá apt-getquando eu executei apt-get install virtualenvwrapper(a mdate do arquivo é vários meses atrás), mas, se foi, fiquei perplexo com a aparente estupidez do arranjo ... Por um lado, não todo mundo usa bash(eu uso zsh). Por outro lado, pode-se querer rodar virtualenvwrapper.shem momentos diferentes da inicialização ... Tenho certeza de que estou perdendo algo importante aqui, mas na superfície, parece que a apt-getinstalação do virtualenvwrapperé retardada ... De qualquer forma, desperdiçou cerca de três horas do meu tempo ...

kjo
fonte
2
Outro usuário do zsh aqui ... também pode parar de usar o pacote oficial do virtualenvwrapper, menos surpresas dessa maneira!
Kaleissin
Você também pode /etc/bash_completion.d/virtualenvwrapperusar o zsh como fonte. Funciona bem como está.
perfil completo de Jim Stewart
@ JimStewart Eu posso fazer muitas coisas. O ponto de um pacote é que eu não preciso.
Melvyn

Respostas:

40

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

Em contraste com as informações em
/usr/share/doc/virtualenvwrapper/en/html/index.html este pacote instala
virtualenvwrapper.sh como /etc/bash_completion.d/virtualenvwrapper.

O virtualenvwrapper será ativado se você instalar o pacote bash-complete e
ative o suporte à conclusão do bash no /etc/bash.bashrc ou no seu ~ / .bashrc.

Se você quiser apenas usar o virtualenvwrapper, basta adicionar

 source /etc/bash_completion.d/virtualenvwrapper

ao seu ~ / .bashrc.

Sim, é um pouco difícil de encontrar: D

phoibos
fonte
2
E os zshusuários? Ótimo, outro pacote que se comporta de maneira diferente em cada sistema operacional. Eu acho que um sudo apt-get purge virtualenvwrappere sudo pip install virtualenvwrapperestá em ordem.
metakermit
1
Você também pode /etc/bash_completion.d/virtualenvwrapperusar o zsh como fonte. Funciona bem como está.
perfil completo de Jim Stewart
1

No Ubuntu


A localização do script é:

/usr/share/virtualenvwrapper/virtualenvwrapper.sh


Portanto, se você instalou o virtualenvwrapper com o gerenciador de pacotes, adicione as seguintes linhas ao seu ~ / .bashrc :

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


Além disso, lembre-se de recarregar seu ~ / .bashrc com:

$ source ~/.bashrc


Se tudo funcionou bem, você poderá executar o mkvirtualenv como:

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