system: install: Always use 'current-guix'.

Fixes <https://issues.guix.gnu.org/53210>.
Reported by Mathieu Othacehe <othacehe@gnu.org>.

* gnu/system/install.scm (%installation-services): Set 'guix' to
use (current-guix) in 'guix-configuration'.
* gnu/system/examples/vm-image.tmpl: Likewise.
* gnu/tests/install.scm (operating-system-with-current-guix): Remove.
(run-install, installation-os-for-gui-tests): Remove its uses.
* Makefile.am (release): Remove intermediate use of
'update-guix-package.scm' and subsequent 'git commit' invocation.
This commit is contained in:
Ludovic Courtès 2022-08-09 10:46:07 +02:00
parent 57f1892d36
commit 95a03aa5c5
No known key found for this signature in database
GPG key ID: 090B11993D9AEBB5
4 changed files with 23 additions and 26 deletions

View file

@ -977,14 +977,9 @@ release: dist-with-updated-version all
mv "guix-binary.$$system.tar.xz" \ mv "guix-binary.$$system.tar.xz" \
"$(releasedir)/guix-binary-$(PACKAGE_VERSION).$$system.tar.xz" ; \ "$(releasedir)/guix-binary-$(PACKAGE_VERSION).$$system.tar.xz" ; \
done done
# Bump the Guix package version and build it (again). # Build 'current-guix' to speed things up for the next step.
GUIX_ALLOW_ME_TO_USE_PRIVATE_COMMIT=yes \ $(top_builddir)/pre-inst-env guix build \
$(top_builddir)/pre-inst-env "$(GUILE)" \ -e '((@ (gnu packages package-management) current-guix))' \
$(top_srcdir)/build-aux/update-guix-package.scm \
"`git rev-parse HEAD`"
git add $(top_srcdir)/gnu/packages/package-management.scm
git commit -m "gnu: guix: Update to `git rev-parse HEAD | cut -c1-7`."
$(top_builddir)/pre-inst-env guix build guix \
$(call system_flags,$(GUIX_SYSTEM_SUPPORTED_SYSTEMS)) \ $(call system_flags,$(GUIX_SYSTEM_SUPPORTED_SYSTEMS)) \
-v1 --no-grafts --fallback -v1 --no-grafts --fallback
# Generate the ISO installation images. # Generate the ISO installation images.

View file

@ -123,7 +123,14 @@ root ALL=(ALL) ALL
(login-service-type config => (login-service-type config =>
(login-configuration (login-configuration
(inherit config) (inherit config)
(motd vm-image-motd))))))) (motd vm-image-motd)))
;; Install and run the current Guix rather than an older
;; snapshot.
(guix-service-type config =>
(guix-configuration
(inherit config)
(guix (current-guix))))))))
;; Allow resolution of '.local' host names with mDNS. ;; Allow resolution of '.local' host names with mDNS.
(name-service-switch %mdns-host-lookup-nss)) (name-service-switch %mdns-host-lookup-nss))

View file

@ -357,11 +357,17 @@ (define bare-bones-os
;; network. It can be faster than fetching from remote servers. ;; network. It can be faster than fetching from remote servers.
(service avahi-service-type) (service avahi-service-type)
;; The build daemon. Register the default substitute server key(s) ;; The build daemon.
;; as trusted to allow the installation process to use substitutes by
;; default.
(service guix-service-type (service guix-service-type
(guix-configuration (authorize-key? #t))) (guix-configuration
;; Register the default substitute server key(s) as
;; trusted to allow the installation process to use
;; substitutes by default.
(authorize-key? #t)
;; Install and run the current Guix rather than an older
;; snapshot.
(guix (current-guix))))
;; Start udev so that useful device nodes are available. ;; Start udev so that useful device nodes are available.
;; Use device-mapper rules for cryptsetup & co; enable the CRDA for ;; Use device-mapper rules for cryptsetup & co; enable the CRDA for

View file

@ -152,15 +152,6 @@ (define-os-with-source (%minimal-extlinux-os
(guix combinators))))) (guix combinators)))))
%base-services)))) %base-services))))
(define (operating-system-with-current-guix os)
"Return a variant of OS that uses the current Guix."
(operating-system
(inherit os)
(services (modify-services (operating-system-user-services os)
(guix-service-type config =>
(guix-configuration
(inherit config)
(guix (current-guix))))))))
(define MiB (expt 2 20)) (define MiB (expt 2 20))
@ -232,8 +223,7 @@ (define* (run-install target-os target-os-source
;; Since the image has no network access, use the ;; Since the image has no network access, use the
;; current Guix so the store items we need are in ;; current Guix so the store items we need are in
;; the image and add packages provided. ;; the image and add packages provided.
(inherit (operating-system-with-current-guix (inherit installation-os)
installation-os))
(kernel-arguments '("console=ttyS0"))) (kernel-arguments '("console=ttyS0")))
#:imported-modules '((gnu services herd) #:imported-modules '((gnu services herd)
(gnu installer tests) (gnu installer tests)
@ -1865,8 +1855,7 @@ (define installation-os-for-gui-tests
(operating-system (operating-system
(inherit (operating-system-with-console-syslog (inherit (operating-system-with-console-syslog
(operating-system-add-packages (operating-system-add-packages
(operating-system-with-current-guix installation-os
installation-os)
%extra-packages))) %extra-packages)))
(kernel-arguments '("console=ttyS0"))) (kernel-arguments '("console=ttyS0")))
#:imported-modules '((gnu services herd) #:imported-modules '((gnu services herd)