Это известный topi c, почти похожий на этот .
Однако - почему мне передаются настройки pyenv в порядке из .profile при входе в систему только до строки virtualenv.
export PYENV_ROOT="$HOME/.pyenv"
export PATH="$PYENV_ROOT/bin:$PATH"
if command -v pyenv 1>/dev/null 2>&1; then
eval "$(pyenv init -)"
fi
eval "$(pyenv virtualenv-init -)"
После входа в систему считывается указанная выше часть (pyenv активен в терминале), но не virtualenv. Ручная активация venv приводит к хорошо известному сообщению об ошибке.
$pyenv activate venv_name
Failed to activate virtualenv.
Perhaps pyenv-virtualenv has not been loaded into your shell properly.
Please restart current shell and try again.
I может решить эту проблему, явно указав .profile - тогда все работает нормально. Но почему .profile не читается или не интерпретируется сразу при входе в систему?
Изменение .bashr c требует без эффекта. Похоже, его не читают. Но .profile есть. Глобальный python - это система (2.7).
Береги себя