diff options
author | Philip Wittamore <philip@wittamore.com> | 2025-05-18 17:56:11 +0200 |
---|---|---|
committer | Philip Wittamore <philip@wittamore.com> | 2025-05-18 17:56:11 +0200 |
commit | 8923a5f27822b2332856ffb71bb625edc4a92da4 (patch) | |
tree | 7edbad0fe8171e509f0e766a6784fc5d266f65c7 /dpower | |
parent | ce43b91f3035dcc984ed519920198ef91bf89177 (diff) | |
download | scripts-8923a5f27822b2332856ffb71bb625edc4a92da4.tar.gz scripts-8923a5f27822b2332856ffb71bb625edc4a92da4.tar.bz2 scripts-8923a5f27822b2332856ffb71bb625edc4a92da4.zip |
Diffstat (limited to 'dpower')
-rwxr-xr-x | dpower | 30 |
1 files changed, 30 insertions, 0 deletions
@@ -0,0 +1,30 @@ +#!/usr/bin/env bash + +# Dmenu power menu. +# Uses dprompt for confirmation. + +Menu='Logout +Power Off +Reboot +Lockscreen +Suspend +Hibernate' + +Chosen=$(printf "$Menu" | dmenu -i -l 10 -p 'dpower') + +if [ "$Chosen" = 'Logout' ]; then + dprompt "Confirm $Chosen?" "loginctl terminate-session $XDG_SESSION_ID" +elif [ "$Chosen" = 'Power Off' ]; then + dprompt "Confirm $Chosen?" 'sytemctl poweroff' +elif [ "$Chosen" = 'Restart' ]; then + dprompt "Confirm $Chosen?" 'systemctl reboot' +elif [ "$Chosen" = 'Lockscreen' ]; then + dprompt "Confirm $Chosen?" "loginctl lock-session $XDG_SESSION_ID" +elif [ "$Chosen" = 'Suspend' ]; then + dprompt "Confirm $Chosen?" 'systemctl suspend' +elif [ "$Chosen" = 'Hibernate' ]; then + dprompt "Confirm $Chosen?" 'systemctl hibernate' +else + exit 1 +fi + |