-
Notifications
You must be signed in to change notification settings - Fork 214
Description
Describe the bug
When producing a chunked image with build-chunked-oci, the initramfs should be treated as an "exclusive component" and placed in its own layer. However, it's instead lumped in with "rpmostree-unpackaged-content".
The impact of this is that image updates almost always have to download the initramfs because of an unrelated change in some unpackaged file, even though the initramfs itself rarely changes if built with dracut --reproducible. This significantly increases update sizes: the initramfs is often on the order of hundreds of MB, even compressed, and the layer it's placed into is often by far the largest layer.
Reproduction steps
- Rechunk a bootc image with build-chunked-oci.
- Use a tool like
skopeo inspectto look at the layer annotations. - Observe that the initramfs is lumped in with "rpmostree-unpackaged-content".
Expected behavior
The initramfs should be placed in its own exclusive layer.
Actual behavior
The initramfs is placed into a layer with miscellaneous other unpackaged files.
System details
rpm-ostree:
Version: '2025.12'
Git: b8547377b9891229a9712d551f83342ddfcb642d
Features:
- rust
- compose
- container
- fedora-integration
Additional information
This bug seems to be due to the initramfs incorrectly being treated as a package rather than a non-package component by build-chunked-oci. I have an open PR fixing this: #5535. I've tested it locally and it does look like it fixes this issue.