Virtualenv på Ubuntu 12.04

För att bygga <whatever> i Python är det trevligt - och rekommenderat att man använder virtualenv för att på så sätt få en kontrollerad utvecklingsmiljö. Här är en kort instruktion om hur du sätter upp virtualenv på Ubuntu 12.04 (LTS):


$sudo apt-get install python-setuptools python-pip
$sudo pip install virtualenv
$sudo pip install virtualenvwrapper 

Lägg därefter till följande i ~/.bashrc:


export WORKON_HOME=$HOME/.virtualenv
source /usr/local/bin/virtualenvwrapper.sh
export PIP_VIRTUALENV_BASE=$WORKON_HOME # Tell pip to create its .virtualenv in $WORKON_HOME.
export PIP_RESPECT_VIRTUALENV=true # Tell pip to automatically use the currently active virtualenv.

Kör sedan .bashrc genom kommandot (alternativt startar du en ny terminal):


$ source ~/.bashrc

Du kommer få följande resultat:


virtualenvwrapper.user_scripts creating /home/qlurix/.virtualenv/initialize
virtualenvwrapper.user_scripts creating /home/qlurix/.virtualenv/premkvirtualenv
virtualenvwrapper.user_scripts creating /home/qlurix/.virtualenv/postmkvirtualenv
virtualenvwrapper.user_scripts creating /home/qlurix/.virtualenv/prermvirtualenv
virtualenvwrapper.user_scripts creating /home/qlurix/.virtualenv/postrmvirtualenv
virtualenvwrapper.user_scripts creating /home/qlurix/.virtualenv/predeactivate
virtualenvwrapper.user_scripts creating /home/qlurix/.virtualenv/postdeactivate
virtualenvwrapper.user_scripts creating /home/qlurix/.virtualenv/preactivate
virtualenvwrapper.user_scripts creating /home/qlurix/.virtualenv/postactivate
virtualenvwrapper.user_scripts creating /home/qlurix/.virtualenv/get_env_details
virtualenvwrapper.user_scripts creating /home/qlurix/.virtualenv/premkproject
virtualenvwrapper.user_scripts creating /home/qlurix/.virtualenv/postmkproject
virtualenvwrapper.user_scripts creating /home/qlurix/.virtualenv/prermproject
virtualenvwrapper.user_scripts creating /home/qlurix/.virtualenv/postrmproject

Nästa steg är att gå till din projektkatalog, i vårt fall oftast ~/bzr/
(du kan iofs står var du vill men det är lättare att skriva rätt om man ser vad man ska skriva...). Kör sedan kommandot:


mkvirtualenv --no-site-packages --distribute 

Så, enkelt - eller hur? För att jobba i virtualenv-miljöerna så använder man följande kommandon:


$workon  - byt till en viss projektmiljö
$workon - visa vilka virtualenv-miljöer som finns tillgängliga
$deactivate - avsluta aktuell virtualenv-instans

För att snygga till terminalen när man kör virtualenv kan man lägga till följande rad längst bak i filen $WORKON_HOME/postactivate:


PS1="\[\e[34;1m\](`basename \"$VIRTUAL_ENV\"`)\[\e[0m\] $_OLD_VIRTUAL_PS1"

Vill du automagiskt gå till din projektkalender kan du stoppa in t ex: "cd ~/bzr" i samma fil också.

Referens till den här sidan: http://virtualenvwrapper.readthedocs.org