blue-build/cli

dracut error on kernel replace

Closed this issue · 6 comments

I try to replace the default kernel in my image. I've set up adding new repos and launch of custom scripts using the 'script' module in my recipe.
If launch these commands

rpm-ostree cliwrap install-to-root / && \
rpm-ostree override remove kernel kernel-core kernel-modules kernel-modules-core kernel-modules-extra --install kernel-cachyos 

I get the next error in action logs:
error: rpm-ostree kernel-install wrapper: Running dracut: Invalid cross-device link (os error 18)

The pipeline does not fail, but if I try to boot from the built image it will stuck on boot screen.

Try to use rpm-ostree override replace method instead:

    rpm-ostree cliwrap install-to-root / && \
    rpm-ostree override replace --experimental --from repo=copr:copr.fedorainfracloud.org:bieszczaders:kernel-cachyos kernel kernel-core kernel-modules kernel-modules-core kernel-modules-extra

Take a note that with custom kernel, you loose Secure Boot support.

I use the same commands in 'startingpoint' based repository and it works fine.
I believe the error message Invalid cross-device link implies something is wrong in mounting or path mapping settings.

Mind posting a link to your repo so I can test it later?

Here is my repository based on new template: https://github.com/antuan1996/formile-cachyos-ublue
Build logs: link

So I think we may have a fix that we pushed to the main branch. You can try it out in your Github action by setting use_unstable_cli to true.

I confirm the problem is gone. Thank you very much!