Now that we're building using unified core and that Anaconda has support for bootupd, we can enable bootupd in Silverblue & friends.
See: https://fedoraproject.org/wiki/Changes/FedoraSilverblueBootupd See: https://fedoraproject.org/wiki/Changes/FedoraSilverblueUnifiedCore
Previous attempts: - https://pagure.io/workstation-ostree-config/pull-request/288 - https://pagure.io/workstation-ostree-config/pull-request/293 - https://pagure.io/workstation-ostree-config/pull-request/307 - https://pagure.io/workstation-ostree-config/pull-request/313 (revert) - https://pagure.io/workstation-ostree-config/pull-request/330 - https://pagure.io/workstation-ostree-config/pull-request/402 (revert) - https://pagure.io/workstation-ostree-config/pull-request/403 - https://pagure.io/workstation-ostree-config/pull-request/452 (revert)
This reverts commit 148b6d236ce2d583083886944d415f481844c46b.
See https://github.com/fedora-silverblue/issue-tracker/issues/530
Build succeeded. https://fedora.softwarefactory-project.io/zuul/buildset/30d9715477b441e4900999fce1fd5fc5
No, I don't think your diagnosis is right.
rebased onto 1196fb43cf87f860009f0e7b26eae98586deeebd
Build succeeded. https://fedora.softwarefactory-project.io/zuul/buildset/70bba6754d39432d8e62be632b7d70f8
Waiting for https://bodhi.fedoraproject.org/updates/FEDORA-2024-2bea026091 to land in rawhide.
See: https://github.com/fedora-silverblue/issue-tracker/issues/530
rebased onto e165a553292c30967f9aadc39c27cd18e310c187
Build succeeded. https://fedora.softwarefactory-project.io/zuul/buildset/70d510067dd443e89813bef2927eb4a7
I can hack openQA to run a test on that update with this change applied, probably...
https://openqa.stg.fedoraproject.org/tests/3531903 and dependencies should do that, if I got it right. I'll keep an eye on it.
So, results from this: the build and install tests pass. However, the rebase test fails. Rebasing down to the current Rawhide ostree works, but then doing rpm-ostree rollback to 'rollback' to the newer ostree built by the test fails, reporting that grub2-mkconfig failed - see https://openqa.stg.fedoraproject.org/tests/3531906#step/rpmostree_rebase/18 .
rpm-ostree rollback
grub2-mkconfig
Not sure if that's considered bad enough to block this, or if it's fixable.
Yes, that is to be expected as systems installed using the bootupd mode in Anaconda won't have the config needed. This is what I fixed in https://github.com/ostreedev/ostree/pull/3150.
Older installations updating should not have this issue as the file would have been placed there by Anaconda.
New installations won't be able to rollback to previous ones but that's not something we support.
OK. I may have to fiddle with the openQA tests a bit to deal with that, but that's my problem, not yours. :) I see no reason not to go ahead and finally merge this now, if you don't!
Let's do it!
Pull-Request has been merged by siosm
So, argh. I think this actually broke stuff. But I only just put the pieces together. :(
In openQA update tests (which we used to validate this) we only test BIOS boot of the installed system. We don't test UEFI boot. That's an oversight I should probably fix.
It looks like UEFI boot of an installed Silverblue has been failing in openQA compose tests (where we do test UEFI boot) ever since this merged - note how the last pass is Fedora-Rawhide-20240130.n.1 and the first fail is Fedora-Rawhide-20240207.n.0 .
I noticed this a couple of times but never got to looking into it till now. It also seems to be affecting IoT, which also uses bootupd.
I think what's happening is that bootupd does not write a "Fedora" entry to the UEFI boot manager list - that's a screenshot from an IoT install test hacked up to show the output of efibootmgr after install is complete - so boot will only work via the EFI fallback path, which is meant to be an emergency backup if something goes wrong, not the intended path. In openQA, it doesn't work because the firmware is not configured to try booting the system from hard disk via the fallback path; the system will only boot if the correct EFI boot manager entry is created.
efibootmgr
Thanks for the investigation Adam. PR in https://github.com/rhinstaller/anaconda/pull/5508
Now that we're building using unified core and that Anaconda has support
for bootupd, we can enable bootupd in Silverblue & friends.
See: https://fedoraproject.org/wiki/Changes/FedoraSilverblueBootupd
See: https://fedoraproject.org/wiki/Changes/FedoraSilverblueUnifiedCore
Previous attempts:
- https://pagure.io/workstation-ostree-config/pull-request/288
- https://pagure.io/workstation-ostree-config/pull-request/293
- https://pagure.io/workstation-ostree-config/pull-request/307
- https://pagure.io/workstation-ostree-config/pull-request/313 (revert)
- https://pagure.io/workstation-ostree-config/pull-request/330
- https://pagure.io/workstation-ostree-config/pull-request/402 (revert)
- https://pagure.io/workstation-ostree-config/pull-request/403
- https://pagure.io/workstation-ostree-config/pull-request/452 (revert)
This reverts commit 148b6d236ce2d583083886944d415f481844c46b.