37 lines
725 B
Bash
Executable file
37 lines
725 B
Bash
Executable file
#!/usr/bin/env bash
|
|
|
|
# MENU ENTRIES
|
|
lock="lock"
|
|
suspend="suspend"
|
|
hibernate="hibernate"
|
|
logout="log out"
|
|
reboot="reboot"
|
|
shutdown="shutdown"
|
|
|
|
# USER INPUT
|
|
selected=$(printf "%s\n%s\n%s\n%s\n%s\n%s" "$lock" "$suspend" "$hibernate" "$logout" "$reboot" "$shutdown" | fuzzel --dmenu --prompt "power: ")
|
|
|
|
# EXECUTION ROUTING
|
|
case "$selected" in
|
|
"$lock")
|
|
swaylock -f -c 000000
|
|
;;
|
|
"$suspend")
|
|
doas loginctl suspend
|
|
;;
|
|
"$hibernate")
|
|
doas loginctl hibernate
|
|
;;
|
|
"$logout")
|
|
loginctl terminate-session "$XDG_SESSION_ID"
|
|
;;
|
|
"$reboot")
|
|
doas reboot
|
|
;;
|
|
"$shutdown")
|
|
doas poweroff
|
|
;;
|
|
*)
|
|
exit 0
|
|
;;
|
|
esac
|