Hello, Chris Marusich <cmmarus...@gmail.com> skribis:
> l...@gnu.org (Ludovic Courtès) writes: [...] >> It’s not possible to obtain past grub.cfg files, but that’s not a >> problem: we can always regenerate a new grub.cfg. > > I'm curious: is there a reason why /boot is not itself just another > symlink? It might be nice if instead of overwriting the grub.cfg file, > we could just flip a symlink when rolling back. /boot contains GRUB, and there’s nothing that runs before GRUB that would allow us to choose among several GRUBs. So we assume the latest GRUB always “works”, and we generate a grub.cfg with a menu list all the older generations, which is rather convenient from the UI viewpoint, I think. >> I think having basic delete-generations, switch-generations, and >> roll-back sub-commands would be definitely welcome. >> >> As a first step, switch-generations/roll-back commands could simply >> update the symlinks and regenerate grub.cfg. >> >> Milestone #2 would be running the previous system’s activation script, >> which installs /run/current-system and adjust the set of users and >> groups. >> >> Milestone #3 would be live service downgrade, as you describe. >> >> Thoughts? > > I think breaking it down like that makes a lot of sense. I'll give > milestone #1 a shot: make switch-generations/roll-back commands that > just update the symlinks and regenerate grub.cfg. Awesome. Thanks for starting this discussion! Ludo’.