How to install virtualenv without using sudo?
Solution 1
This solution is suitable in cases where no virtualenv
is available system wide and you can not become root to install virtualenv
. When I set up a debian for python development or deployment I always apt-get install python-virtualenv
. It is more convenient to have it around than to do the bootstrap pointed out below. But without root power it may be the the way to go:
There is a bootstrap mechanism that should get you going.
Read: http://peak.telecommunity.com/DevCenter/EasyInstall#creating-a-virtual-python
In essence you would do this in your home directory in a unix environment:
Given your python is version 2.6
$ mkdir ~/bin $ mkdir -p ~/lib/python2.6 $ mkdir -p ~/local/lib/python2.6/dist-packages $ wget http://peak.telecommunity.com/dist/virtual-python.py $ python virtual-python.py --no-site-packages $ wget http://peak.telecommunity.com/dist/ez_setup.py $ ~/bin/python ez_setup.py $ ~/local/bin/easy_install virtualenv $ ~/local/bin/virtualenv --no-site-packages thereyouare
There may be room for optimization. I don't like the local
path. Just bin
and lib
would be nice. But it does its job.
Solution 2
The general idea is to install virtualenv
itself globaly, i.e. sudo easy_install virtualenv
or sudo pip install virtualenv
, but then create the actual virtual environment ("run virtualenv") locally.
Solution 3
You can also use the command below, it worked for me without sudo
access.
You may also need to modify your PYTHONPATH
environment variable using export
, see this SO answer for more details.
pip install --user virtualenv
Solution 4
http://opensourcehacker.com/2012/09/16/recommended-way-for-sudo-free-installation-of-python-software-with-virtualenv/ suggests the following:
curl -L -o virtualenv.py https://raw.githubusercontent.com/pypa/virtualenv/master/virtualenv.py
python virtualenv.py vvv-venv
. vvv-venv/bin/activate
pip install vvv
It seems to work well. It lets me install https://github.com/miohtama/vvv with pip
.
If you get:
Cannot find sdist setuptools-*.tar.gz
Cannot find sdist pip-*.tar.gz
Try --extra-search-dir
after downloading the tarballs at https://github.com/pypa/virtualenv/tree/develop/virtualenv_support
Solution 5
This worked for me:
pip install --target=$HOME/virtualenv/ virtualenv
cd somewhere/
python $HOME/virtualenv/virtualenv.py env
. env/bin/activate
Now I can pip install
whatever I want (except for everything that needs to compile stuff with gcc and has missing dependencies such as the python development libraries and Python.h
).
Lynob
Updated on September 30, 2021Comments
-
Lynob over 2 years
I have
easy_install
andpip
.I had many errors on my Linux Mint 12, I just re-installed it and I want to install everything from scratch again.
This is one of the errors that I had. I received an interesting answer there:
Stop using su and sudo to run virtualenv.
You need to run virtualenv as your normal user.
You have created the virtualenv with sudo which is why you are getting these errors.So how to install
virtualenv
without usingsudo
? Can i usepip
oreasy_install
without usingsudo
? Or is there another way?