confext: add the systemd-confext.service file
authormaanyagoenka <maanyagoenka@microsoft.com>
Fri, 24 Feb 2023 08:33:15 +0000 (08:33 +0000)
committermaanyagoenka <maanyagoenka@microsoft.com>
Wed, 5 Apr 2023 21:50:04 +0000 (21:50 +0000)
units/meson.build
units/systemd-confext.service [new file with mode: 0644]

index 06d68c1d6bcf79d6da3a6cfebbba29be1cba7679..e6eb300661ec89cfdb5c9ecd2c599330d7c20bdb 100644 (file)
@@ -138,6 +138,7 @@ units = [
         ['systemd-reboot.service',              ''],
         ['systemd-rfkill.socket',               'ENABLE_RFKILL'],
         ['systemd-sysext.service',              'ENABLE_SYSEXT'],
+        ['systemd-confext.service',             'ENABLE_SYSEXT'],
         ['systemd-sysupdate.timer',             'ENABLE_SYSUPDATE'],
         ['systemd-sysupdate-reboot.timer',      'ENABLE_SYSUPDATE'],
         ['systemd-sysusers.service',            'ENABLE_SYSUSERS',
diff --git a/units/systemd-confext.service b/units/systemd-confext.service
new file mode 100644 (file)
index 0000000..b9d0b21
--- /dev/null
@@ -0,0 +1,33 @@
+# SPDX-License-Identifier: LGPL-2.1-or-later
+#
+# This file is part of systemd.
+#
+# systemd is free software; you can redistribute it and/or modify it
+# under the terms of the GNU Lesser General Public License as published by
+# the Free Software Foundation; either version 2.1 of the License, or
+# (at your option) any later version.
+
+[Unit]
+Description=Merge System Configuration Images into /etc/
+Documentation=man:systemd-confext.service(8)
+
+ConditionCapability=CAP_SYS_ADMIN
+ConditionDirectoryNotEmpty=|/run/confexts
+ConditionDirectoryNotEmpty=|/var/lib/confexts
+ConditionDirectoryNotEmpty=|/usr/local/lib/confexts
+ConditionDirectoryNotEmpty=|/usr/lib/confexts
+
+DefaultDependencies=no
+After=local-fs.target
+Before=sysinit.target systemd-tmpfiles-setup.service
+Conflicts=shutdown.target initrd-switch-root.target
+Before=shutdown.target initrd-switch-root.target
+
+[Service]
+Type=oneshot
+RemainAfterExit=yes
+ExecStart=systemd-confext merge
+ExecStop=systemd-confext unmerge
+
+[Install]
+WantedBy=sysinit.target