$ sudo easy_install virtualenv $ sudo easy_install pip $ sudo easy_install virtualenvwrapper
Добавить в ~/.bashrc:
# Путь к корневой директории виртульных окружений export WORKON_HOME=$HOME/py_virtual_envs # Для Arch этот путь отличается от стандартного # /usr/local/bin/virtualenvwrapper_bashrc source /usr/bin/virtualenvwrapper_bashrc
Теперь надо чтобы настройки вступили в действие:
$ source ~/.bashrc
Создание нового окружения - команда mkvirtualenv <имя окружения> или mkvirtualenv --no-site-packages <имя окружения>
Проверка:
$ workon * $ mkvirtualenv temp New python executable in temp/bin/python Installing setuptools............done. $ workon temp $ mkvirtualenv temp2 New python executable in temp2/bin/python Installing setuptools............done. $ workon temp temp2 $ workon temp
Переход в директорию текущего виртуального окружения:
$ cd $VIRTUAL_ENV $ pwd /home/beast/py_virtual_envs/temp $ workon temp2 $ cd $VIRTUAL_ENV $ pwd /home/beast/py_virtual_envs/temp2
Или можно использовать команду cdvirtualenv
$ workon temp $ cdvirtualenv $ pwd /home/beast/py_virtual_envs/temp2 $ cdvirtualenv include/python2.6/ $ pwd /home/beast/py_virtual_envs/temp/include/python2.6
отключение виртульного окружения
$ deactivate
Удаление виртуального окружения
$ rmvirtualenv temp $ rmvirtualenv temp2
Опции mkvirtualenv передаются напрямую в virtualenv
$ mkvirtualenv --no-site-packages temp3
есть быстрый переход к текущей директории site-packages
$ cdsitepackages $ pwd /home/beast/py_virtual_envs/temp3/lib/python2.6/site-packages $ ls -l итого 352 drwxr-xr-x 3 beast beast 4096 Мар 13 21:13 . drwxr-xr-x 4 beast beast 4096 Мар 13 21:13 .. -rw-r--r-- 1 beast beast 237 Мар 13 21:13 easy-install.pth drwxr-xr-x 4 beast beast 4096 Мар 13 21:13 pip-0.6.3-py2.6.egg -rw-r--r-- 1 beast beast 333447 Мар 13 12:53 setuptools-0.6c11-py2.6.egg -rw-r--r-- 1 beast beast 30 Мар 13 21:13 setuptools.pth
Есть команда для добавления директорий с пакетами - add2virtualenv <директория>
$ add2virtualenv ~/py_virtual_envs/temp3/temp/ Warning: Converting "/home/beast/py_virtual_envs/temp3/temp/" to "/home/beast/py_virtual_envs/temp3/temp" $ python Python 2.6.4 (r264:75706, Jan 25 2010, 09:01:01) [GCC 4.4.2 20091208 (prerelease)] on linux2 Type "help", "copyright", "credits" or "license" for more information. >>> import additional_package >>> additional_package.NAME 'Additional package' ^D $ cat ./temp/additional_package/__init__.py NAME="Additional package" $ add2virtualenv ~/py_virtual_envs/temp3/temp/ $ add2virtualenv Usage: add2virtualenv dir [dir ...] Existing paths: /home/beast/py_virtual_envs/temp3/temp
Просмотр установленных пакетов:
$ lssitepackages easy-install.pth pip-0.6.3-py2.6.egg setuptools-0.6c11-py2.6.egg setuptools.pth virtualenv_path_extensions.pth virtualenv_path_extensions.pth: /home/beast/py_virtual_envs/temp3/temp
В ~/.bashrc можно так же добавить:
export PIP_VIRTUALENV_BASE=$WORKON_HOME export PIP_RESPECT_VIRTUALENV=true # Это позволит pip определить текущее виртуальное окружение # и устанавливать в него без использования параметра -E