[gnome-initial-setup/wip/benzea/systemd-fixes: 1/2] data: Always install .wants symlinks



commit cc054a0e3ea15afa7732904e5fc2a1b8e2ced777
Author: Benjamin Berg <bberg redhat com>
Date:   Wed Sep 4 13:24:58 2019 +0200

    data: Always install .wants symlinks
    
    The services should always be enabled after installation. Install the
    .wants symlinks rather than relying on them being enabled by the package
    post installation script or system administrator.

 data/gnome-initial-setup-copy-worker.service.in |  3 ---
 data/gnome-initial-setup-first-login.service.in |  3 ---
 data/gnome-initial-setup.service.in             |  3 ---
 data/gnome-welcome-tour.service.in              |  3 ---
 data/meson.build                                | 18 +++++++++++-------
 5 files changed, 11 insertions(+), 19 deletions(-)
---
diff --git a/data/gnome-initial-setup-copy-worker.service.in b/data/gnome-initial-setup-copy-worker.service.in
index df43c39..9b411d0 100644
--- a/data/gnome-initial-setup-copy-worker.service.in
+++ b/data/gnome-initial-setup-copy-worker.service.in
@@ -10,6 +10,3 @@ ConditionPathExists=!%E/gnome-initial-setup-done
 Type=simple
 ExecStart=@libexecdir@/gnome-initial-setup-copy-worker
 Restart=no
-
-[Install]
-WantedBy=gnome-session.target
diff --git a/data/gnome-initial-setup-first-login.service.in b/data/gnome-initial-setup-first-login.service.in
index 7c7f50d..302753b 100644
--- a/data/gnome-initial-setup-first-login.service.in
+++ b/data/gnome-initial-setup-first-login.service.in
@@ -14,6 +14,3 @@ ConditionPathExists=!%E/gnome-initial-setup-done
 Type=oneshot
 ExecStart=@libexecdir@/gnome-initial-setup --existing-user
 Restart=no
-
-[Install]
-WantedBy=gnome-session.target
diff --git a/data/gnome-initial-setup.service.in b/data/gnome-initial-setup.service.in
index ea91d69..bb0af2e 100644
--- a/data/gnome-initial-setup.service.in
+++ b/data/gnome-initial-setup.service.in
@@ -11,6 +11,3 @@ Type=simple
 ExecStart=@libexecdir@/gnome-initial-setup
 ExecStopPost=-@libexecdir@/gnome-session-ctl --shutdown
 Restart=no
-
-[Install]
-WantedBy=gnome-session@gnome-initial-setup.target
diff --git a/data/gnome-welcome-tour.service.in b/data/gnome-welcome-tour.service.in
index 2315540..d958630 100644
--- a/data/gnome-welcome-tour.service.in
+++ b/data/gnome-welcome-tour.service.in
@@ -10,6 +10,3 @@ ConditionPathExists=%E/run-welcome-tour
 Type=simple
 ExecStart=@libexecdir@/gnome-welcome-tour
 Restart=no
-
-[Install]
-WantedBy=gnome-session.target
diff --git a/data/meson.build b/data/meson.build
index 9aa79bf..19e3643 100644
--- a/data/meson.build
+++ b/data/meson.build
@@ -42,20 +42,24 @@ if enable_systemd
     unitconf = configuration_data()
     unitconf.set('libexecdir', libexec_dir)
 
-    unit_files = [
-        'gnome-initial-setup.service',
-        'gnome-initial-setup-first-login.service',
-        'gnome-initial-setup-copy-worker.service',
-        'gnome-welcome-tour.service'
-    ]
+    unit_files = {
+        'gnome-initial-setup.service' : [ 'gnome-session@gnome-initial-setup.target.wants/' ],
+        'gnome-initial-setup-first-login.service' : [ 'gnome-session.target.wants/' ],
+        'gnome-initial-setup-copy-worker.service' : [ 'gnome-session.target.wants/' ],
+        'gnome-welcome-tour.service' : [ 'gnome-session.target.wants/' ],
+    }
 
-    foreach unit: unit_files
+    foreach unit, wants: unit_files
         configure_file(
             input: unit + '.in',
             output: unit,
             configuration: unitconf,
             install_dir: systemd_userunitdir
         )
+
+        foreach target: wants
+            meson.add_install_script('meson-add-wants.sh', systemd_userunitdir, target, unit)
+        endforeach
     endforeach
 endif
 


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]