Subject: [PATCH v5 00/10] Simplify bootloader data structures and procedures.

From: Herman Rimm <[email-masked]>
Date: Sat, 21 Sep 2024 12:23:13 +0200

Hi,

I squashed patch #10 into #9, and patch #14 from v2 of issue #73202 into
what is now patch #10, formerly #11/#12.  For patch #8, I replaced an if
with when, for patch #5 I replaced an if with a match, and for patch #2
I used more relevant copyright.

By the way, there seem to be two different commit message styles used by
Guix contributors.  I would never use more than 72 columns, and I would
write e.g. patch #11 without newlines between changed files, or
alignment indenation, like so:

  -Encapsulate <boot-parameters> to retain generation, system-path and epoch.
  +Encapsulate <boot-parameters> to retain generation, system-path, epoch.
  
  * gnu/system/boot.scm (<boot-alternative>): New record.
  -  (boot-alternative->menu-entry): New procedure.
  +(boot-alternative->menu-entry): New procedure.
  -
  * gnu/machine/ssh.scm (machine->boot-alternatives): Return a
  -  boot-alternative encapsulating previous return value.
  -  (with-roll-back, roll-back-managed-host): Get parameters from
  -  boot-alternatives.
  +boot-alternative encapsulating previous return value.
  +(with-roll-back, roll-back-managed-host): Get parameters from
  +boot-alternatives.

Is there a preferred style?

Also, should the indendation increase by one column, or by two columns
after a record constructor?

Cheers,
Herman

Felix Lechner (10):
  Fix bug where the extra menu entries for a bootloader were shown
    twice.
  Move <boot-parameters> record to a separate file.
  Rename seconds->string procedure to epoch->date-string.
  Move epoch->date-string to gnu/system/boot.scm and use it elsewhere.
  Offer a uniform decorated-boot-label and use it.
  Rename boot-parameters to boot-alternatives when appropriate.
  Rename two remote variables confusingly named 'generations'.
  Give a separate name to a commonly used expression.
  Split system->boot-parameters out of profile->boot-alternatives.
  Encapsulate <boot-parameters> to retain generation, system-path and
    epoch.

 gnu/local.mk              |   1 +
 gnu/machine/ssh.scm       | 116 ++++++------
 gnu/system.scm            | 287 +----------------------------
 gnu/system/boot.scm       | 375 ++++++++++++++++++++++++++++++++++++++
 guix/scripts/system.scm   |  69 ++++---
 tests/boot-parameters.scm |   1 +
 6 files changed, 470 insertions(+), 379 deletions(-)
 create mode 100644 gnu/system/boot.scm

base-commit: 9d75215a59629ab224154ef6b843043289291f81
-- 
2.45.2