diff --git a/pman.sh b/pman.sh index 7b0b01b..aaa01a2 100755 --- a/pman.sh +++ b/pman.sh @@ -7,6 +7,24 @@ command="" more_arguments=false su_needed=false +# If sudo is needed and necessary (and installed), prepend it, if not installed throw error +check_sudo() { + if [ "$su_needed" = "true" ] && [ "$UID" != 0 ]; then + if command -v "sudo" &>/dev/null; then + command="sudo $command" + else + echo "sudo command needed but not found" > /dev/stderr + exit 1 + fi + fi +} + +# Execute the command +execute_command() { + check_sudo + $command $command_args "${@}" +} + # Check if yay (aur) if [ "$command_args" = "yay" ] || [ "$command_args" = "aur" ]; then command="yay" @@ -81,15 +99,4 @@ elif [ "$more_arguments" = "true" ]; then exit 1 fi -# If sudo is needed and necessary (and installed), prepend it, if not installed throw error -if [ "$su_needed" = "true" ] && [ "$UID" != 0 ]; then - if command -v "sudo" &>/dev/null; then - command="sudo $command" - else - echo "sudo command needed but not found" > /dev/stderr - exit 1 - fi -fi - -# Execute the command -$command $command_args "${@}" +execute_command "${@}"