grub, grubby, btrfs, was: PSA: Do not run 'dnf update' inside GNOME, KDE ...

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



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




[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Index of Archives]     [Fedora Announce]     [Fedora Kernel]     [Fedora Testing]     [Fedora Formulas]     [Fedora PHP Devel]     [Kernel Development]     [Fedora Legacy]     [Fedora Maintainers]     [Fedora Desktop]     [PAM]     [Red Hat Development]     [Gimp]     [Yosemite News]
  Powered by Linux