Changed this subject to match the other one I changed, so if I'm doing it wrong at least I'm consistent! On Fri, Oct 7, 2016 at 9:22 AM, Kevin Fenzi <kevin@xxxxxxxxx> wrote: > On Fri, 7 Oct 2016 00:18:21 -0400 > Eric Griffith <egriffith92@xxxxxxxxx> wrote: > >> I'm just thinking out loud here, but, given that rpm-ostree does not >> use grubby, and we do have the Bootloader Spec, and no other distro >> uses grubby, would it be prudent to take a really hard look at >> whether grubby is still a path we want to walk? > > Well, the bootloader spec has a lot of things missing that we > expect/want to support. Like multibooting, BIOS boot chainloading > booting, etc. > > Matthew Garrett started working on proposed changes to the spec: > https://www.freedesktop.org/wiki/MatthewGarrett/BootLoaderSpec/ > but the owners of the spec didn't seem to interested in those cases and > Matthew went on to other work. In effect, rpm-ostree uses the newer spec configuration format for a narrowed use case. So there's the original spec, the mjg59 variant of the spec, the rpm-ostree variant of mjg59's spec, and the Fedora GRUB blscfg variant, all of which are very similar but mutually incompatible in one way or another. Since Fedora does its own thing in this area anyway, I don't see it as a problem to continue on that path. The way this works with rpm-ostree now, it creates snippets only for its own installation, and then runs grub2-mkconfig. A new /etc/grub.d/15_ostree [1] reads those snippets, reformats their content to GRUB format and inserts that into the new grub.cfg. So everything else grub2-mkconfig is set to do like other Linux and Windows discovery, still happens. That doesn't really need to be in the Bootloader Spec, it's sort of a can of worms anyway. My recommendation is fork a 3rd written spec based on rpm-ostree's real world implementation; modify the spec to add things *that are useful to Fedora that also come with people willing to do the work to implement it*, whether from the prior two specs or just plain good ideas; and then fix blscfg.mod and rpm-ostree to match the spec. In particular I'd like to see blscfg.mod do an in-memory merge of grub.cfg and the rpm-ostree created boot configuration snippet files, rather than stomping on the grub.cfg with grub2-mkconfig everytime. This gets back to the original idea behind grubby and bootloader spec to stop stomping on bootloader files. And maybe we end up with something that isn't like watching Rejected 11 times in a row [2] It's probably a good idea to run it all by the syslinux and uboot folks too in case they want to support the drop in scripts format at least. > So, I think we would need to get buyin to get our changes into the spec > and get everyone to agree on it before we would want to move to it. The original spec is unworkable. And attempts to expand the upstream spec for real world use cases needed in Fedora haven't gone anywhere. It exchanges reduced complexity in the bootloader, by increasing it in the installer and increasing wasted space on the drive. I'd try to help make it salvageable but I think it's pointless. Make a Fedora specific version and if people like it they can adopt it. [1] https://github.com/ostreedev/ostree/tree/master/src/boot/grub2 [2] https://www.youtube.com/watch?v=MuOvqeABHvQ https://en.wikipedia.org/wiki/Rejected -- Chris Murphy _______________________________________________ devel mailing list -- devel@xxxxxxxxxxxxxxxxxxxxxxx To unsubscribe send an email to devel-leave@xxxxxxxxxxxxxxxxxxxxxxx