summaryrefslogtreecommitdiff
path: root/data
diff options
context:
space:
mode:
authorCarlos Garnacho <carlosg@gnome.org>2019-08-15 13:10:49 +0200
committerBenjamin Berg <benjamin@sipsolutions.net>2019-08-26 12:09:58 +0000
commit966f32c67a3524e70855f520f1b4a84ff3a94432 (patch)
treecb8839ec5d158e1aa4f7850ffe9d89d2026759f6 /data
parent6d8260cea209db9b511d6819f4783906c1e0c85c (diff)
downloadgnome-session-966f32c67a3524e70855f520f1b4a84ff3a94432.tar.gz
data: Add systemd target for X11 specific services
These services should be a direct dependency of a X11 session, but might be started or stopped as required on Wayland sessions. This unit is pretty barebones, and it is expected that any service that wants to be a dependency of it must set itself up as such. Also, make gnome-session-x11.target require this new target, so these X11 services are part of the X11 session initialization.
Diffstat (limited to 'data')
-rw-r--r--data/gnome-session-x11-services.target3
-rw-r--r--data/gnome-session-x11.target3
-rw-r--r--data/meson.build1
3 files changed, 7 insertions, 0 deletions
diff --git a/data/gnome-session-x11-services.target b/data/gnome-session-x11-services.target
new file mode 100644
index 00000000..e9dea9b5
--- /dev/null
+++ b/data/gnome-session-x11-services.target
@@ -0,0 +1,3 @@
+[Unit]
+Description=GNOME session X11 services
+DefaultDependencies=no
diff --git a/data/gnome-session-x11.target b/data/gnome-session-x11.target
index 4a78c527..52ce6aff 100644
--- a/data/gnome-session-x11.target
+++ b/data/gnome-session-x11.target
@@ -12,6 +12,9 @@ PartOf=graphical-session.target
RefuseManualStart=yes
RefuseManualStop=yes
+# Pull in all X11-specific services the session might depend on
+Requires=gnome-session-x11-services.target
+
# Always pull in the correct gnome-shell target
BindsTo=gnome-shell-x11.target
After=gnome-shell-x11.target
diff --git a/data/meson.build b/data/meson.build
index 38f865d8..ef35c494 100644
--- a/data/meson.build
+++ b/data/meson.build
@@ -119,6 +119,7 @@ if enable_systemd_session
'gnome-session-wayland.target',
'gnome-session-x11@.target',
'gnome-session-x11.target',
+ 'gnome-session-x11-services.target',
'gnome-session@.target',
'gnome-session.target',
'gnome-session-pre.target',