data: ensure systemd environment is sanitized when shell exits

When mutter is acting as a display server it sets a number of
environment variables in the user's session. These variables
tell applications where the display server's sockets are.

When the shell exits at logout time it leaves these environment
variables in the systemd --user environment, which can confuse
subsequent sessions.

This commit clears up the environment on exit.

https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/1129
This commit is contained in:
Ray Strode 2020-03-25 16:30:46 -04:00 committed by Florian Müllner
parent 766288eec1
commit 2ef71b62df

View File

@ -19,6 +19,10 @@ Before=gnome-session-initialized.target
[Service]
Type=notify
ExecStart=@bindir@/gnome-shell
# unset some environment variables that were set by the shell and won't work now that the shell is gone
ExecStopPost=-systemctl --user unset-environment GNOME_SETUP_DISPLAY WAYLAND_DISPLAY DISPLAY XAUTHORITY
# Exit code 1 means we are probably *not* dealing with an extension failure
SuccessExitStatus=1
# On wayland we cannot restart