;;; GNU Guix --- Functional package management for GNU ;;; Copyright © 2018 Mathieu Othacehe ;;; ;;; This file is part of GNU Guix. ;;; ;;; GNU Guix is free software; you can redistribute it and/or modify it ;;; under the terms of the GNU General Public License as published by ;;; the Free Software Foundation; either version 3 of the License, or (at ;;; your option) any later version. ;;; ;;; GNU Guix is distributed in the hope that it will be useful, but ;;; WITHOUT ANY WARRANTY; without even the implied warranty of ;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ;;; GNU General Public License for more details. ;;; ;;; You should have received a copy of the GNU General Public License ;;; along with GNU Guix. If not, see . (define-module (gnu installer record) #:use-module (guix records) #:use-module (srfi srfi-1) #:export ( installer make-installer installer? installer-name installer-init installer-exit installer-exit-error installer-final-page installer-keymap-page installer-locale-page installer-menu-page installer-network-page installer-timezone-page installer-hostname-page installer-user-page installer-partition-page installer-services-page installer-welcome-page)) ;;; ;;; Installer record. ;;; ;; The record contains pages that will be run to prompt the user ;; for the system configuration. The goal of the installer is to produce a ;; complete record and install it. (define-record-type* installer make-installer installer? ;; symbol (name installer-name) ;; procedure: void -> void (init installer-init) ;; procedure: void -> void (exit installer-exit) ;; procedure (key arguments) -> void (exit-error installer-exit-error) ;; procedure void -> void (final-page installer-final-page) ;; procedure (layouts) -> (list layout variant) (keymap-page installer-keymap-page) ;; procedure: (#:key supported-locales iso639-languages iso3166-territories) ;; -> glibc-locale (locale-page installer-locale-page) ;; procedure: (steps) -> step-id (menu-page installer-menu-page) ;; procedure void -> void (network-page installer-network-page) ;; procedure (zonetab) -> posix-timezone (timezone-page installer-timezone-page) ;; procedure void -> void (hostname-page installer-hostname-page) ;; procedure void -> void (user-page installer-user-page) ;; procedure void -> void (partition-page installer-partition-page) ;; procedure void -> void (services-page installer-services-page) ;; procedure (logo) -> void (welcome-page installer-welcome-page)) d use (guix grafts) just to access '%graft?' and related bindings, which are now in (guix store). * gnu/ci.scm, guix/gexp.scm, guix/lint.scm, guix/scripts.scm, guix/scripts/archive.scm, guix/scripts/build.scm, guix/scripts/challenge.scm, guix/scripts/deploy.scm, guix/scripts/environment.scm, guix/scripts/home.scm, guix/scripts/pack.scm, guix/scripts/package.scm, guix/scripts/pull.scm, guix/scripts/size.scm, guix/scripts/system.scm, guix/scripts/weather.scm, tests/builders.scm, tests/channels.scm, tests/cpan.scm, tests/derivations.scm, tests/gexp.scm, tests/graph.scm, tests/guix-daemon.sh, tests/monads.scm, tests/pack.scm, tests/packages.scm, tests/profiles.scm, tests/system.scm: Remove #:use-module (guix grafts). Ludovic Courtès 2020-09-28tests: Simplify shell exit status negation;...* tests/guix-archive.sh, tests/guix-build-branch.sh, tests/guix-build.sh, tests/guix-daemon.sh, tests/guix-download.sh, tests/guix-environment.sh, tests/guix-gc.sh, tests/guix-git-authenticate.sh, tests/guix-graph.sh, tests/guix-hash.sh, tests/guix-lint.sh, tests/guix-pack-relocatable.sh, tests/guix-pack.sh, tests/guix-package-aliases.sh, tests/guix-package-net.sh, tests/guix-package.sh: Use the shell '!' keyword to negate command exit status in place of 'if ...; then false; else true; fi' Eric Bavier