Dear Maintainer, update-miniramfs calls cpio, but does not declare a dependency on it. cpio was pulled in via the initramfs-tools, but initramfs-tools 0.151 changed its cpio dependency to "3cpio | cpio". Therefore cpio might not be pulled in any more. So please add an explicit dependency on cpio and/or support 3cpio as alternative.
Hi, Thanks for the heads up. It seems like this won't be as simple as adding a dependency on cpio. Newer versions of initramfs-tools can also compress only part of the CPIO archive, making all of the existing decompression logic in miniramfs fail (it produces only a /usr directory). The only workaround I've found for that is using the "unmkinitramfs" tool provided by initramfs-tools-bin directly. This works, but only when used with 3cpio, because it will try and fail to use busybox cpio otherwise. That then makes porting miniramfs to 3cpio make sense, which is a whole new yak to shave. In short, this is going to take quite a bit of time. Interestingly, none of this seems to be a problem rebuilding the initramfs for an older (6.13) kernel, only 6.18.
But that happened before the trixie release, so miniramfs also needs to be fixed in stable somehow. I could also make unmkinitramfs work with Busybox cpio. Currently it fails because of these unsupported options: Perhaps that kernel didn't have compressed modules for some reason? That is what triggers creation of the uncompressed cpio archive. Ben.
[...] I created <https://salsa.debian.org/kernel-team/initramfs-tools/-/merge_requests/195> to do this. Ben.
Thanks for this! I've just given it a go on-device and it works nicely. Now just need to work out why I get a kernel panic on boot after handing off to initramfs-tools's init, though that's quite possibly something I've edited while debugging.
This issue is now solved, of course it was an errant `set -e` that I added to debug miniramfs' init script. I've got everything ready to go in https://salsa.debian.org/Mobian-team/miniramfs/-/merge_requests/17. I'll release it after the next upload of initramfs-tools so I can version the new dependency. Thanks.