From 35530fcf9432d9807a1bc564a24c5ecad6a77b7a Mon Sep 17 00:00:00 2001 From: Luca Boccassi Date: Wed, 26 Aug 2026 15:14:11 +0100 Subject: [PATCH] sysupdate: move back to libexecdir to mark as experimental Fixes https://github.com/systemd/systemd/issues/43498 --- src/sysupdate/meson.build | 9 +-------- test/units/TEST-72-SYSUPDATE.sh | 2 +- units/meson.build | 8 ++++---- ....service => systemd-sysupdate-auto-enable.service.in} | 4 ++-- ...eboot.service => systemd-sysupdate-reboot.service.in} | 2 +- ...pdate.service => systemd-sysupdate-update.service.in} | 2 +- ...-sysupdate@.service => systemd-sysupdate@.service.in} | 2 +- 7 files changed, 11 insertions(+), 18 deletions(-) rename units/{systemd-sysupdate-auto-enable.service => systemd-sysupdate-auto-enable.service.in} (77%) rename units/{systemd-sysupdate-reboot.service => systemd-sysupdate-reboot.service.in} (91%) rename units/{systemd-sysupdate-update.service => systemd-sysupdate-update.service.in} (93%) rename units/{systemd-sysupdate@.service => systemd-sysupdate@.service.in} (95%) diff --git a/src/sysupdate/meson.build b/src/sysupdate/meson.build index c4f569096f..1d7cc3871a 100644 --- a/src/sysupdate/meson.build +++ b/src/sysupdate/meson.build @@ -24,7 +24,7 @@ systemd_updatectl_sources = files( ) executables += [ - executable_template + { + libexec_template + { 'name' : 'systemd-sysupdate', 'public' : true, 'conditions' : ['ENABLE_SYSUPDATE'], @@ -63,10 +63,3 @@ if conf.get('ENABLE_SYSUPDATED') == 1 install_data('org.freedesktop.sysupdate1.policy', install_dir : polkitpolicydir) endif - -if conf.get('ENABLE_SYSUPDATE') == 1 - # symlink for backwards compatibility after rename - install_symlink('systemd-sysupdate', - pointing_to : libexecdir_to_bin / 'systemd-sysupdate', - install_dir : libexecdir) -endif diff --git a/test/units/TEST-72-SYSUPDATE.sh b/test/units/TEST-72-SYSUPDATE.sh index 5224071ddb..b5fd26f3a7 100755 --- a/test/units/TEST-72-SYSUPDATE.sh +++ b/test/units/TEST-72-SYSUPDATE.sh @@ -5,7 +5,7 @@ set -eux set -o pipefail -SYSUPDATE=/usr/bin/systemd-sysupdate +SYSUPDATE=/usr/lib/systemd/systemd-sysupdate SYSUPDATED=/lib/systemd/systemd-sysupdated UPDATECTL="" VARLINK_SOCKET=/run/systemd/io.systemd.SysUpdate diff --git a/units/meson.build b/units/meson.build index 6e0c474830..a02981817f 100644 --- a/units/meson.build +++ b/units/meson.build @@ -881,11 +881,11 @@ units = [ 'conditions' : ['ENABLE_SYSINSTALL'], }, { - 'file' : 'systemd-sysupdate-auto-enable.service', + 'file' : 'systemd-sysupdate-auto-enable.service.in', 'conditions' : ['ENABLE_SYSUPDATE'], }, { - 'file' : 'systemd-sysupdate-reboot.service', + 'file' : 'systemd-sysupdate-reboot.service.in', 'conditions' : ['ENABLE_SYSUPDATE'], }, { @@ -893,12 +893,12 @@ units = [ 'conditions' : ['ENABLE_SYSUPDATE'], }, { - 'file' : 'systemd-sysupdate-update.service', + 'file' : 'systemd-sysupdate-update.service.in', 'conditions' : ['ENABLE_SYSUPDATE'], 'symlinks' : ['systemd-sysupdate.service'], # compatibility after rename }, { - 'file' : 'systemd-sysupdate@.service', + 'file' : 'systemd-sysupdate@.service.in', 'conditions' : ['ENABLE_SYSUPDATE'], }, { diff --git a/units/systemd-sysupdate-auto-enable.service b/units/systemd-sysupdate-auto-enable.service.in similarity index 77% rename from units/systemd-sysupdate-auto-enable.service rename to units/systemd-sysupdate-auto-enable.service.in index 2fee785f87..34cf0cae35 100644 --- a/units/systemd-sysupdate-auto-enable.service +++ b/units/systemd-sysupdate-auto-enable.service.in @@ -14,8 +14,8 @@ Before=systemd-sysupdate-update.service [Service] Type=oneshot -ExecStart=systemd-sysupdate enable-component --component-suggested -ExecStart=systemd-sysupdate enable-feature --component-all --feature-suggested +ExecStart={{LIBEXECDIR}}/systemd-sysupdate enable-component --component-suggested +ExecStart={{LIBEXECDIR}}/systemd-sysupdate enable-feature --component-all --feature-suggested [Install] WantedBy=systemd-sysupdate-update.service diff --git a/units/systemd-sysupdate-reboot.service b/units/systemd-sysupdate-reboot.service.in similarity index 91% rename from units/systemd-sysupdate-reboot.service rename to units/systemd-sysupdate-reboot.service.in index 6750fc431e..5d4011a213 100644 --- a/units/systemd-sysupdate-reboot.service +++ b/units/systemd-sysupdate-reboot.service.in @@ -14,7 +14,7 @@ ConditionVirtualization=!container [Service] Type=oneshot -ExecStart=systemd-sysupdate reboot +ExecStart={{LIBEXECDIR}}/systemd-sysupdate reboot [Install] Also=systemd-sysupdate-reboot.timer diff --git a/units/systemd-sysupdate-update.service b/units/systemd-sysupdate-update.service.in similarity index 93% rename from units/systemd-sysupdate-update.service rename to units/systemd-sysupdate-update.service.in index 839c7fb06d..894d17034c 100644 --- a/units/systemd-sysupdate-update.service +++ b/units/systemd-sysupdate-update.service.in @@ -17,7 +17,7 @@ ConditionVirtualization=!container [Service] Type=simple NotifyAccess=main -ExecStart=systemd-sysupdate update --component-all --cleanup=yes +ExecStart={{LIBEXECDIR}}/systemd-sysupdate update --component-all --cleanup=yes # Keep this sandboxing synchronised with systemd-sysupdate@.service CapabilityBoundingSet=CAP_CHOWN CAP_FOWNER CAP_FSETID CAP_MKNOD CAP_SETFCAP CAP_SYS_ADMIN CAP_SETPCAP CAP_DAC_OVERRIDE CAP_LINUX_IMMUTABLE diff --git a/units/systemd-sysupdate@.service b/units/systemd-sysupdate@.service.in similarity index 95% rename from units/systemd-sysupdate@.service rename to units/systemd-sysupdate@.service.in index f8e86dd2c4..c54d469597 100644 --- a/units/systemd-sysupdate@.service +++ b/units/systemd-sysupdate@.service.in @@ -15,7 +15,7 @@ Conflicts=shutdown.target Before=shutdown.target [Service] -ExecStart=-systemd-sysupdate +ExecStart=-{{LIBEXECDIR}}/systemd-sysupdate # Keep this sandboxing synchronised with systemd-sysupdate-update.service CapabilityBoundingSet=CAP_CHOWN CAP_FOWNER CAP_FSETID CAP_MKNOD CAP_SETFCAP CAP_SYS_ADMIN CAP_SETPCAP CAP_DAC_OVERRIDE CAP_LINUX_IMMUTABLE