Compare commits
4 Commits
187546dba6
...
9e31dcb046
Author | SHA1 | Date | |
---|---|---|---|
9e31dcb046
|
|||
9f4592c873
|
|||
23c5feef3c
|
|||
bc2f8293f2
|
@@ -75,25 +75,37 @@ if [[ -f /usr/share/xsessions/plasmax11.desktop ]]; then
|
||||
fi
|
||||
fi
|
||||
|
||||
de_normalized="${DE,,}"
|
||||
|
||||
# TODO: Check ALT Workstation session_launcher
|
||||
|
||||
case "$session" in
|
||||
desktop)
|
||||
if [[ "$SESSION_TYPE" == "wayland" ]]; then
|
||||
if [[ "$DE" == "GNOME" ]]; then
|
||||
if [[ "$de_normalized" == *onyx* ]]; then
|
||||
session_launcher="onyx-wayland"
|
||||
elif [[ "$de_normalized" == *gnome* ]]; then
|
||||
session_launcher="gnome-wayland"
|
||||
elif [[ "$DE" == "KDE" ]]; then
|
||||
elif [[ "$de_normalized" == *kde* ]]; then
|
||||
session_launcher="plasma"
|
||||
[[ "$KDE6" != "true" ]] && session_launcher="plasmawayland"
|
||||
elif [[ "$DE" == "Hyprland" ]]; then
|
||||
elif [[ "$de_normalized" == *hyprland* ]]; then
|
||||
session_launcher="hyprland"
|
||||
elif [[ "$de_normalized" == *xfce* ]]; then
|
||||
session_launcher="xfce-wayland"
|
||||
fi
|
||||
else
|
||||
if [[ "$DE" == "GNOME" ]]; then
|
||||
if [[ "$de_normalized" == *onyx* ]]; then
|
||||
session_launcher="onyx"
|
||||
elif [[ "$de_normalized" == *gnome* ]]; then
|
||||
session_launcher="gnome-xorg"
|
||||
elif [[ "$DE" == "KDE" ]]; then
|
||||
elif [[ "$de_normalized" == *kde* ]]; then
|
||||
session_launcher="plasmax11"
|
||||
[[ "$KDE6" != "true" ]] && session_launcher="plasma"
|
||||
elif [[ "$DE" == "MATE" ]]; then
|
||||
elif [[ "$de_normalized" == *mate* ]]; then
|
||||
session_launcher="mate"
|
||||
elif [[ "$de_normalized" == *xfce* ]]; then
|
||||
session_launcher="xfce"
|
||||
fi
|
||||
fi
|
||||
create_sentinel=1
|
||||
|
@@ -5,23 +5,22 @@
|
||||
CONFIG_FILE="$HOME/.config/gamescope-session-type"
|
||||
|
||||
if [[ -f "$CONFIG_FILE" ]] && grep -q 'autologin=true' "$CONFIG_FILE"; then
|
||||
case "$XDG_CURRENT_DESKTOP" in
|
||||
GNOME)
|
||||
XDG_DESKTOP=$(echo "${XDG_CURRENT_DESKTOP,,}")
|
||||
|
||||
if [[ "$XDG_DESKTOP" == *gnome* || "$XDG_DESKTOP" == *onix* ]]; then
|
||||
exec gnome-session-quit --no-prompt
|
||||
;;
|
||||
KDE)
|
||||
elif [[ "$XDG_DESKTOP" == *kde* ]]; then
|
||||
VERSION=$(grep -E '^X-KDE-PluginInfo-Version=' /usr/share/xsessions/plasmax11.desktop 2>/dev/null | cut -d'=' -f2)
|
||||
if [[ "$VERSION" =~ ^6\..* ]]; then
|
||||
exec qdbus org.kde.Shutdown /Shutdown org.kde.Shutdown.logout
|
||||
else
|
||||
exec qdbus org.kde.ksmserver /KSMServer logout 0 0 0
|
||||
fi
|
||||
;;
|
||||
MATE)
|
||||
elif [[ "$XDG_DESKTOP" == *mate* ]]; then
|
||||
exec mate-session-save --force-logout
|
||||
;;
|
||||
Hyprland)
|
||||
elif [[ "$XDG_DESKTOP" == *hyprland* ]]; then
|
||||
exec loginctl terminate-user "$(id -u)"
|
||||
;;
|
||||
esac
|
||||
elif [[ "$XDG_DESKTOP" == *xfce* ]]; then
|
||||
exec xfce4-session-logout --logout
|
||||
fi
|
||||
fi
|
||||
|
Reference in New Issue
Block a user