feat(desktop-return): make desktop environment detection case-insensitive

Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
This commit is contained in:
2025-06-10 08:43:20 +05:00
parent 187546dba6
commit bc2f8293f2

View File

@ -5,23 +5,20 @@
CONFIG_FILE="$HOME/.config/gamescope-session-type"
if [[ -f "$CONFIG_FILE" ]] && grep -q 'autologin=true' "$CONFIG_FILE"; then
case "$XDG_CURRENT_DESKTOP" in
GNOME)
exec gnome-session-quit --no-prompt
;;
KDE)
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)
exec mate-session-save --force-logout
;;
Hyprland)
exec loginctl terminate-user "$(id -u)"
;;
esac
XDG_DESKTOP=$(echo "${XDG_CURRENT_DESKTOP,,}")
if [[ "$XDG_DESKTOP" == *gnome* ]]; then
exec gnome-session-quit --no-prompt
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
elif [[ "$XDG_DESKTOP" == *mate* ]]; then
exec mate-session-save --force-logout
elif [[ "$XDG_DESKTOP" == *hyprland* ]]; then
exec loginctl terminate-user "$(id -u)"
fi
fi