Subject: Re: [bug#41011] [PATCH] gnu: grub: Support for network boot via tftp/nfs.

From: Danny Milosavljevic <[email-masked]>
Date: Sun, 24 May 2020 15:58:50 +0200

> > But actually the bootloader-name field in /var/guix/profiles/system/parameters can't tell either, as it must be an older bootloader than the brand new one.  

Yes, but as the comment in the source says, the goal is to be able to boot at all, not be perfect.

So basically we could assume that if a previous system generation has used a bootloader [name] (and we can still apparently run guix commands) then that bootloader actually could boot that system, and presumably can boot it again if we installed it now.

Might make sense to use the newest generation possible for that.  (I think even if you used the boot menu or guix system switch-generation, the newest generation would still be present, just not current; so if that used the bootloader name of the newest generation that exists we might be safe)

All this complication is just because we don't have the file name of the os configuration (/etc/config.scm) in guix system delete-generations.  What about us just requiring it from the user and then installing the bootloader&config that is specified there?  That would be a lot less magical--it basically would do the same that guix system reconfigure does now, then.

(What about guix system switch-generation?  What does it do regarding bootloader installation? *mumbles* *checks*  Aha, it also only installs the bootloader configuration)

guix/scripts/system.scm says:

>         (bootloader (lookup-bootloader-by-name (system-bootloader-name)))

What is that (system-bootloader-name) magical parameterless call?  Which generation does that use?  *shakes head*

Our source code there totally could use some more comments...