From c646800dbf504ac1816c943ec7dcb30c2c8a2445 Mon Sep 17 00:00:00 2001 From: Luxferre Date: Thu, 22 Oct 2026 22:04:01 +0300 Subject: [PATCH] fix(power): invoke /usr/bin/doas and /usr/bin/sudo by absolute path in sxmo_power.sh --- overlay/rootfs/usr/bin/sxmo_power.sh | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/overlay/rootfs/usr/bin/sxmo_power.sh b/overlay/rootfs/usr/bin/sxmo_power.sh index 406d59e..38e71e9 100755 --- a/overlay/rootfs/usr/bin/sxmo_power.sh +++ b/overlay/rootfs/usr/bin/sxmo_power.sh @@ -77,10 +77,10 @@ run_priv_power() { action="$1" method="PowerOff" [ "$action" = "reboot" ] && method="Reboot" - if doas "/sbin/$action" 2>/dev/null || \ - doas "$action" 2>/dev/null || \ - doas /bin/busybox "$action" 2>/dev/null || \ - sudo -n "/sbin/$action" 2>/dev/null || \ + if { [ -u /usr/bin/doas ] && /usr/bin/doas "/sbin/$action" 2>/dev/null; } || \ + { [ -u /usr/bin/doas ] && /usr/bin/doas "$action" 2>/dev/null; } || \ + { [ -u /usr/bin/doas ] && /usr/bin/doas /bin/busybox "$action" 2>/dev/null; } || \ + { [ -u /usr/bin/sudo ] && /usr/bin/sudo -n "/sbin/$action" 2>/dev/null; } || \ dbus-send --system --print-reply --dest=org.freedesktop.login1 /org/freedesktop/login1 "org.freedesktop.login1.Manager.$method" boolean:false >/dev/null 2>&1 || \ loginctl "$action" 2>/dev/null || \ run_polkit_login1 "$method"; then @@ -93,7 +93,7 @@ case "$1" in reboot) sync sxmo_hook_power.sh reboot || true - (sleep 4; doas /sbin/reboot -f >/dev/null 2>&1 || sudo -n /sbin/reboot -f >/dev/null 2>&1) & + (sleep 4; [ -u /usr/bin/doas ] && /usr/bin/doas /sbin/reboot -f >/dev/null 2>&1 || [ -u /usr/bin/sudo ] && /usr/bin/sudo -n /sbin/reboot -f >/dev/null 2>&1) & if ! run_priv_power reboot; then brightnessctl -d backlight set 180 >/dev/null 2>&1 || true brightnessctl -d white:kbd_backlight set 255 >/dev/null 2>&1 || true @@ -105,7 +105,7 @@ case "$1" in poweroff) sync sxmo_hook_power.sh poweroff || true - (sleep 4; doas /sbin/poweroff -f >/dev/null 2>&1 || sudo -n /sbin/poweroff -f >/dev/null 2>&1) & + (sleep 4; [ -u /usr/bin/doas ] && /usr/bin/doas /sbin/poweroff -f >/dev/null 2>&1 || [ -u /usr/bin/sudo ] && /usr/bin/sudo -n /sbin/poweroff -f >/dev/null 2>&1) & if ! run_priv_power poweroff; then brightnessctl -d backlight set 180 >/dev/null 2>&1 || true brightnessctl -d white:kbd_backlight set 255 >/dev/null 2>&1 || true