dotfiles/bin/wofi-power-menu

30 lines
686 B
Bash
Executable file

#!/bin/env bash
entries="⏻ poweroff\n⇠ logout\n⏾ suspend\n⭮ reboot"
selected=$(echo -e "$entries" |
wofi --dmenu --cache-file /dev/null |
awk '{print tolower($2)}')
shall_continue() {
entries="Yes\nNo"
selected=$(echo -e "$entries" |
wofi --dmenu --cache-file /dev/null |
awk '{print tolower($1)}')
case $selected in
yes) exec "$@" ;;
no) exit 0 ;;
esac
}
case $selected in
logout)
case $1 in
"niri") shall_continue niri msg action quit ;;
"hypr") shall_continue hyprctl dispatch exit ;;
esac
;;
suspend) shall_continue systemctl suspend ;;
reboot) shall_continue systemctl reboot ;;
poweroff) shall_continue systemctl poweroff ;;
esac