Monday, October 12, 2009

ipython and virtualenv

When recently working with virtualenv recently ipython wasn't picking up the correct sites packages directory. Anyhow this post cleared everything up.


In summary...

create ~/.ipython/virtualenv.py
import site
from os import environ
from os.path import join
from sys import version_info

if 'VIRTUAL_ENV' in environ:
virtual_env = join(environ.get('VIRTUAL_ENV'),
'lib',
'python%d.%d' % version_info[:2],
'site-packages')
site.addsitedir(virtual_env)
print 'VIRTUAL_ENV ->', virtual_env
del virtual_env
del site, environ, join, version_info

add this to ~/.ipython/ipy_user_conf.py
def main():
execf('~/.ipython/virtualenv.py')