diff options
author | Adrian Vovk <adrianvovk@gmail.com> | 2024-07-02 18:13:45 +0200 |
---|---|---|
committer | Adrian Vovk <adrianvovk@gmail.com> | 2024-08-22 22:00:45 +0200 |
commit | 57ada07e7aa2232eeedd75367ac55ef5bcf65f75 (patch) | |
tree | cde1dcdf38aff1062c250c50141bb0b713fe4cc0 /man/org.freedesktop.sysupdate1.xml | |
parent | sysupdate: Check that --instances-max is in bounds (diff) | |
download | systemd-57ada07e7aa2232eeedd75367ac55ef5bcf65f75.tar.xz systemd-57ada07e7aa2232eeedd75367ac55ef5bcf65f75.zip |
sysupdate: Track incompletely-installed versions
When enumerating what versions exist for a given target, sysupdate would
completely throw out any version that's incomplete (where some of the
transfers in the target have that version installed or available, and
other transfers do not).
If we're trying to find what versions we can offer for download, this is
great behavior. If the server side is advertising a partial update to
download, we shouldn't present it to the user.
On the other hand, if we're enumerating what versions we have currently
installed, this is a bad behavior. It makes sysupdate fragile. For
example, if a sysext introduces a new .conf file into
/usr/lib/sysupdate.d, suddenly the currently-installed OS stops being a
version that we've enumerated. Since it's not enumerated, it's not
protected, and so sysupdate will wipe the booted OS.
So if we're looking for installed versions, we now loosen the
restrictions and enumerate incomplete installations.
Partial fix for https://github.com/systemd/systemd/issues/33339
Diffstat (limited to 'man/org.freedesktop.sysupdate1.xml')
-rw-r--r-- | man/org.freedesktop.sysupdate1.xml | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/man/org.freedesktop.sysupdate1.xml b/man/org.freedesktop.sysupdate1.xml index 66c21fab3d..3acae3d701 100644 --- a/man/org.freedesktop.sysupdate1.xml +++ b/man/org.freedesktop.sysupdate1.xml @@ -223,6 +223,13 @@ node /org/freedesktop/sysupdate1/target/host { </varlistentry> <varlistentry> + <term><literal>incomplete</literal></term> + <listitem><para>A boolean indicating whether this version is incomplete, which means that it is + missing some file. Note that only installed incomplete versions will be offered by the service; + versions that are incomplete on the server-side are completely ignored.</para></listitem> + </varlistentry> + + <varlistentry> <term><literal>changelog_urls</literal></term> <listitem><para>A list of strings that contain user-presentable URLs to ChangeLogs associated with this version.</para></listitem> |