diff options
Diffstat (limited to 'units')
-rw-r--r-- | units/meson.build | 1 | ||||
-rw-r--r-- | units/systemd-confext.service | 34 | ||||
-rw-r--r-- | units/systemd-sysext.service | 3 |
3 files changed, 37 insertions, 1 deletions
diff --git a/units/meson.build b/units/meson.build index 06d68c1d6b..e6eb300661 100644 --- a/units/meson.build +++ b/units/meson.build @@ -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 index 0000000000..3b46ecae08 --- /dev/null +++ b/units/systemd-confext.service @@ -0,0 +1,34 @@ +# 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 refresh +ExecReload=systemd-confext refresh +ExecStop=systemd-confext unmerge + +[Install] +WantedBy=sysinit.target diff --git a/units/systemd-sysext.service b/units/systemd-sysext.service index 5999d38d35..5c11eba7c9 100644 --- a/units/systemd-sysext.service +++ b/units/systemd-sysext.service @@ -26,7 +26,8 @@ Before=shutdown.target initrd-switch-root.target [Service] Type=oneshot RemainAfterExit=yes -ExecStart=systemd-sysext merge +ExecStart=systemd-sysext refresh +ExecReload=systemd-sysext refresh ExecStop=systemd-sysext unmerge [Install] |