Skip app execution aliases when searching for Python (#53569) (#13608)

Co-authored-by: Tad Hardesty <tad@platymuus.com>
This commit is contained in:
GrayRachnid
2020-10-24 15:12:03 -04:00
committed by GitHub
parent fa8c3affd9
commit dc0b62879f

View File

@@ -1,15 +1,25 @@
#!/bin/sh
# `sh` must be used here instead of `bash` to support GitHub Desktop.
set -e
# Strip the "App Execution Aliases" from $PATH. Even if the user installed
# Python using the Windows Store on purpose, these aliases always generate
# "Permission denied" errors when sh.exe tries to invoke them.
PATH=$(echo "$PATH" | tr ":" "\n" | grep -v "AppData/Local/Microsoft/WindowsApps" | tr "\n" ":")
# Try to find a Python executable.
if command -v python3 >/dev/null 2>&1; then
PY=python3
elif command -v python >/dev/null 2>&1; then
PY=python
elif command -v py >/dev/null 2>&1; then
PY=py
PY="py -3"
else
echo "Please install Python 3.6 or later."
echo "Please install Python from https://www.python.org/downloads/"
exit 1
fi
# Deduce the path separator and add the mapmerge package to the search path.
PATHSEP=$($PY - <<'EOF'
import sys, os
if sys.version_info.major != 3 or sys.version_info.minor < 6: