*
This commit is contained in:
cho
2024-01-27 15:42:16 +07:00
parent 0e6199ab8b
commit 9ceb9dbd33
47 changed files with 4633 additions and 267 deletions

View File

@ -1,25 +1,34 @@
#!/bin/sh
# A dmenu wrapper script for system functions.
export WM=$XDG_CURRENT_DESKTOP
#export WM=$XDG_CURRENT_DESKTOP
if [ "$WINDOW_MANAGER" == "sway" ]; then WM="sway" ; fi
if [ "$WINDOW_MANAGER" == "river" ]; then WM="river" ; fi
case "$(readlink -f /sbin/init)" in
*systemd*) ctl='systemctl' ;;
*) ctl='loginctl' ;;
esac
#case "$(printf "🔒 lock\n🚪 leave $WM\n♻ renew $WM\n🐻 hibernate\n🔃 reboot\n🖥 shutdown\n💤 sleep\n📺 display off\n set background\n start idle\n kill swayidle\n fcitx5\n kill fcitx5\n start emacs daemon\n kill emacs daemon\n restart emacs daemon" | rofi -dmenu -i -l 16 -p 'action')" in
case "$(printf "🔒 lock\n🚪 leave $WM\n♻ renew $WM\n🐻 hibernate\n🔃 reboot\n🖥 shutdown\n💤 sleep\n📺 display off\n set background\n start idle\n kill swayidle\n fcitx5\n kill fcitx5\n start emacs daemon\n kill emacs daemon\n restart emacs daemon" | wofi -L 17 --cache-file=/dev/null --show=dmenu -i -p 'action')" in
case "$(printf "🔒 lock\n🚪 leave $WM\n♻ renew $WM\n🐻 hibernate\n🔃 reboot\n🖥 shutdown\n💤 sleep\n📺 display off\n set background\n start idle\n kill swayidle\n fcitx5\n kill fcitx5\n start emacs daemon\n kill emacs daemon\n restart emacs daemon\ntoggle sworkstyle" | wofi -L 17 --cache-file=/dev/null --show=dmenu -i -p 'action')" in
'🔒 lock')
setsid -f swaylock
setsid -f sleep 2 && swayidle -w timeout 1 'swaymsg "output * dpms off"' resume 'swaymsg "output * dpms on" && kill $#'
setsid -f sleep 2 && swayidle -w timeout 1 'wlopm --off "*"' resume 'wlopm --on "*" && kill $#'
;;
"🚪 leave $WM")
if [ "$WINDOW_MANAGER" == "sway" ]; then swaymsg exit ; fi
if [ "$WINDOW_MANAGER" == "river" ]; then riverctl exit ; fi
;;
"♻️ renew $WM")
if [ "$WINDOW_MANAGER" == "sway" ]; then swaymsg reload ; fi
if [ "$WINDOW_MANAGER" == "river" ]; then $HOME/.config/river/init ; fi
;;
"🚪 leave $WM") swaymsg exit ;;
"♻️ renew $WM") swaymsg reload ;;
'🐻 hibernate') $ctl hibernate -i ;;
'💤 sleep') $ctl suspend -i ;;
'🔃 reboot') $ctl reboot -i ;;
'🖥️ shutdown') $ctl poweroff -i ;;
'📺 display off') swayidle -w timeout 1 'swaymsg "output * dpms off"' resume 'swaymsg "output * dpms on" && kill $#' ;;
#'📺 display off') swayidle -w timeout 1 'swaymsg "output * dpms off"' resume 'swaymsg "output * dpms on" && kill $#' ;;
'📺 display off') swayidle -w timeout 1 'wlopm --off "*"' resume 'wlopm --on "*" && kill $#' ;;
' set background') change-background ;;
' start idle') killall swayidle && sleep 1; setsid -f idle && notify-send 'idle started.';;
' kill swayidle') killall swayidle && notify-send 'idle killed.';;