diff --git a/bin/pyenv-sh-activate b/bin/pyenv-sh-activate index 6586de8..2360346 100755 --- a/bin/pyenv-sh-activate +++ b/bin/pyenv-sh-activate @@ -240,6 +240,8 @@ if [ -x "${prefix}/bin/conda" ]; then : # conda doesn't support fish ;; * ) + CONDA_PREFIX="$prefix" + echo "export CONDA_PREFIX=\"${CONDA_PREFIX}\";" for script in "${prefix}/etc/conda/activate.d"/*.sh; do echo ". \"${script}\";" done diff --git a/bin/pyenv-sh-deactivate b/bin/pyenv-sh-deactivate index 7afdb89..f1c163c 100755 --- a/bin/pyenv-sh-deactivate +++ b/bin/pyenv-sh-deactivate @@ -69,6 +69,7 @@ if [ -x "${prefix}/bin/conda" ]; then for script in "${prefix}/etc/conda/deactivate.d"/*.sh; do echo ". \"${script}\";" done + echo "unset CONDA_PREFIX" ;; esac shopt -u nullglob diff --git a/test/conda-activate.bats b/test/conda-activate.bats index 768b8d8..89e2001 100644 --- a/test/conda-activate.bats +++ b/test/conda-activate.bats @@ -39,6 +39,7 @@ export CONDA_DEFAULT_ENV="root"; pyenv-virtualenv: prompt changing will be removed from future release. configure \`export PYENV_VIRTUALENV_DISABLE_PROMPT=1' to simulate the behavior. export _OLD_VIRTUAL_PS1="\${PS1}"; export PS1="(anaconda-2.3.0) \${PS1}"; +export CONDA_PREFIX="${TMP}/pyenv/versions/anaconda-2.3.0"; EOS unstub pyenv-version-name @@ -97,6 +98,7 @@ export CONDA_DEFAULT_ENV="root"; pyenv-virtualenv: prompt changing will be removed from future release. configure \`export PYENV_VIRTUALENV_DISABLE_PROMPT=1' to simulate the behavior. export _OLD_VIRTUAL_PS1="\${PS1}"; export PS1="(miniconda-3.9.1) \${PS1}"; +export CONDA_PREFIX="${TMP}/pyenv/versions/miniconda-3.9.1"; EOS unstub pyenv-virtualenv-prefix @@ -126,6 +128,7 @@ export CONDA_DEFAULT_ENV="foo"; pyenv-virtualenv: prompt changing will be removed from future release. configure \`export PYENV_VIRTUALENV_DISABLE_PROMPT=1' to simulate the behavior. export _OLD_VIRTUAL_PS1="\${PS1}"; export PS1="(anaconda-2.3.0/envs/foo) \${PS1}"; +export CONDA_PREFIX="${TMP}/pyenv/versions/anaconda-2.3.0/envs/foo"; . "${PYENV_ROOT}/versions/anaconda-2.3.0/envs/foo/etc/conda/activate.d/activate.sh"; EOS @@ -158,6 +161,7 @@ export CONDA_DEFAULT_ENV="bar"; pyenv-virtualenv: prompt changing will be removed from future release. configure \`export PYENV_VIRTUALENV_DISABLE_PROMPT=1' to simulate the behavior. export _OLD_VIRTUAL_PS1="\${PS1}"; export PS1="(miniconda-3.9.1/envs/bar) \${PS1}"; +export CONDA_PREFIX="${TMP}/pyenv/versions/miniconda-3.9.1/envs/bar"; . "${PYENV_ROOT}/versions/miniconda-3.9.1/envs/bar/etc/conda/activate.d/activate.sh"; EOS diff --git a/test/conda-deactivate.bats b/test/conda-deactivate.bats index b390810..4eeaf3b 100644 --- a/test/conda-deactivate.bats +++ b/test/conda-deactivate.bats @@ -30,6 +30,7 @@ setup() { assert_success assert_output <