diff --git a/bin/pyenv-sh-activate b/bin/pyenv-sh-activate index 592a002..d80f742 100755 --- a/bin/pyenv-sh-activate +++ b/bin/pyenv-sh-activate @@ -14,6 +14,10 @@ set -e [ -n "$PYENV_DEBUG" ] && set -x +resolve_link() { + $(type -p greadlink readlink | head -1) "$1" +} + unset FORCE unset QUIET unset VERBOSE @@ -86,6 +90,10 @@ done shell="${PYENV_SHELL:-${SHELL##*/}}" prefix="$(pyenv-prefix "${venv}")" +if [ -L "${prefix}" ]; then + prefix="$(resolve_link "${prefix}" 2>/dev/null)" +fi + if [[ "${VIRTUAL_ENV}" == "${prefix}" ]]; then if [ -z "${QUIET}" ]; then echo "pyenv-virtualenv: version \`${venv}' is already activated" 1>&2