Krolyxon
Commit a04391c

Branches

Refs →

dotfiles-x11a04391c

sysact

Author
krolyxon
Date
2023-07-06 14:23 +0530
Parent
d0c9f1a
Commit
a04391cd094752710a6b5cbef2d800db7dacdd6c

+26 −16

2 files changed

  1. A .local/bin/sysact +26 −0
  2. D .local/bin/system_action +0 −16
A .local/bin/sysact View
@@ -0,0 +1,26 @@
1+#!/bin/sh
2+
3+export WM="dwm"
4+case "$(readlink -f /sbin/init)" in
5+ *systemd*) ctl='systemctl' ;;
6+ *) ctl='loginctl' ;;
7+esac
8+
9+wmpid(){ # This function is needed if there are multiple instances of the window manager.
10+ tree="$(pstree -ps $$)"
11+ tree="${tree#*$WM(}"
12+ echo "${tree%%)*}"
13+}
14+
15+
16+case "$(printf " lock\n󰠚 leave $WM\n renew $WM\n󱣻 hibernate\n reboot\n shutdown\n sleep\n display off" | dmenu -i -l 15 -p 'Action: ')" in
17+ ' lock') slock ;;
18+ "󰠚 leave $WM") kill -TERM "$(wmpid)" ;;
19+ " renew $WM") kill -HUP "$(wmpid)" ;;
20+ '󱣻 hibernate') slock $ctl hibernate -i ;;
21+ ' sleep') slock $ctl suspend -i ;;
22+ ' reboot') $ctl reboot -i ;;
23+ ' shutdown') $ctl poweroff -i ;;
24+ ' display off') xset dpms force off ;;
25+ *) exit 1 ;;
26+esac
D .local/bin/system_action View
@@ -1,16 +0,0 @@
1−#!/bin/sh
2−
3−case "$(readlink -f /sbin/init)" in
4− *systemd*) ctl='systemctl' ;;
5− *) ctl='loginctl' ;;
6−esac
7−
8−case "$(printf " lock\n display off\n logout\n sleep\n reboot\n shutdown" | dmenu -i -p '>_ ')" in
9− ' lock') slock ;;
10− ' display off') xset dpms force off ;;
11− ' logout') kill -TERM "$(pgrep -u "$USER" "\bdwm$")" ;;
12− ' sleep') slock $ctl suspend ;;
13− ' reboot') $ctl reboot ;;
14− ' shutdown') $ctl poweroff ;;
15− *) exit 1 ;;
16−esac