From 61647abe7e0b7a26eb4db06ea13f78ee9bc71f5c Mon Sep 17 00:00:00 2001 From: "dylan.araps@gmail.com" Date: Thu, 30 Jan 2020 07:50:17 +0000 Subject: kiss: as_root: Move to func FossilOrigin-Name: 48264c5ea24e824e4c77bb405191f13ef4f072528817ad328445068ec3ac2fb2 --- kiss | 28 +++++++++++++--------------- 1 file changed, 13 insertions(+), 15 deletions(-) diff --git a/kiss b/kiss index 0323e00..69e2d05 100755 --- a/kiss +++ b/kiss @@ -49,13 +49,17 @@ prompt() { } as_root() { - if command -v sudo >/dev/null; then - sudo -E KISS_FORCE="$KISS_FORCE" "$@" - elif command -v doas >/dev/null; then - KISS_FORCE="$KISS_FORCE" doas "$@" - else - su -pc "KISS_FORCE=$KISS_FORCE $*" - fi + [ "$(id -u)" = 0 ] || { + if command -v sudo >/dev/null; then + sudo -E KISS_FORCE="$KISS_FORCE" "$@" + elif command -v doas >/dev/null; then + KISS_FORCE="$KISS_FORCE" doas "$@" + else + su -pc "KISS_FORCE=$KISS_FORCE $*" + fi + + exit + } } regex_escape() { @@ -1153,10 +1157,7 @@ args() { a|alternatives) # Rerun the script with 'su' if the user isn't root. # Cheeky but 'su' can't be used on shell functions themselves. - [ -z "$1" ] || [ "$(id -u)" = 0 ] || { - as_root kiss "$action" "$@" - return - } + [ -z "$1" ] || as_root kiss "$action" "$@" ;; i|install|r|remove) @@ -1164,10 +1165,7 @@ args() { # Rerun the script with 'su' if the user isn't root. # Cheeky but 'su' can't be used on shell functions themselves. - [ "$(id -u)" = 0 ] || { - as_root kiss "$action" "$@" - return - } + as_root kiss "$action" "$@" ;; esac -- cgit v1.2.3