summaryrefslogtreecommitdiffstats
path: root/meta/recipes-core/systemd/systemd/0002-binfmt-Don-t-install-dependency-links-at-install-tim.patch
blob: be231cf6b2a96f12c1dbdcb8c6252b3282f445fb (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
From 29a58009a172e369ad7166e16dab2f4945c6b0d2 Mon Sep 17 00:00:00 2001
From: Chen Qi <Qi.Chen@windriver.com>
Date: Thu, 21 Feb 2019 16:23:24 +0800
Subject: [PATCH 1/2] binfmt: Don't install dependency links at install time
 for the binfmt services

use [Install] blocks so that they get created when the service is enabled
like a traditional service.

The [Install] blocks were rejected upstream as they don't have a way to
"enable" it on install without static symlinks which can't be disabled,
only masked. We however can do that in a postinst.

Upstream-Status: Denied

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Chen Qi <Qi.Chen@windriver.com>
[rebased for systemd 243]
Signed-off-by: Scott Murray <scott.murray@konsulko.com>
---
 units/meson.build                       | 2 --
 units/proc-sys-fs-binfmt_misc.automount | 3 +++
 units/systemd-binfmt.service.in         | 4 ++++
 3 files changed, 7 insertions(+), 2 deletions(-)

diff --git a/units/meson.build b/units/meson.build
index e7bfb7f838..1d5ec4b178 100644
--- a/units/meson.build
+++ b/units/meson.build
@@ -154,7 +154,6 @@ units = [
         {
           'file' : 'proc-sys-fs-binfmt_misc.automount',
           'conditions' : ['ENABLE_BINFMT'],
-          'symlinks' : ['sysinit.target.wants/'],
         },
         {
           'file' : 'proc-sys-fs-binfmt_misc.mount',
@@ -251,7 +250,6 @@ units = [
         {
           'file' : 'systemd-binfmt.service.in',
           'conditions' : ['ENABLE_BINFMT'],
-          'symlinks' : ['sysinit.target.wants/'],
         },
         {
           'file' : 'systemd-bless-boot.service.in',
diff --git a/units/proc-sys-fs-binfmt_misc.automount b/units/proc-sys-fs-binfmt_misc.automount
index 5d212015a5..6c2900ca77 100644
--- a/units/proc-sys-fs-binfmt_misc.automount
+++ b/units/proc-sys-fs-binfmt_misc.automount
@@ -22,3 +22,6 @@ Before=shutdown.target
 
 [Automount]
 Where=/proc/sys/fs/binfmt_misc
+
+[Install]
+WantedBy=sysinit.target
diff --git a/units/systemd-binfmt.service.in b/units/systemd-binfmt.service.in
index 6861c76674..531e9fbd90 100644
--- a/units/systemd-binfmt.service.in
+++ b/units/systemd-binfmt.service.in
@@ -14,6 +14,7 @@ Documentation=https://docs.kernel.org/admin-guide/binfmt-misc.html
 Documentation=https://www.freedesktop.org/wiki/Software/systemd/APIFileSystems
 DefaultDependencies=no
 Conflicts=shutdown.target
+Wants=proc-sys-fs-binfmt_misc.automount
 After=proc-sys-fs-binfmt_misc.automount
 After=proc-sys-fs-binfmt_misc.mount
 After=local-fs.target
@@ -31,3 +32,6 @@ RemainAfterExit=yes
 ExecStart={{LIBEXECDIR}}/systemd-binfmt
 ExecStop={{LIBEXECDIR}}/systemd-binfmt --unregister
 TimeoutSec=90s
+
+[Install]
+WantedBy=sysinit.target
-- 
2.34.1