# virtualenvwrapper

virtualenvwrapper est un ensemble d’extensions de l’outil virtualenv. Les extensions comprennent des enveloppes pour créer et supprimer des environnements virtuels et gérer autrement le flux de travail de développement, ce qui facilite le travail sur plus d’un projet à la fois sans introduire de conflits dans leurs dépendances.

## installation

Pour l’installer :

    pip install virtualenvwrapper

Utiliser virtualenv sans virtualenvwrapper est un peu pénible car à chaque fois que nous voulons activer un environnement virtuel, nous devons taper une longue commande comme celle-ci :

    ~/myproject/env/bin/activate

Mais avec virtualenvwrapper, il suffit de taper :

    workon myproject

Notez que nous n’avons pas encore installé virtualenvwrapper.sh: cela peut ne pas fonctionner.

Comme étapes d’initialisation, nous voudrons ajouter la commande to source /usr/local/bin/virtualenvwrapper.sh à notre fichier de démarrage du shell, en changeant le chemin d’accès à virtualenvwrapper.sh selon l’endroit où il a été installé par pip :

    nano/vi ~/.bashrc

Ajouter les 2 lignes:

    export WORKON_HOME=~/Envs
    export VIRTUALENVWRAPPER_PYTHON=/path/python/bin/python

Lancer le script:

    ~/.bashrc

Lancer le script virtualenvwrapper.sh (situé dans le dosier bin de votre python):

    $source /path/python/virtualenvwrapper.sh
    virtualenvwrapper.user_scripts creating /home/k/Envs/premkproject
    virtualenvwrapper.user_scripts creating /home/k/Envs/postmkproject
    virtualenvwrapper.user_scripts creating /home/k/Envs/initialize
    virtualenvwrapper.user_scripts creating /home/k/Envs/premkvirtualenv
    virtualenvwrapper.user_scripts creating /home/k/Envs/postmkvirtualenv
    virtualenvwrapper.user_scripts creating /home/k/Envs/prermvirtualenv
    virtualenvwrapper.user_scripts creating /home/k/Envs/postrmvirtualenv
    virtualenvwrapper.user_scripts creating /home/k/Envs/predeactivate
    virtualenvwrapper.user_scripts creating /home/k/Envs/postdeactivate
    virtualenvwrapper.user_scripts creating /home/k/Envs/preactivate
    virtualenvwrapper.user_scripts creating /home/k/Envs/postactivate
    virtualenvwrapper.user_scripts creating /home/k/Envs/get_env_details

## utilisation

Créons notre premier virtualenv :

    $ mkvirtualenv env1
    New python executable in /home/k/Envs/env1/bin/python
    Installing setuptools, pip, wheel...done.
    virtualenvwrapper.user_scripts creating /home/k/Envs/env1/bin/predeactivate
    virtualenvwrapper.user_scripts creating /home/k/Envs/env1/bin/postdeactivate
    virtualenvwrapper.user_scripts creating /home/k/Envs/env1/bin/preactivate
    virtualenvwrapper.user_scripts creating /home/k/Envs/env1/bin/postactivate
    virtualenvwrapper.user_scripts creating /home/k/Envs/env1/bin/get_env_details

Maintenant, nous pouvons passer d’un environnement à l’autre avec la commande workon :

    workon env1

Comment quitter/exitter/désactiver un virtualenv python ?

    deactivate env1

Pour Windows : https://pypi.python.org/pypi/virtualenvwrapper-powershell