summaryrefslogtreecommitdiff
path: root/0001-data-reap-gdm-sessions-on-shutdown.patch
diff options
context:
space:
mode:
authorCoprDistGit <infra@openeuler.org>2024-08-02 07:02:42 +0000
committerCoprDistGit <infra@openeuler.org>2024-08-02 07:02:42 +0000
commit0146b4281119abb87bf869b338f333f09dbc8f84 (patch)
tree9f785b401970a7c8be7f8a51cb3bbf1f448062a0 /0001-data-reap-gdm-sessions-on-shutdown.patch
parentad790728cab5990635f0bf2f7b9bb71bab07b866 (diff)
automatic import of gdmopeneuler24.03_LTSopeneuler23.09
Diffstat (limited to '0001-data-reap-gdm-sessions-on-shutdown.patch')
-rw-r--r--0001-data-reap-gdm-sessions-on-shutdown.patch55
1 files changed, 55 insertions, 0 deletions
diff --git a/0001-data-reap-gdm-sessions-on-shutdown.patch b/0001-data-reap-gdm-sessions-on-shutdown.patch
new file mode 100644
index 0000000..fb878aa
--- /dev/null
+++ b/0001-data-reap-gdm-sessions-on-shutdown.patch
@@ -0,0 +1,55 @@
+From a4743b9b2b355f84da3904e7da93ec3c7a521895 Mon Sep 17 00:00:00 2001
+From: Ray Strode <rstrode@redhat.com>
+Date: Fri, 26 Jul 2019 14:06:16 -0400
+Subject: [PATCH] data: reap gdm sessions on shutdown
+
+If GDM gets shutdown we should make sure all sessions get shutdown too.
+
+This is a bit of a safety net in case any processes in the session are
+lingering after the orderly shutdown.
+---
+ data/gdm.service.in | 1 +
+ 1 file changed, 1 insertion(+)
+
+diff --git a/data/gdm.service.in b/data/gdm.service.in
+index 17e8a8de..195bd0fd 100644
+--- a/data/gdm.service.in
++++ b/data/gdm.service.in
+@@ -1,33 +1,34 @@
+ [Unit]
+ Description=GNOME Display Manager
+
+ # replaces the getty
+ Conflicts=getty@tty${GDM_INITIAL_VT}.service
+ After=getty@tty${GDM_INITIAL_VT}.service
+
+ # replaces plymouth-quit since it quits plymouth on its own
+ Conflicts=${PLYMOUTH_QUIT_SERVICE}
+ After=${PLYMOUTH_QUIT_SERVICE}
+
+ # Needs all the dependencies of the services it's replacing
+ # pulled from getty@.service and ${PLYMOUTH_QUIT_SERVICE}
+ # (except for plymouth-quit-wait.service since it waits until
+ # plymouth is quit, which we do)
+ After=rc-local.service plymouth-start.service systemd-user-sessions.service
+
+ # GDM takes responsibility for stopping plymouth, so if it fails
+ # for any reason, make sure plymouth still stops
+ OnFailure=plymouth-quit.service
+
+ [Service]
+ ExecStart=${sbindir}/gdm
++ExecStopPost=-/usr/bin/bash -c 'for f in /run/systemd/sessions/*; do [ -f $f ] && /usr/bin/fgrep -q SERVICE=gdm $f && loginctl terminate-session $(basename $f); done'
+ KillMode=mixed
+ Restart=always
+ IgnoreSIGPIPE=no
+ BusName=org.gnome.DisplayManager
+ EnvironmentFile=-${LANG_CONFIG_FILE}
+ ExecReload=/bin/kill -SIGHUP $MAINPID
+ KeyringMode=shared
+
+ [Install]
+ Alias=display-manager.service
+--
+2.32.0
+