«Добавьте три строки в файл запуска оболочки (.bashrc, .profile и т. Д.), Чтобы указать место, где должны жить виртуальные среды».
Прежде чем рассматривать доступные варианты, важно рассмотреть возможные варианты использования :
логин терминала (консоли) (без X, локально)
SSH удаленный вход (интерактивный)
Выполнение удаленной команды ssh (не интерактивно)
после «графического» входа в систему (GDM), открытие терминала (gnome-терминал)
непосредственно в DE (Gnome), через "рабочий стол" из файла Exec
косвенно вызывается из xclient (например, подпроцесс emacs)
указано как задание для пользователя
зарегистрирован как сервис systemd (или сокет) для пользователя без полномочий root
косвенно запускается подпроцессом службы (например, httpd CGI)
Для поддержки графического входа в систему X единственный путь установить путь - через ~ / .profile, который получает исходники через / etc / gdm / Xsession, после / etc / profile
Хотя это лучшее место для настройки пути и среды, оно не может правильно определить функции virtualenvwrapper ( "workon" )
Причина в том, что Xsession выполняется в оболочке POSIX / bin / sh, которая не поддерживается virtualenvwrapper (поддержка bash, zsh, ksh)
Некоторые дистрибутивы используют dash в качестве оболочки POSIX, в то время как другие все еще полагаются на вызов bash в режиме POSIX.
Имея две оболочки (bash, zsh), можно указать ** bash ** на * "общесистемный" * virtualenv в ** / usr / local / lib / pythonenvs ** и ** zsh ** на * "пользователь" * virtualenv в ** ~ / .virtualenvs **. Полезно для тестирования развертывания. Та же конфигурация может быть применена к RVM
hute37 8 лет назад
0