Skip to content

Add systemd-sysupdate

This change enables systemd-sysupdate.

I built the package with sysupdate=true in debian/rules, and debdiff reports the following changes:

[The following lists of changes regard files as different if they have
different names, permissions or owners.]

Files in second .deb but not in first
-------------------------------------
-rw-r--r--  root/root   /lib/systemd/system/systemd-sysupdate-reboot.service
-rw-r--r--  root/root   /lib/systemd/system/systemd-sysupdate-reboot.timer
-rw-r--r--  root/root   /lib/systemd/system/systemd-sysupdate.service
-rw-r--r--  root/root   /lib/systemd/system/systemd-sysupdate.timer
-rw-r--r--  root/root   /usr/share/man/man5/sysupdate.d.5.gz
-rw-r--r--  root/root   /usr/share/man/man8/systemd-sysupdate.8.gz
-rwxr-xr-x  root/root   /lib/systemd/systemd-sysupdate
lrwxrwxrwx  root/root   /usr/share/man/man8/systemd-sysupdate-reboot.service.8.gz -> systemd-sysupdate.8.gz
lrwxrwxrwx  root/root   /usr/share/man/man8/systemd-sysupdate-reboot.timer.8.gz -> systemd-sysupdate.8.gz
lrwxrwxrwx  root/root   /usr/share/man/man8/systemd-sysupdate.service.8.gz -> systemd-sysupdate.8.gz
lrwxrwxrwx  root/root   /usr/share/man/man8/systemd-sysupdate.timer.8.gz -> systemd-sysupdate.8.gz

Control files: lines which differ (wdiff format)
------------------------------------------------
Installed-Size: [-10229-] {+10369+}

Which looks like what I expected. Next, I installed the package in testing (trixie) and investigated the status of timers and services:

> systemctl status systemd-sysupdate.service systemd-sysupdate-reboot.service systemd-sysupdate.timer systemd-sysupdate-reboot.timer

○ systemd-sysupdate.service - Automatic System Update
     Loaded: loaded (/lib/systemd/system/systemd-sysupdate.service; indirect; preset: enabled)
     Active: inactive (dead)
       Docs: man:systemd-sysupdate.service(8)

○ systemd-sysupdate-reboot.service - Reboot Automatically After System Update
     Loaded: loaded (/lib/systemd/system/systemd-sysupdate-reboot.service; indirect; preset: enabled)
     Active: inactive (dead)
       Docs: man:systemd-sysupdate-reboot.service(8)

○ systemd-sysupdate.timer - Automatic System Update
     Loaded: loaded (/lib/systemd/system/systemd-sysupdate.timer; disabled; preset: enabled)
     Active: inactive (dead)
    Trigger: n/a
   Triggers: ● systemd-sysupdate.service
       Docs: man:systemd-sysupdate.service(8)

○ systemd-sysupdate-reboot.timer - Reboot Automatically After System Update
     Loaded: loaded (/lib/systemd/system/systemd-sysupdate-reboot.timer; disabled; preset: enabled)
     Active: inactive (dead)
    Trigger: n/a
   Triggers: ● systemd-sysupdate-reboot.service
       Docs: man:systemd-sysupdate-reboot.service(8)

The services are triggered by timers, and all the timers are disabled - which what we want. Only when systemd-sysupdate has been configured with config files in /etc/sysupdate.d it makes sense for the administrator to enable them.

Finally, I tested the binary /lib/systemd/systemd-sysupdate and it works as expected. I am able to run my updates without problems. I also made a successful update test by triggering the service by enabling the timer.

Can't find any obvious negative side effects after installing the changes. I studied the journal and no services are failing.

Merge request reports

Loading