cf156b469c
Using the bus name to notify service startup to systemd has some disadvantages. The main one being that systemd will consider a gnome-shell restart (Alt+F2 r) a service failure and restart the shell, cleaning up all its children (i.e. user launched applications). In the future the shell should launch applications in their own transient unit so that a service restart does not affect applications. Another potential issue is that we must never load gnome-shell-wayland.service and gnome-shell-x11.service at the same time, as systemd does not like two services providing the same bus name. Fixes https://gitlab.gnome.org/GNOME/gnome-shell/issues/1496 https://gitlab.gnome.org/GNOME/gnome-shell/merge_requests/690
26 lines
721 B
SYSTEMD
26 lines
721 B
SYSTEMD
[Unit]
|
|
Description=GNOME Shell on Wayland
|
|
# On wayland, force a session shutdown
|
|
OnFailure=gnome-shell-disable-extensions.service gnome-session-shutdown.target
|
|
OnFailureJobMode=replace-irreversibly
|
|
CollectMode=inactive-or-failed
|
|
RefuseManualStart=on
|
|
RefuseManualStop=on
|
|
|
|
After=gnome-session-manager.target
|
|
|
|
Requisite=gnome-session-initialized.target
|
|
PartOf=gnome-session-initialized.target
|
|
Before=gnome-session-initialized.target
|
|
|
|
# The units already conflict because they use the same BusName
|
|
#Conflicts=gnome-shell-x11.service
|
|
|
|
[Service]
|
|
Type=notify
|
|
ExecStart=@bindir@/gnome-shell
|
|
# Exit code 1 means we are probably *not* dealing with an extension failure
|
|
SuccessExitStatus=1
|
|
# On wayland we cannot restart
|
|
Restart=no
|