Add redirecting for explicit python(3) commands

This commit is contained in:
Reinier Criel 2025-10-27 13:00:18 -07:00
parent f6381f5e91
commit 57bbb06f39
6 changed files with 143 additions and 5 deletions

View file

@ -68,3 +68,33 @@ function pip() {
function pip3() {
wrapSafeChainCommand "pip3" "aikido-pip3" "$@"
}
# Intercept `python -m pip[...]` so it routes through safe-chain without changing python itself.
# Supports: `python -m pip`, `python -m pip3`, `python3 -m pip`, `python3 -m pip3`.
function python() {
if [[ "$1" == "-m" && "$2" == pip* ]]; then
local mod="$2"
shift 2
if [[ "$mod" == "pip3" ]]; then
wrapSafeChainCommand "pip3" "aikido-pip3" "$@"
else
wrapSafeChainCommand "pip" "aikido-pip" "$@"
fi
else
command python "$@"
fi
}
function python3() {
if [[ "$1" == "-m" && "$2" == pip* ]]; then
local mod="$2"
shift 2
if [[ "$mod" == "pip3" ]]; then
wrapSafeChainCommand "pip3" "aikido-pip3" "$@"
else
wrapSafeChainCommand "pip" "aikido-pip" "$@"
fi
else
command python3 "$@"
fi
}