Subject: bug#53210: installer: referring to N-1 guix is problematic.

From: Ludovic Courtès <[email-masked]>
Date: Tue, 09 Aug 2022 15:26:12 +0200

Hi Josselin & all,

I ended up pushing the following patches:

  fdafd40432 maint: Use a pretty version string in ISO and VM images.
  95a03aa5c5 system: install: Always use 'current-guix'.
  57f1892d36 gnu: guix: Default 'current-guix' is built using the current channels.
  64a070717c channels: Add 'repository->guix-channel'.
  cf60a0a906 build-system/channel: Accept a channel or instance as the source.
  5bce4c8242 build-system: Add 'channel-build-system'.

The basics are similar to what you had posted.  It adds a useful default
for ‘current-guix’: a package built from the ‘guix’ channel as returned
by ‘guix describe’.  In turn, ‘%installation-os’ in (gnu system install)
is changed to use (current-guix) instead of the ‘guix’ package, meaning
that:

  guix system image gnu/system/install.scm

and:

  ./pre-inst-env guix system image gnu/system/install.scm

both produce an image that contains the current Guix.

That allows us to remove the second ‘update-guix-package.scm’ + ‘git
commit’ invocation in ‘make release’, which should make the whole
process faster.

Note that the default for installed systems remains the ‘guix’ package,
not (current-guix).  The main reason is that the “Computing derivation”
step when using (current-guix) is too high to do that by default.  We
could mitigate that by caching the result of that step more
systematically, but I think that can come later.

Let me know if you have comments!

Thanks,
Ludo’.