diff --git a/install.zsh b/install.zsh index 9bce967..f6634d1 100755 --- a/install.zsh +++ b/install.zsh @@ -6,14 +6,15 @@ typeset -A interpreter_checked have_dependency() { if [[ ! $interpreter_checked[$1] ]]; then check "Checking for $1… " - if which $1 &> /dev/null; then - succeed - interpreter_checked[$1]=1 - return 0 - else - fail "not found in path" - return 1 - fi + for variant in ${(s.|.)1}; do + if which $variant &> /dev/null; then + succeed + interpreter_checked[$1]=1 + return 0 + fi + done + fail "not found in path" + return 1 fi } diff --git a/lib/common.zsh b/lib/common.zsh index d18c1d5..726aba6 100644 --- a/lib/common.zsh +++ b/lib/common.zsh @@ -26,6 +26,14 @@ exists() { type "$1" &>/dev/null } +alternative() { + if ! exists $1; then eval "$1(){ $2 \$@}"; fi +} + +alternative-noparam() { + if ! exists $1; then eval "$1(){ $2 }"; fi +} + depend() { local missing local i