Переглянути джерело

Allow system Python in sbin

Arch Linux has Python is sbin as well as bin
pull/2065/head
Ivan Pozdeev 3 роки тому
джерело
коміт
26134d9b38
2 змінених файлів з 12 додано та 1 видалено
  1. +3
    -1
      libexec/pyenv-prefix
  2. +9
    -0
      test/prefix.bats

+ 3
- 1
libexec/pyenv-prefix Переглянути файл

@ -33,7 +33,9 @@ OLDIFS="$IFS"
if PYTHON_PATH="$(PYENV_VERSION="${version}" pyenv-which python 2>/dev/null)" || \
PYTHON_PATH="$(PYENV_VERSION="${version}" pyenv-which python3 2>/dev/null)" || \
PYTHON_PATH="$(PYENV_VERSION="${version}" pyenv-which python2 2>/dev/null)"; then
PYENV_PREFIX_PATH="${PYTHON_PATH%/bin/*}"
shopt -s extglob
# In some distros (Arch), Python can be found in sbin as well as bin
PYENV_PREFIX_PATH="${PYTHON_PATH%/?(s)bin/*}"
PYENV_PREFIX_PATH="${PYENV_PREFIX_PATH:-/}"
else
echo "pyenv: system version not found in PATH" >&2

+ 9
- 0
test/prefix.bats Переглянути файл

@ -24,6 +24,15 @@ load test_helper
assert_success "$PYENV_TEST_DIR"
}
#Arch has Python at sbin as well as bin
@test "prefix for sbin system" {
mkdir -p "${PYENV_TEST_DIR}/sbin"
touch "${PYENV_TEST_DIR}/sbin/python"
chmod +x "${PYENV_TEST_DIR}/sbin/python"
PYENV_VERSION="system" run pyenv-prefix
assert_success "$PYENV_TEST_DIR"
}
@test "prefix for system in /" {
mkdir -p "${BATS_TEST_DIRNAME}/libexec"
cat >"${BATS_TEST_DIRNAME}/libexec/pyenv-which" <<OUT

Завантаження…
Відмінити
Зберегти