

Beginners Guide : pip and virtualenv - myusuf3
http://www.mahdiyusuf.com/post/5282169518/beginners-guide-easy-install-pip-and-virtualenv

======
flexterra
You should try virtualenvwrapper, it makes the process of activating and
changing between virtualenvs a breeze.

~~~
stock_toaster
I liked virtualenvwrapper, but it added considerable (noticable) latency to my
terminal startups. I ended up removing it and went back to manual virtualenv
activation (with a couple of small helper bash functions of course).

~~~
antrix
Same here. At times, it gets so bad that I have to hit Ctrl+C and then it
dumps out a nice big trace before giving me my shell prompt.

~~~
myusuf3
I have never seen that. it just loads a script into path. interesting.

------
2mur
Nice article.

I use virtualenv heavily and still do the symlinking dance. I keep my django
trunk in a ~/libraries folder and symlink the django folder to the
/path/to/virtualenv/lib/pythonX.X/site-packages folder. I'm not sure that I
have a compelling reason for doing so.

~~~
izak30
cd ~Path/to/django; pip install -e .;

It feels better than symlinking to me.

I would really only do this if I had a custom patched django though. If
speed/bandwidth is a concern, just make sure your pip cache is setup properly.

------
pdubroy
One of the nice things about virtualenv is that it installs a copy of pip into
every virtual environment you create. If you always have one of the
environments active, there's no need to even install pip globally.

~~~
Pewpewarrows
Except for when you DO want to install a package globally. Utilities like
pyflakes and fabric, for example.

~~~
pdubroy
On my personal machines (effectively single-user), I find there's no need to
install packages globally. I have a default virtual environment that I
activate in my .profile, and anything that's not project-specific gets
installed there.

Not saying everyone should do this, but it works well for me.

~~~
myusuf3
thats such a hassle. though, why dont you just install global requirements in
the base machine, you wont always have to keep turning on virtualenvs.

------
pyre
Also worth mentioning pythonbrew which goes a step further and allows you to
manage separate Python builds.

------
waterside81
pip & virtualenv saved me a world of hurt upgrading from Snow Leopard to Lion.
The upgrade completely wiped out any global packages I had in Python/2.6 - so
I did lose a few packages that I needed to rebuild, but not many.

