Just to add ... I ran through creating a virtualenv in the same manner as you:
$ virtualenv SomeEnv $ source SomeEnv/bin/activate (SomeEnv)$ which pip /home/user/virtual/SomeEnv/bin/pip (SomeEnv)$ pip install ipython Requirement already satisfied (use --upgrade to upgrade): ipython in / usr/local/lib/python2.6/dist-packages Cleaning up... (SomeEnv)$ pip install ipython --upgrade ... pip installs ipython ... (SomeEnv)$ which ipython /home/user/virtual/SomeEnv/bin/ipython (SomeEnv)$ ipython Python 2.6.4 (r264:75706, Dec 7 2009, 18:45:15) Type "copyright", "credits" or "license" for more information. IPython 0.11 -- An enhanced Interactive Python. ? -> Introduction and overview of IPython's features. %quickref -> Quick reference. help -> Python's own help system. object? -> Details about 'object', use 'object??' for extra details. In [1]: import os In [2]: os.__file__ Out[2]: '/home/user/virtual/SomeEnv/lib/python2.6/os.pyc' In [3]: import dbus In [4]: dbus.__file__ Out[4]: '/usr/lib/pymodules/python2.6/dbus/__init__.pyc' ipython is using the virtualenv when it can find them and the system wide packages when they are not in the virtualenv. Hope that helps you track down the problem :/ On Aug 11, 9:59 am, Gelonida N <gelon...@gmail.com> wrote: > Hi, > > Short version > ============== > I have a system with ipython installed by my Ubuntu distribution > I created a virtualenv with> virtualenv ~/myenv > I installed ipython > > pip install ipython --upgrade > > When using ipython I notice, that it does import the modules from my > default python setup and not from my virtualenv. > > Why? > What could I have done differently? > > Long version > =================== > > I created a virtualenv with > > virtualenv ~/myenv > > THis inherits my machines site packages. > The reason I'm not using > > virutalenv --no-site-packages ~/myenv > > is that I would like to use some of the site packages, > in particular some, that I don't want to compile due to huge package > dependencies. > > Small problem is, that if I run ipython in a virtualenv > it will still call /usr/bin/ipython > > and if I check the modules, that I import I seem to import the modules > of my default environment and not the ones of my virtualenv. > > So I decided I will install my own version of ipython in my virtualenv > > The output if pip install ipython is a little confusing. > > > Requirement already satisfied (use --upgrade to upgrade): ipython in > > /usr/lib/pymodules/python2.6 > > As I am a normal user and I don't have permissions to overwrite /usr/lib > I decided to just give it a try and hope it will install in my > virtualenv path and not in /usr/lib/... > > After running > > > pip install ipython --upgrade > > I have my own version of ipython. > > However when calling and using it I notice it still imports the modules > from my default python and not from my virtualenv? > > Why does ipython ignore the virtualenv's settings? > > I know there are workarounds, but I wondered why it doesn't work out of > the box. -- http://mail.python.org/mailman/listinfo/python-list