summaryrefslogtreecommitdiff
path: root/gnu/system/install.scm
AgeCommit message (Collapse)Author
2026-02-17system: Remove nintendo-nes-classic-edition installer.Andreas Enge
* gnu/system/install.scm (nintendo-nes-classic-edition-installation-os): Delete variable. * gnu/bootloader/u-boot.scm (u-boot-nintendo-nes-classic-edition-bootloader): Delete variable. Change-Id: I538d1b7d80f4d475c5389bd41cee4ab4358c05c2
2026-02-01system: Add am335x-evm installer.Denis 'GNUtoo' Carikli
* gnu/system/install.scm (am335x-evm-installation-os): New exported variable. Change-Id: I6dbe95f64d2c6f609fbf0e9c09e484f90850c70b Signed-off-by: Denis 'GNUtoo' Carikli <GNUtoo@cyberdimension.org> Signed-off-by: Vagrant Cascadian <vagrant@debian.org>
2026-02-01system: export rock-4c-plus-installation-os.Denis 'GNUtoo' Carikli
* gnu/system/install.scm (rock-4c-plus-installation-os): Export variable. Change-Id: Id91a9d77e34685a6bd62f2098b3b812e246cb758 Signed-off-by: Denis 'GNUtoo' Carikli <GNUtoo@cyberdimension.org> Signed-off-by: Vagrant Cascadian <vagrant@debian.org>
2026-01-16system: install: Add support for more boot devices on AArch64.Rutherther
The state is not great, there are many unsupported devices in the current state. This adds support for much more USB controllers than before and also SD cards. * gnu/system/install.scm (%installation-initrd-modules): Add a lot of new modules to support booting on various devices Change-Id: I523ebe992a7e3740708622899d1209f20eb23e63 Signed-off-by: Rutherther <rutherther@ditigal.xyz> Merges: #5320
2026-01-14install: Add guix-system-installer executable to system profile.Rutherther
To allow users in headless consoles to use the graphical installer, add an executable. This executable is referred to by the console motd, so users in headless setups will get to know about it. * gnu/system/install.scm (installer-command-package): New variable. (%installation-services): Use it, add it to the profile-service-type Change-Id: Id2d07b3f190aa17c99c7667c3bb31ae696499dde Signed-off-by: Rutherther <rutherther@ditigal.xyz> Merges: #5346
2026-01-14install: Show different motd in headless console.Rutherther
motd is shown by the pam module, it doesn't support changing what motd gets displayed easily. The only way to control it is by read permissions on individual motd files, making files unreadable by the user logging in. So instead of that, make a custom script that prints different motd, checking if a temporary file exists. An environment variable would be better suited for this purpose, but those aren't passed through by PAM. * gnu/system/install.scm (%installation-login-pam-service): New variable. Modified login pam service. (%installation-console-login): New variable. Wrapper around login to create a file for PAM rule. (%installation-services): Use new login pam service and wrapper. Change-Id: I5e05e604b3106390181190559ade62ca5e2db216 Signed-off-by: Rutherther <rutherther@ditigal.xyz>
2026-01-14install: Register agetty on primary console on AArch64.Rutherther
This adds the possibility to parse /proc/consoles to find a primary console. Then, on AArch64 this is used in the installation image. On AArch64, the boot usually happens with chosen device tree that contains the serial console. On x86_64, this does not happen so often, so we keep the installation iso minimal there. The primary console is chosen, but there is a fallback to any non-virtual one. Virtual console (/dev/tty0) is skipped, because that one can point to any console, like /dev/tty1 and so on. So it's not safe to register agetty on it. * gnu/build/linux-boot.scm (read-linux-consoles): New variable. * gnu/services/base.scm (default-serial-console): Use primary console as fallback. * gnu/system/install.scm (%installation-services): Add agetty tty for consoles. Change-Id: Iae01f7bc85b5ffdef2e52b1d0710889915b0f54a Signed-off-by: Rutherther <rutherther@ditigal.xyz>
2025-12-22system: install: Remove current-guix url override.Rutherther
Prefer parameterization of current-guix in release artifacts generation. * gnu/system/install.scm (%installation-service): Use (current-guix) directly in guix service configuration. Change-Id: Ifa363465e6a4f6936d0e51eaf1b33872519e2b0a Signed-off-by: Rutherther <rutherther@ditigal.xyz>
2025-12-22system: installation-os: Support efi-only.Rutherther
Aarch64 doesn't support grub-pc, so we cannot use the regular grub-bootloader, grub-efi-bootloader has to be used. Since neither packages nor bootloader are thunked, there seems to be no other choice than using something from the outside environment, such as an environment variable to decide what bootloader to use. For convenience, a procedure is made to be used from other Guile code, instead of relying on environment variables. * gnu/system/install.scm (make-installation-os): New variable; Use grub-efi-bootloader when efi-only? is #t; Use bootloader package in packages instead of grub-pc. (installation-os): Replace with call of make-installation-os with default arguments. Change-Id: I34ec8da6079617f39805b3e1168bad4a42d84cab Signed-off-by: Rutherther <rutherther@ditigal.xyz>
2025-10-22install: Add node name in Italian.Florian Pelz
* gnu/system/install.scm (%installation-node-names): Add "it". Change-Id: Ic736b0ff918b63f36bca988f021a1055273ef709
2025-09-18system: Add u-boot-rock-4c-plus-rk3399.Denis 'GNUtoo' Carikli
* gnu/packages/bootloaders.scm (u-boot-rock-4c-plus-rk3399): New variable. * gnu/bootloader/u-boot.scm (u-boot-rock-4c-plus-rk3399-bootloader): New exported variable. * gnu/system/install.scm (rock-4c-plus-installation-os): New exported variable. Change-Id: I37025b248178311ccf8246cb0e02ed9399f9c6ac Signed-off-by: Denis 'GNUtoo' Carikli <GNUtoo@cyberdimension.org> Signed-off-by: Danny Milosavljevic <dannym@friendly-machines.com>
2025-06-04install: Adjust for (package-source guix) not being a <channel>.Ludovic Courtès
Fixes guix/guix#422. * gnu/system/install.scm (%installation-services)[guix-package-commit]: New procedure. <guix-configuration>: Use it instead of ‘channel-commit’. Change-Id: I6ed5bc3f21a375e639fabfcbcdaf70b6347d1c5c
2025-05-06install: Do not leak local checkout URL.Ludovic Courtès
Fixes <https://issues.guix.gnu.org/67707>. Previously ‘guix describe’ in the installation image would show the URL of the local checkout that was used to build the image. It now shows the default URL. * gnu/system/install.scm (%installation-services): Change channel of ‘guix’ package to inherit from ‘%default-guix-channel’. Change-Id: If848b5a6166904e982e0f9a0780f3e3f53bdfc28
2025-03-10install: Use ‘shepherd-system-log-service-type’.Ludovic Courtès
This is a followup to d0510dcd824e1b3fda62a8841e792581d7b8de8d, which wrongfully assumed that this was already the case. * gnu/system/install.scm (%installation-services): Replace ‘syslog-service-type’ by ‘shepherd-system-log-service-type’. Change-Id: I349454b8d005c67d2c6d6b5475f74d16c9006006
2024-11-20install: Open info manuals that have region codes.Florian Pelz
Because pt_PT and pt_BR have many differences, such as how the word “file” gets translated, Guix’ pt_BR info manual is called (guix.pt_BR) instead of (guix.pt). * gnu/system/install.scm (log-to-info): Try region coded manual file names. (%installation-node-names): Add node names for pt_BR and zh_CN. Change-Id: I89beebd323ee69ca83c22321c9d9e664b32cf6f3
2024-08-19install: Set ‘privileged-programs’ rather than ‘setuid-programs’.Ludovic Courtès
* gnu/system/install.scm (installation-os)[setuid-programs]: Remove. [privileged-programs]: New field. Change-Id: I5c93f282f5ec790f13ac076e0ab0f6d59d92d59d
2024-04-18system: Remove nss-certs from OS templates, adjust doc.Maxim Cournoyer
This is a follow-up to commit 86afaadb51 ("system: Add 'nss-certs' to %base-packages-networking.") * doc/guix-cookbook.texi (Running Guix on a Linode Server): Remove nss-certs from operating system's packages field. (Running Guix on a Kimsufi Server): Likewise. * doc/guix.texi (Using the Configuration System): Likewise. (X.509 Certificates): Adjust to mention nss-certs *is* part of %base-packages. * gnu/installer/services.scm (%system-services): Remove recommendation to install nss-certs. * gnu/system/examples/bare-bones.tmpl (host-name): Remove obsolete comments. * gnu/system/examples/desktop.tmpl (packages): Remove nss-certs. * gnu/system/examples/lightweight-desktop.tmpl (packages): Likewise. * gnu/system/examples/plasma.tmpl (packages): Likewise. * gnu/system/examples/raspberry-pi-64-nfs-root.tmpl (packages): Likewise. * gnu/system/examples/raspberry-pi-64.tmpl (packages): Likewise. * gnu/system/examples/vm-image.tmpl (packages): Likewise. * gnu/system/images/orangepi-r1-plus-lts-rk3328.scm (packages): Likewise. * gnu/system/images/pine64.scm (packages): Likewise. * gnu/system/install.scm (installation-os) [packages]: Likewise. Change-Id: If09123a69b987178bcb0aab61c4570c14fc1286f
2023-12-22images: Add orangepi-r1-plus-lts image.Herman Rimm
* gnu/local.mk: Register image. * gnu/system/images/orangepi-r1-plus-lts-rk3328.scm: New file. * gnu/system/install.scm (orangepi-r1-plus-lts-rk3328-installation-os): New variable. Signed-off-by: Vagrant Cascadian <vagrant@debian.org>
2023-12-02gnu: Use ‘libc-utf8-locales-for-target’.Janneke Nieuwenhuizen
* guix/packages.scm (%standard-patch-inputs): Use ‘libc-utf8-locales-for-target’ instead of ‘glibc-utf8-locales’. * guix/self.scm (%packages): Likewise. * gnu/home/services/ssh.scm (file-join): Likewise * gnu/installer.scm (build-compiled-file): Likewise. * gnu/packages/chromium.scm (ungoogled-chromium/wayland): Likewise. * gnu/packages/gnome.scm (libgweather4, tracker): Likewise. * gnu/packages/javascript.scm (js-mathjax): Likewise. * gnu/packages/package-management.scm (guix, flatpak): Likewise. * gnu/packages/raspberry-pi.scm (raspi-arm64-chainloader): Likewise. * gnu/packages/suckless.scm (svkbd): Likewise. * gnu/services.scm (cleanup-gexp): Likewise. * gnu/services/base.scm (guix-publish-shepherd-service): Likewise. * gnu/services/guix.scm (guix-build-coordinator-shepherd-services) (guix-build-coordinator-agent-shepherd-services): Likewise. * gnu/services/guix.scm (guix-build-coordinator-queue-builds-shepherd-services): (guix-data-service-shepherd-services) (nar-herder-shepherd-services) (bffe-shepherd-services): Likewise. * gnu/services/web.scm (anonip-shepherd-service) (mumi-shepherd-services): Likewise. * gnu/system/image.scm (system-disk-image, system-iso9660-image) (system-docker-image, system-tarball-image): Likewise. * gnu/system/install.scm (%installation-services): Likewise. * guix/profiles.scm (info-dir-file): Likewise. (ca-certificate-bundle, profile-derivation): Likewise. * guix/scripts/pack.scm (store-database, set-utf8-locale): Likewise. * tests/pack.scm: Likewise. * tests/profiles.scm ("profile-derivation, cross-compilation"): Likewise. Co-authored-by: Ludovic Courtès <ludo@gnu.org> Co-authored-by: Christopher Baines <mail@cbaines.net> Change-Id: I24239f427bcc930c29d2ba5d00dc615960a6c374
2023-09-17gnu: file-systems: Add variable %base-live-file-systems.Nicolas Graves
* gnu/system/file-systems.scm (%base-live-file-systems): New variable. * gnu/system/install.scm (installation-os): Use %base-live-file-systems. Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2023-03-03services: dbus: Deprecate 'dbus-service' procedure.Bruno Victal
* doc/guix.texi (Desktop Services): Replace with 'dbus-root-service-type'. Document dbus-configuration. * gnu/services/dbus.scm (dbus-service): Define with 'define-deprecated'. * gnu/services/desktop.scm (desktop-services-for-system): Replace with dbus-root-service-type. * gnu/system/install.scm (%installation-services): Ditto. * gnu/tests/base.scm (%avahi-os): Ditto. * gnu/tests/docker.scm (%docker-os): Ditto. * gnu/tests/lightdm.scm (minimal-desktop-services): Ditto. * gnu/tests/virtualization.scm (%libvirt-os): Ditto. Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2023-03-03services: base: Deprecate 'udev-service' procedure.Bruno Victal
* doc/guix.texi (Base Services): Replace udev-service with udev-service-type. Document <udev-configuration>. Use @defun @-commands for udev-rules-service, udev-rule and file->udev-rule. * gnu/services/base.scm (udev-service): Deprecate procedure. * gnu/system/install.scm (%installation-services): Use udev-service-type. Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2023-03-03services: base: Deprecate 'syslog-service' procedure.Bruno Victal
* doc/guix.texi (Base Services): Replace syslog-service with syslog-service-type. * gnu/services/base.scm (%default-syslog.conf): Place before <syslog-configuration>. (syslog-service-type): Set default value. (syslog-service): Deprecate procedure. (%base-services): Use syslog-service-type. * gnu/system/hurd.scm (%base-services/hurd): Ditto. * gnu/system/install.scm (%installation-services): Ditto. Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2023-03-03services: base: Deprecate 'nscd-service' procedure.Bruno Victal
* doc/guix.texi (Application Setup): Compress @cindex entries. (Base Services): Compress @cindex entries. Delete %nscd-default-configuration. Replace 'nscd-service' with 'nscd-service-type'. * gnu/services/base.scm (%nscd-default-configuration): Deprecate variable. (nscd-service): Deprecate procedure. * gnu/system/install.scm (%installation-services): Use nscd-service-type. Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2023-03-03services: base: Deprecate 'mingetty-service' procedure.Bruno Victal
* doc/guix.texi (Base Services): Replace mingetty-service with mingetty-service-type. * gnu/services/base.scm (mingetty-service): Deprecate procedure. Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2023-03-03services: base: Deprecate 'login-service' procedure.Bruno Victal
* doc/guix.texi (Base Services): Replace with login-service-type. * gnu/services/base.scm (login-service): Deprecate procedure. * gnu/system/install.scm (%installation-services): Use login-service-type. Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2022-12-19Merge branch 'version-1.4.0'Ludovic Courtès
2022-12-15install: Make sure uvesafb can be loaded.Ludovic Courtès
Fixes <https://issues.guix.gnu.org/60010>. Reported by pelzflorian (Florian Pelz) <pelzflorian@pelzflorian.de>. Previously, the 'modprobe' executable would try and fail to load the module from /lib/modules/*. Set 'LINUX_MODULE_DIRECTORY' to make sure 'modprobe' looks for the module in the right place. * gnu/system/install.scm (uvesafb-shepherd-service)[modprobe]: New variable. In 'start' method, invoke it instead of KMOD/bin/modprobe.
2022-12-11install: Add lvm2-static system package.Tobias Geerinckx-Rice
* gnu/system/install.scm (%installer-disk-utilities): Add lvm2-static.
2022-12-06install: Add missing e2fsprogs utility.Maxim Cournoyer
* gnu/system/install.scm (%installer-disk-utilities): Add e2fsprogs. Reported-by: Adam Kandur <kefironpremise@gmail.com>
2022-12-06system: Rename and move %base-packages-disk-utilities.Maxim Cournoyer
Rationale: It is only used in INSTALLATION-OS and doesn't make sense to be used in another context, given that file systems now automatically pull their dependencies since commit 45eac6cdf5c8d9d7b0c564b105c790d2d2007799 (services: Add file system utilities to profile). * gnu/system.scm (%base-packages-disk-utilities): Deprecate and rename to... * gnu/system/install.scm (%installer-disk-utilities): ... this. (installation-os) [packages]: Adjust accordingly.
2022-12-05install: Add missing e2fsprogs utility.Maxim Cournoyer
* gnu/system/install.scm (%installer-disk-utilities): Add e2fsprogs. Reported-by: Adam Kandur <kefironpremise@gmail.com>
2022-12-05system: Rename and move %base-packages-disk-utilities.Maxim Cournoyer
Rationale: It is only used in INSTALLATION-OS and doesn't make sense to be used in another context, given that file systems now automatically pull their dependencies since commit 45eac6cdf5c8d9d7b0c564b105c790d2d2007799 (services: Add file system utilities to profile). * gnu/system.scm (%base-packages-disk-utilities): Deprecate and rename to... * gnu/system/install.scm (%installer-disk-utilities): ... this. (installation-os) [packages]: Adjust accordingly.
2022-09-16system: install: Do not load amdgpu in the installer image.Antero Mejr
* gnu/system/install.scm (installation-os): Add amdgpu to modprobe.blacklist. Signed-off-by: Mathieu Othacehe <othacehe@gnu.org>
2022-08-09maint: Use a pretty version string in ISO and VM images.Ludovic Courtès
* gnu/system/examples/vm-image.tmpl: Use the 'GUIX_DISPLAYED_VERSION' environment variable in 'label'. * gnu/system/install.scm (%installation-os): Likewise. * Makefile.am (release): Set 'GUIX_DISPLAYED_VERSION'.
2022-08-09system: install: Always use 'current-guix'.Ludovic Courtès
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.
2022-06-07gnu: install: Add uvesafb service only on targets that support v86d.Josselin Poiret
Fixes <https://issues.guix.gnu.org/55806>. * gnu/system/install.scm (%installation-services): Refactor into a procedure, so that it can capture the system it's installing for. Conditionally add uvesafb-service-type based on whether v86d is supported by the target architecture. (installation-os)[services]: Use the %installation-service procedure. (uvesafb-shepherd-service): Remove %host-type checks. Signed-off-by: Florian Pelz <pelzflorian@pelzflorian.de>
2022-05-18services: Add more description fields.Ludovic Courtès
* gnu/services.scm (simple-service): Add 'description' field. * gnu/services/base.scm (udev-rules-service): Likewise. * gnu/system/install.scm (configuration-template-service-type): Likewise. * gnu/tests.scm (marionette-service-type): Likewise.
2021-12-12services: Define '%loopback-static-networking'.Ludovic Courtès
* gnu/services/base.scm (%loopback-static-networking): New variable. (%base-services): Use it. * gnu/system/hurd.scm (%base-services/hurd): Use it. * gnu/system/install.scm (%installation-services): Use it. * doc/guix.texi (Networking Setup): Document it.
2021-12-12services: static-networking: Change interface to mimic netlink.Ludovic Courtès
* gnu/services/base.scm (<static-networking>)[interface, ip, netmask] [gateway]: Remove. [addresses, links, routes]: New fields. [requirement]: Default to '(udev). (<network-address>, <network-link>, <network-route>): New record types. (ensure-no-separate-netmask, %ensure-no-separate-netmask): Remove. (ipv6-address?, cidr->netmask, ip+netmask->cidr) (network-set-up/hurd, network-tear-down/hurd) (network-set-up/linux, network-tear-down/linux) (static-networking->hurd-pfinet-options): New procedures. (static-networking-shepherd-service): New procedure. (static-networking-shepherd-services): Rewrite in terms of the above. (static-networking-service): Deprecate. Adjust to new 'static-networking' API. (%base-services): Likewise. * gnu/system/install.scm (%installation-services): Likewise. * gnu/system/hurd.scm (%base-services/hurd): Likewise, and separate 'loopback' from 'networking'. * gnu/build/hurd-boot.scm (set-hurd-device-translators): Remove "servers/socket/2". * gnu/tests/networking.scm (run-openvswitch-test)["networking has started on ovs0"]: Check for 'networking instead of 'networking-ovs0, which is no longer provided. * doc/guix.texi (Networking Setup): Document the new interface. Remove documentation of 'static-networking-service'. (Virtualization Services): Change Ganeti example to use the new interface.
2021-08-29Migrate to the new 'targets' field of bootloader-configuration.Maxim Cournoyer
The old 'target' field is deprecated; adjust the sources to use the new 'targets' one instead. * doc/guix-cookbook.texi<target>: Replace by 'targets'. * gnu/bootloader/grub.scm: Likewise. * gnu/installer/parted.scm: Likewise. * gnu/machine/digital-ocean.scm: Likewise. * gnu/system/examples/asus-c201.tmpl: Likewise * gnu/system/examples/bare-bones.tmpl: Likewise * gnu/system/examples/bare-hurd.tmpl: Likewise * gnu/system/examples/beaglebone-black.tmpl: Likewise * gnu/system/examples/desktop.tmpl: Likewise * gnu/system/examples/docker-image.tmpl: Likewise * gnu/system/examples/lightweight-desktop.tmpl: Likewise * gnu/system/examples/vm-image.tmpl: Likewise * gnu/system/examples/yggdrasil.tmpl: Likewise * gnu/system/hurd.scm: Likewise * gnu/system/images/hurd.scm: Likewise * gnu/system/images/novena.scm: Likewise * gnu/system/images/pine64.scm: Likewise * gnu/system/images/pinebook-pro.scm: Likewise * gnu/system/images/rock64.scm: Likewise * gnu/system/install.scm: Likewise * gnu/system/vm.scm: Likewise * gnu/tests.scm: Likewise * gnu/tests/ganeti.scm: Likewise * gnu/tests/install.scm: Likewise * gnu/tests/nfs.scm: Likewise * gnu/tests/telephony.scm: Likewise * tests/boot-parameters.scm: Likewise * tests/system.scm: Likewise
2021-08-12system: install, hurd: Use 'setuid-programs'.Ludovic Courtès
This is a followup to a7ac19851baab3fbcc40c4b2cf5b00a6ac9cd2f3. * gnu/system/install.scm (installation-os)[setuid-programs]: Use 'setuid-program'. * gnu/system/hurd.scm (%setuid-programs/hurd): Use 'file-like->setuid-program'.
2021-01-13services: shepherd: 'shepherd-service-type' requires documentation.Ludovic Courtès
* gnu/services/shepherd.scm (shepherd-service-type): Require a 'description' form. * gnu/services/base.scm (root-file-system-service-type) (rngd-service-type, host-name-service-type): (virtual-terminal-service-type, console-keymap-service-type) (syslog-service-type, swap-service-type) (kmscon-service-type): Add description. * gnu/services/networking.scm (dhcp-client-service-type): Likewise. * gnu/system/install.scm (cow-store-service-type): Likewise. * gnu/system/linux-container.scm (dummy-networking-service-type): Likewise. * gnu/system/mapped-devices.scm (device-mapping-service-type): Likewise. * tests/guix-system.sh: Likewise.
2020-12-15store-copy: 'populate-store' can optionally deduplicate files.Ludovic Courtès
Until now deduplication was performed as an additional pass after copying files, which involve re-traversing all the files that had just been copied. * guix/store/deduplication.scm (copy-file/deduplicate): New procedure. * tests/store-deduplication.scm ("copy-file/deduplicate"): New test. * guix/build/store-copy.scm (populate-store): Add #:deduplicate? parameter and honor it. * tests/gexp.scm ("gexp->derivation, store copy"): Pass #:deduplicate? #f to 'populate-store'. * gnu/build/image.scm (initialize-root-partition): Pass #:deduplicate? to 'populate-store'. Pass #:deduplicate? #f to 'register-closure'. * gnu/build/vm.scm (root-partition-initializer): Likewise. * gnu/build/install.scm (populate-single-profile-directory): Pass #:deduplicate? #f to 'populate-store'. * gnu/build/linux-initrd.scm (build-initrd): Likewise. * guix/scripts/pack.scm (self-contained-tarball)[import-module?]: New procedure. [build]: Pass it as an argument to 'source-module-closure'. * guix/scripts/pack.scm (squashfs-image)[build]: Wrap in 'with-extensions'. * gnu/system/linux-initrd.scm (expression->initrd)[import-module?]: New procedure. [builder]: Pass it to 'source-module-closure'. * gnu/system/install.scm (cow-store-service-type)[import-module?]: New procedure. Pass it to 'source-module-closure'.
2020-12-11install: Discover local substitute servers.Mathieu Othacehe
* gnu/installer/substitutes.scm: New file. * gnu/installer/newt/substitutes.scm: New file. * gnu/local.mk (INSTALLER_MODULES): Add them. * po/guix/POTFILES.in: Add gnu/installer/newt/substitutes.scm. * gnu/installer/proxy.scm (with-silent-shepherd): Move to ... * gnu/installer/utils.scm: ... here. * gnu/installer/record.scm (<installer>)[substitutes-page]: New field. * gnu/installer/newt.scm (substitutes-page): New procedure, (newt-installer): register it. * gnu/installer.scm (installer-steps): Add "substitutes-page" step. * gnu/system/install.scm (%installation-services): Add avahi-service-type and enable substitute server discover in guix-service-type. [<name-service-switch>]: Set it to %mdns-host-lookup-nss.
2020-10-15install: Deduplicate packages with %base-package sets.Efraim Flashner
* gnu/system.scm (%base-packages-interactive): Add nvi. * gnu/system/install.scm (installation-os)[packages]: Remove parted, gptfdisk, ddrescue, cryptsetup, mdadm, dosfstools, btrfs-progs, f2fs-tools, jfstools, openssh, wireless-tools, iw, wpa-supplicant-minimal, iproute, bash-completion, nvi. Add %base-packages-disk-utilities.
2020-10-11Revert "Revert "install: Pass "modprobe.blacklist=radeon".""Florian Pelz
This reverts commit 73ddcab6075f60ef9b3cd72a35fbf7f5d622b6ef. Blacklisting has become necessary again on my AMD machines, else the installer screen stays black.
2020-09-02install: Factorize cow-store procedure.Mathieu Othacehe
Move the cow-store procedure from the service declaration in (gnu system install) to (gnu build install), so that it can be called from within a different context than Shepherd. * gnu/build/install.scm (mount-cow-store, unmount-cow-store): New procedures. * gnu/system/install.scm (make-cow-store): Remove it, (cow-store-service-type): adapt it accordingly.
2020-07-31file-system: Add efivarfs support.Mathieu Othacehe
Tools such as efibootmgr rely on the deprecated /sys/firmware/efi/vars API as well as on the new /sys/firmware/efi/efivars API. The latter needs to be mounted. Reported by Keyhenge here: https://lists.gnu.org/archive/html/bug-guix/2020-04/msg00274.html Here is the efivarfs documentation: https://www.kernel.org/doc/Documentation/filesystems/efivarfs.txt. * gnu/system/file-systems.scm (%efivars-file-system): New exported variable, (%base-file-systems): add it. * gnu/system/install.scm (%efivars-file-system): Add it. Signed-off-by: Mathieu Othacehe <othacehe@gnu.org>
2020-06-08system: install: Add default libcs to gc-roots.Mathieu Othacehe
During the installation, it may be needed to build locales that are not covered by glibc-utf8-locales. Make sure that the libraries required to build locales are available. This is a follow-up of 0eed77127592323d89f56c215a15374a1aaae110. * gnu/system/install.scm (installation-os)[services]: Add %default-locale-libcs to gc-root-service-type.