]> gitweb.hhaalo.de Git - albentohandy.git/commitdiff
change command checks
authorBastian Dehn <hhaalo@arcor.de>
Sun, 13 Jul 2025 18:04:49 +0000 (20:04 +0200)
committerBastian Dehn <hhaalo@arcor.de>
Sun, 13 Jul 2025 18:04:49 +0000 (20:04 +0200)
albentohandy

index 58f096de4e9bd00268b9930ba48bd4e97934597f..a414ff81dc1840e2081983ad911b350eb7c7dab2 100755 (executable)
@@ -1,5 +1,15 @@
 #!/bin/bash
 
+errlog()
+{
+       local lastexit=$?
+       local msg="$1"
+
+       echo "❌ ERROR: $msg"
+       echo "🛑 EXIT $lastexit"
+       return $lastexit
+}
+
 Usage()
 {
        cat <<- EOF
@@ -347,17 +357,32 @@ LoadConfig()
        source $HOME/.albentohandy.conf
 }
 
-ExistsBasicProgramms()
+check_programms()
 {
-       local program=
-       local readonly PROGRAMS="vorbiscomment flac oggenc parallel lame eyeD3 metaflac opusenc"
-
-       for program in $PROGRAMS; do
-               if [ ! -f "/usr/bin/$program" ]; then
-                       printf "$programm not installed\n"
-                       exit 1
-               fi
-       done
+       command -v flac > /dev/null \
+               || errlog "command flac not found" \
+               || return $?
+       command -v metaflac > /dev/null \
+               || errlog "command metaflac not found" \
+               || return $?
+       command -v oggenc > /dev/null \
+               || errlog "command oggenc not found" \
+               || return $?
+       command -v lame > /dev/null \
+               || errlog "command lame not found" \
+               || return $?
+       command -v opusenc > /dev/null \
+               || errlog "command opusenc not found" \
+               || return $?
+       command -v vorbiscomment > /dev/null \
+               || errlog "command vorbiscomment not found" \
+               || return $?
+       command -v eyeD3 > /dev/null \
+               || errlog "command eyeD3 not found" \
+               || return $?
+       command -v parallel > /dev/null \
+               || errlog "command parallel not found" \
+               || return $?
 }
 
 SetDefaultVariables()
@@ -479,7 +504,7 @@ main()
        WORK="$(pwd)/work.$$" # temporary working directory
        MUSICPATH="/tmp/musikpath" # flac collection directory
 
-       ExistsBasicProgramms
+       check_programms || return $?
        LoadConfig
        SetDefaultVariables