diff --git a/dot_local/bin/executable_i3exit b/dot_local/bin/executable_i3exit new file mode 100644 index 0000000..c0bf676 --- /dev/null +++ b/dot_local/bin/executable_i3exit @@ -0,0 +1,35 @@ +#!/bin/sh + +# with openrc use loginctl +[ "$(cat /proc/1/comm)" = "systemd" ] && logind=systemctl || logind=loginctl + +case "$1" in + lock) + xscreensaver-command -lock + ;; + logout) + i3-msg exit + ;; + switch_user) + dm-tool switch-to-greeter + ;; + suspend) + xscreensaver-command -lock && $logind suspend + ;; + hibernate) + xscreensaver-command -lock && $logind hibernate + ;; + reboot) + $logind reboot + ;; + shutdown) + $logind poweroff + ;; + *) + echo "== ! i3exit: missing or invalid argument ! ==" + echo "Try again with: lock | logout | switch_user | suspend | hibernate | reboot | shutdown" + exit 2 +esac + +exit 0 +