diff --git a/build_sysext b/build_sysext index cd059ee3add..32712877658 100755 --- a/build_sysext +++ b/build_sysext @@ -275,6 +275,10 @@ all_fields=( "ARCHITECTURE=${ARCH}" ) printf '%s\n' "${all_fields[@]}" >"${BUILD_DIR}/install-root/usr/lib/extension-release.d/extension-release.${SYSEXTNAME}" + +info "Removing opaque directory markers to always merge all contents" +find "${BUILD_DIR}/install-root" -xdev -type d -exec sh -c 'if [ "$(attr -R -q -g overlay.opaque {} 2>/dev/null)" = y ]; then attr -R -r overlay.opaque {}; fi' \; + mksquashfs "${BUILD_DIR}/install-root" "${BUILD_DIR}/${SYSEXTNAME}.raw" \ -noappend -comp "${FLAGS_compression}" ${FLAGS_mksquashfs_opts} rm -rf "${BUILD_DIR}"/{fs-root,install-root,workdir} diff --git a/changelog/bugfixes/2024-03-05-ensure-sysext-contents-merge.md b/changelog/bugfixes/2024-03-05-ensure-sysext-contents-merge.md new file mode 100644 index 00000000000..67fcd1caa61 --- /dev/null +++ b/changelog/bugfixes/2024-03-05-ensure-sysext-contents-merge.md @@ -0,0 +1 @@ +- Fixed that systemd-sysext images can extend directories where Flatcar extensions are also shipping files, e.g., that the sysext-bakery Kubernetes extension works when OEM extensions are present ([sysext-bakery#50](https://github.com/flatcar/sysext-bakery/issues/50))