Properly check if executable is in PATH

pull/2/head
Nikita Ivanov 3 years ago
parent b675062af6
commit ccbd3e249b
No known key found for this signature in database
GPG Key ID: 6E656AC5B97B5133

@ -41,21 +41,24 @@ done
[[ $completed_tasks = "n" ]] && clear_completed="" [[ $completed_tasks = "n" ]] && clear_completed=""
# Check for rofi/dmenu # Check for rofi/dmenu
exe_exists() {
command -v "$1" >/dev/null
}
if [[ -n $1 ]]; then if [[ -n $1 ]]; then
menu=$1 menu=$1
elif [[ -f /usr/bin/rofi ]]; then elif exe_exists rofi; then
menu=rofi menu=rofi
elif [[ -f /usr/bin/dmenu ]]; then elif exe_exists dmenu; then
menu=dmenu menu=dmenu
else else
echo "Please install either rofi or dmenu"; exit 1 echo "Please install either rofi or dmenu"; exit 1
fi fi
case $menu in case $menu in
rofi) rofi)
[[ -f /usr/bin/rofi ]] || { echo "rofi isn't installed"; exit 1; } exe_exists rofi || { echo "rofi isn't installed"; exit 1; }
command="rofi -dmenu"; options="-selected-row 2" ;; command="rofi -dmenu"; options="-selected-row 2" ;;
dmenu) dmenu)
[[ -f /usr/bin/dmenu ]] || { echo "dmenu isn't installed"; exit 1; } exe_exists dmenu || { echo "dmenu isn't installed"; exit 1; }
command=dmenu ;; command=dmenu ;;
*) *)
echo "Please install either rofi or dmenu"; exit 1 ;; echo "Please install either rofi or dmenu"; exit 1 ;;