feat(desktop-return): make desktop environment detection case-insensitive
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
This commit is contained in:
@ -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
|
||||
|
Reference in New Issue
Block a user