summaryrefslogtreecommitdiff
path: root/power-menu
blob: c615c4378ef78b4f789f7131e73adc639fbf6466 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
#!/bin/sh
LIST="$(cat <<EOF
shutdown
reboot
lock
suspend
hibernate
logout
EOF
)"

type systemctl >/dev/null && SYSTEMCTL="systemctl"
SYSTEMCTL="${SYSTEMCTL:-loginctl}"

COMMAND="$(echo "${LIST}" | dmenu -r)"

case "${COMMAND}" in
  "shutdown") ${SYSTEMCTL} poweroff ;;
  "reboot")
    ${SYSTEMCTL} reboot ;;
  "lock") loginctl lock-session ;;
  "suspend") ${SYSTEMCTL} suspend ;;
  "hibernate") ${SYSTEMCTL} hibernate ;;
  "logout")
    if pgrep -x Hyprland; then
      hyprctl dispatch exit
    else
      loginctl terminate-session
    fi
    ;;
esac