summaryrefslogtreecommitdiff
path: root/gnu/installer.scm
diff options
context:
space:
mode:
authorJanneke Nieuwenhuizen <janneke@gnu.org>2024-10-20 15:13:16 +0200
committerJan (janneke) Nieuwenhuizen <janneke@gnu.org>2024-11-11 07:28:35 +0100
commit687a2ccabc6f57fcd25110f587df90ed0cab2f05 (patch)
treea71dbeb96fc115b3abf796ba254842d98c0271e6 /gnu/installer.scm
parent9aeb8e3dee32254a19a68971f26e214c7b717e5b (diff)
installer: Add "Kernel" page to select the Hurd.
This adds a "Kernel" page to the installer with the option to (cross-) install the Hurd, if applicable (only available on x86 machines for now). * gnu/installer/newt.scm (kernel-page): New procedure. (newt-installer)[kernel-page]: New field. * gnu/installer/kernel.scm, gnu/installer/newt/kernel.scm: New files. * gnu/local.mk (INSTALLER_MODULES): Add them. * gnu/installer.scm (installer-steps): Use them to select kernel if applicable. * gnu/installer/newt/partition.scm (run-label-page): Default to "msdos" when instaling the Hurd. (run-fs-type-page): Add ext2 for the hurd. (run-partitioning-page-partition): Remove `entire-encrypted' option when installing the Hurd. * gnu/installer/services.scm (system-services->configuration): Cater for the Hurd with %base-services/hurd, and with %base-packages/hurd that must always be set. (%system-services): Change to procedure. When installing the the Hurd, do not recommend `ntp-service-type' and USE `openssh-sans-x' package for `openssh-service-type'. (system-service-none): New variable. * gnu/installer/newt/services.scm (run-network-management-page): Include it when installing the Hurd. (run-desktop-environments-cbt-page): When installing the Hurd, recommend to not select any desktop enviroment. Update users. * gnu/installer/parted.scm (efi-installation?): Return #f when installing for the Hurd. (create-ext2-file-system): New procedure. (user-fs-type-name, user-fs-type->mount-type, partition-filesystem-user-type, format-user-partitions): Support `ext2'. (<user-partition> partition->user-partition): Use `ext2' when installing the Hurd. (auto-partition!): Likewise. No swap partition when installing the Hurd. * gnu/installer/final.scm (install-system): Cater for cross installation of the Hurd. (bootloader-configuration): Use `grub-minimal-bootloader' when installing the Hurd. (user-partition-missing-modules): Cater for empty user-partitions. (initrd-configuration, user-partitions->configuration): Cater for the Hurd. * gnu/installer/steps.scm (format-configuration, configuration->file): Cater for the Hurd. * gnu/system/hurd.scm (%desktop-services/hurd): New variable. * gnu/installer/tests.scm (choose-kernel): New procedure. * gnu/tests/install.scm (gui-test-program): Use it. Change-Id: Ifafb27b8a2f933944c77223a27ec151757237e36
Diffstat (limited to 'gnu/installer.scm')
-rw-r--r--gnu/installer.scm14
1 files changed, 14 insertions, 0 deletions
diff --git a/gnu/installer.scm b/gnu/installer.scm
index 39a83c44557..31c0ff7ff40 100644
--- a/gnu/installer.scm
+++ b/gnu/installer.scm
@@ -308,6 +308,18 @@ selected keymap."
308 ((installer-user-page current-installer)))) 308 ((installer-user-page current-installer))))
309 (configuration-formatter users->configuration)) 309 (configuration-formatter users->configuration))
310 310
311 ;; Ask the user to select the kernel for the system,
312 ;; for x86 systems only.
313 (installer-step
314 (id 'kernel)
315 (description (G_ "Kernel"))
316 (compute (lambda _
317 (if (target-x86?)
318 ((installer-kernel-page current-installer))
319 '())))
320 (configuration-formatter (lambda (result)
321 (kernel->configuration result #$dry-run?))))
322
311 ;; Ask the user to choose one or many desktop environment(s). 323 ;; Ask the user to choose one or many desktop environment(s).
312 (installer-step 324 (installer-step
313 (id 'services) 325 (id 'services)
@@ -419,6 +431,7 @@ purposes."
419 (gnu installer dump) 431 (gnu installer dump)
420 (gnu installer final) 432 (gnu installer final)
421 (gnu installer hostname) 433 (gnu installer hostname)
434 (gnu installer kernel)
422 (gnu installer locale) 435 (gnu installer locale)
423 (gnu installer parted) 436 (gnu installer parted)
424 (gnu installer services) 437 (gnu installer services)
@@ -431,6 +444,7 @@ purposes."
431 (gnu services herd) 444 (gnu services herd)
432 (guix i18n) 445 (guix i18n)
433 (guix build utils) 446 (guix build utils)
447 (guix utils)
434 ((system repl debug) 448 ((system repl debug)
435 #:select (terminal-width)) 449 #:select (terminal-width))
436 (ice-9 match) 450 (ice-9 match)