blob: a19a02555911feb015db538e48f5d6b2e6d2cb3a [file] [log] [blame]
Andrew Geissler595f6302022-01-24 19:11:47 +00001From f9974d7dc289551bfbf823b716fd32b43c54e465 Mon Sep 17 00:00:00 2001
Brad Bishop1a4b7ee2018-12-16 17:11:34 -08002From: Chen Qi <Qi.Chen@windriver.com>
Brad Bishop19323692019-04-05 15:28:33 -04003Date: Thu, 21 Feb 2019 16:23:24 +0800
Andrew Geissler82c905d2020-04-13 13:39:40 -05004Subject: [PATCH] binfmt: Don't install dependency links at install time for
5 the binfmt services
Brad Bishop1a4b7ee2018-12-16 17:11:34 -08006
7use [Install] blocks so that they get created when the service is enabled
8like a traditional service.
9
10The [Install] blocks were rejected upstream as they don't have a way to
11"enable" it on install without static symlinks which can't be disabled,
12only masked. We however can do that in a postinst.
13
14Upstream-Status: Denied
15
16Signed-off-by: Ross Burton <ross.burton@intel.com>
17Signed-off-by: Khem Raj <raj.khem@gmail.com>
18Signed-off-by: Chen Qi <Qi.Chen@windriver.com>
Brad Bishopa34c0302019-09-23 22:34:48 -040019[rebased for systemd 243]
20Signed-off-by: Scott Murray <scott.murray@konsulko.com>
Andrew Geissler82c905d2020-04-13 13:39:40 -050021
Brad Bishop1a4b7ee2018-12-16 17:11:34 -080022---
23 units/meson.build | 6 ++----
24 units/proc-sys-fs-binfmt_misc.automount | 3 +++
25 units/systemd-binfmt.service.in | 4 ++++
26 3 files changed, 9 insertions(+), 4 deletions(-)
27
Patrick Williams213cb262021-08-07 19:21:33 -050028diff --git a/units/meson.build b/units/meson.build
Andrew Geissler595f6302022-01-24 19:11:47 +000029index a9bf28f6d9..11d3644168 100644
Patrick Williams213cb262021-08-07 19:21:33 -050030--- a/units/meson.build
31+++ b/units/meson.build
Andrew Geissler595f6302022-01-24 19:11:47 +000032@@ -63,8 +63,7 @@ units = [
Brad Bishop1a4b7ee2018-12-16 17:11:34 -080033 ['poweroff.target', '',
Andrew Geissler635e0e42020-08-21 15:58:33 -050034 (with_runlevels ? 'runlevel0.target' : '')],
Brad Bishop1a4b7ee2018-12-16 17:11:34 -080035 ['printer.target', ''],
36- ['proc-sys-fs-binfmt_misc.automount', 'ENABLE_BINFMT',
37- 'sysinit.target.wants/'],
38+ ['proc-sys-fs-binfmt_misc.automount', 'ENABLE_BINFMT'],
39 ['proc-sys-fs-binfmt_misc.mount', 'ENABLE_BINFMT'],
40 ['reboot.target', '',
Andrew Geisslerd1e89492021-02-12 15:35:20 -060041 'ctrl-alt-del.target' + (with_runlevels ? ' runlevel6.target' : '')],
Andrew Geissler615f2f12022-07-15 14:00:58 -050042@@ -186,8 +185,7 @@ in_units = [
Andrew Geissler82c905d2020-04-13 13:39:40 -050043 ['rescue.service', ''],
Patrick Williams213cb262021-08-07 19:21:33 -050044 ['serial-getty@.service', ''],
Brad Bishop1a4b7ee2018-12-16 17:11:34 -080045 ['systemd-backlight@.service', 'ENABLE_BACKLIGHT'],
46- ['systemd-binfmt.service', 'ENABLE_BINFMT',
47- 'sysinit.target.wants/'],
48+ ['systemd-binfmt.service', 'ENABLE_BINFMT'],
Andrew Geissler595f6302022-01-24 19:11:47 +000049 ['systemd-bless-boot.service', 'HAVE_GNU_EFI HAVE_BLKID'],
Brad Bishop19323692019-04-05 15:28:33 -040050 ['systemd-boot-check-no-failures.service', ''],
Andrew Geissler82c905d2020-04-13 13:39:40 -050051 ['systemd-coredump@.service', 'ENABLE_COREDUMP'],
Patrick Williams213cb262021-08-07 19:21:33 -050052diff --git a/units/proc-sys-fs-binfmt_misc.automount b/units/proc-sys-fs-binfmt_misc.automount
53index 172c8757ab..f65d8930c6 100644
54--- a/units/proc-sys-fs-binfmt_misc.automount
55+++ b/units/proc-sys-fs-binfmt_misc.automount
56@@ -19,3 +19,6 @@ ConditionPathIsReadWrite=/proc/sys/
Brad Bishop1a4b7ee2018-12-16 17:11:34 -080057
58 [Automount]
59 Where=/proc/sys/fs/binfmt_misc
60+
61+[Install]
62+WantedBy=sysinit.target
Patrick Williams213cb262021-08-07 19:21:33 -050063diff --git a/units/systemd-binfmt.service.in b/units/systemd-binfmt.service.in
Andrew Geissler595f6302022-01-24 19:11:47 +000064index 96f595ad72..7c010bb224 100644
Patrick Williams213cb262021-08-07 19:21:33 -050065--- a/units/systemd-binfmt.service.in
66+++ b/units/systemd-binfmt.service.in
Andrew Geisslerd1e89492021-02-12 15:35:20 -060067@@ -14,6 +14,7 @@ Documentation=https://www.kernel.org/doc/html/latest/admin-guide/binfmt-misc.htm
Brad Bishop1a4b7ee2018-12-16 17:11:34 -080068 Documentation=https://www.freedesktop.org/wiki/Software/systemd/APIFileSystems
69 DefaultDependencies=no
70 Conflicts=shutdown.target
71+Wants=proc-sys-fs-binfmt_misc.automount
72 After=proc-sys-fs-binfmt_misc.automount
Andrew Geissler82c905d2020-04-13 13:39:40 -050073 After=proc-sys-fs-binfmt_misc.mount
Andrew Geissler595f6302022-01-24 19:11:47 +000074 After=local-fs.target
75@@ -31,3 +32,6 @@ RemainAfterExit=yes
Patrick Williams213cb262021-08-07 19:21:33 -050076 ExecStart={{ROOTLIBEXECDIR}}/systemd-binfmt
77 ExecStop={{ROOTLIBEXECDIR}}/systemd-binfmt --unregister
Brad Bishop1a4b7ee2018-12-16 17:11:34 -080078 TimeoutSec=90s
79+
80+[Install]
81+WantedBy=sysinit.target