[zsh/wlogout] Update logout script

This commit is contained in:
Viyurz 2024-08-08 12:55:12 +02:00
parent 74b7c89c25
commit f7c45ac2ea
Signed by: Viyurz
SSH key fingerprint: SHA256:IskOHTmhHSJIvAt04N6aaxd5SZCVWW1Guf9tEcxIMj8
2 changed files with 22 additions and 7 deletions

View file

@ -6,7 +6,7 @@
} }
{ {
"label" : "logout", "label" : "logout",
"action" : "hyprctl dispatch exit", "action" : "~/.config/zsh/.zlogout",
"text" : "Logout", "text" : "Logout",
"keybind" : "e" "keybind" : "e"
} }

27
.config/zsh/.zlogout Normal file → Executable file
View file

@ -1,6 +1,21 @@
wl-copy -c #!/bin/zsh
cliphist wipe
pkill -u "$USER" -9 ssh-agent # Clear clipboard
pkill -u "$USER" -9 pipewire if [[ -n $WAYLAND_DISPLAY ]]; then
pkill -u "$USER" -9 dbus-daemon wl-copy -c
killall -u "$USER" -9 kill-wine-explorer.sh cliphist wipe
fi
# Kill ssh-agent if it's the only opened session for this user
if [[ $(who | grep "$USER" | wc -l) -le 1 ]]; then
ssh-add -D
pkill -u "$USER" -9 ssh-agent
fi
if [[ -n $HYPRLAND_INSTANCE_SIGNATURE ]]; then
HYPRCMDS=$(hyprctl -j clients | jq -j '.[] | "dispatch closewindow address:\(.address); "')
hyprctl -q --batch "$HYPRCMDS"
hyprctl dispatch exit
fi
loginctl terminate-session $XDG_SESSION_ID