From 7fafef2084f23fb6b17c284d0adfc83d8d6adbdb Mon Sep 17 00:00:00 2001 From: Kai Lueke Date: Thu, 10 Mar 2022 15:13:10 +0100 Subject: [PATCH] set_lsb_release: define Flatcar sysext level MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Sysext images have a compatibility matching mechanism that searches for the matching OS version or custom sysext level setting. On Flatcar there is just the OS version set in /etc/os-release until now which means that sysext images can't easily be used together with autoupdates that change the OS version. Define a sysext level for Flatcar so that users can refer to it instead of the OS version when they have images that don't rely on a particular Flatcar version. Here an example of the now possible metadata: /etc/extensions/NAME/usr/lib64/extension-release.d/extension-release.NAME ID=flatcar SYSEXT_LEVEL=1.0 and a symlink /etc/extensions/NAME/usr/lib → /etc/extensions/NAME/usr/lib64 to work around the problem that using lib/ as path destroys Flatcar's lib → lib64 symlink. In the future the matching logic hopefully gets more flexible because now it is just a string comparison. Also, the architecture is not matched either for now - we should work with upstream to improve this. Closes: https://github.com/flatcar-linux/Flatcar/issues/643 --- build_library/set_lsb_release | 1 + changelog/changes/2022-03-10-sysext-level.md | 1 + 2 files changed, 2 insertions(+) create mode 100644 changelog/changes/2022-03-10-sysext-level.md diff --git a/build_library/set_lsb_release b/build_library/set_lsb_release index 4ea9c6e2ea..17a85184d4 100755 --- a/build_library/set_lsb_release +++ b/build_library/set_lsb_release @@ -52,6 +52,7 @@ ID_LIKE=$OS_ID_LIKE VERSION=$FLATCAR_VERSION VERSION_ID=$FLATCAR_VERSION_ID BUILD_ID=$FLATCAR_BUILD_ID +SYSEXT_LEVEL=1.0 PRETTY_NAME="$OS_PRETTY_NAME" ANSI_COLOR="38;5;75" HOME_URL="https://flatcar-linux.org/" diff --git a/changelog/changes/2022-03-10-sysext-level.md b/changelog/changes/2022-03-10-sysext-level.md new file mode 100644 index 0000000000..77f4e3d534 --- /dev/null +++ b/changelog/changes/2022-03-10-sysext-level.md @@ -0,0 +1 @@ +- Defined a systemd-sysext level that sysext images can match for instead of the OS version when they don't have a strong coupling, meaning the only metadata required is `SYSEXT_LEVEL=1.0` and `ID=flatcar` ([#643](https://github.com/flatcar-linux/Flatcar/issues/643))