blob: 435f1eebeab07f5e492e5cdbdb88c207d728a3ca (
plain) (
blame)
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
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
|
#!/usr/bin/env bash
# Swayconfig
SWAYCONFIG="$HOME/.config/swaylock/config"
# CMDs
uptime="`uptime -p | sed -e 's/up //g'`"
host=`hostnamectl hostname`
# Options
shutdown=''
reboot=''
lock=''
suspend=''
logout=''
# Rofi CMD
rofi_cmd() {
rofi -dmenu -p " $USER@$host" -mesg " Uptime: $uptime" -theme ~/.config/rofi/config-powermenu.rasi
}
# Pass variables to rofi dmenu
run_rofi() {
echo -e "$lock\0meta\x1fl\n$suspend\0meta\x1fu\n$logout\0meta\x1fe\n$reboot\0meta\x1fr\n$shutdown\0meta\x1fs" | rofi_cmd
}
# Execute Command
run_cmd() {
if [[ $1 == '--shutdown' ]]; then
systemctl poweroff
elif [[ $1 == '--reboot' ]]; then
systemctl reboot
elif [[ $1 == '--suspend' ]]; then
systemctl suspend
elif [[ $1 == '--logout' ]]; then
hyprctl dispatch exit 0
fi
}
# Actions
chosen="$(run_rofi)"
case ${chosen} in
$shutdown)
run_cmd --shutdown
;;
$reboot)
run_cmd --reboot
;;
$hibernate)
run_cmd --hibernate
;;
$lock)
sleep 0.5s; swaylock --config ${SWAYCONFIG} & disown
;;
$suspend)
run_cmd --suspend
;;
$logout)
run_cmd --logout
;;
esac
|