Sometime you need an up-to-date virtualenv for your Python project, but the one installed is an old version. I read virtualenv’s installation manual, but I didn’t like much that you have to use sudo to bootstrap it. I came with an alternative way of installing an up-to-date virtualenv as long as you have an old version. In my case it was an Ubuntu 12.04 which ships virtualenv 1.7.

1st install the outdated version of virtualenv:

$ sudo apt-get install python-virtualenv

Then setup a temporary environment:

$ virtualenv $HOME/tmpenv

Finally use the environment created before to bootstrap an up-to-date one:

$ "$HOME/tmpenv/bin/pip" install virtualenv

$ "$HOME/tmpenv/bin/virtualenv" $HOME/env
$ rm -rf "$HOME/tmpenv"  # Delete the old one if needed