aboutsummaryrefslogtreecommitdiff
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2018, 2020 Mathieu Othacehe <m.othacehe@gmail.com>
;;; Copyright © 2020 Florian Pelz <pelzflorian@pelzflorian.de>
;;; Copyright © 2024 Janneke Nieuwenhuizen <janneke@gnu.org>
;;;
;;; 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 <http://www.gnu.org/licenses/>.

(define-module (gnu installer record)
  #:use-module (guix records)
  #:use-module (srfi srfi-1)
  #:export (<installer>
            installer
            make-installer
            installer?
            installer-name
            installer-init
            installer-exit
            installer-exit-error
            installer-final-page
            installer-kernel-page
            installer-keymap-page
            installer-locale-page
            installer-menu-page
            installer-network-page
            installer-substitutes-page
            installer-timezone-page
            installer-hostname-page
            installer-user-page
            installer-partitioning-page
            installer-services-page
            installer-welcome-page
            installer-parameters-menu
            installer-parameters-page
            installer-dump-page
            installer-run-command
            installer-report-page))


;;;
;;; Installer record.
;;;

;; The <installer> 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 <operating-system> record and install it.

(define-record-type* <installer>
  installer make-installer
  installer?
  ;; symbol
  (name installer-name)
  ;; procedure: void -> void
  (init installer-init)
  ;; procedure: void -> void
  (exit installer-exit)
  ;; procedure (key arguments) -> (action)
  (exit-error installer-exit-error)
  ;; procedure void -> void
  (final-page installer-final-page)
  ;; procedure void -> void
  (kernel-page installer-kernel-page)
  ;; procedure (layouts context) -> (list layout variant options)
  (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 void -> void
  (substitutes-page installer-substitutes-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
  (partitioning-page installer-partitioning-page)
  ;; procedure void -> void
  (services-page installer-services-page)
  ;; procedure (logo #:pci-database) -> void
  (welcome-page installer-welcome-page)
  ;; procedure (menu-proc) -> void
  (parameters-menu installer-parameters-menu)
  ;; procedure (keyboard-layout-selection) -> void
  (parameters-page installer-parameters-page)
  ;; procedure (dump) -> void
  (dump-page installer-dump-page)
  ;; procedure command -> bool
  (run-command installer-run-command)
  ;; procedure (report) -> void
  (report-page installer-report-page))
weather, gnome-tweaks, cheese, gthumb) (gitg, polari, gnome-boxes, gtranslator): Likewise. * gnu/packages/gtk.scm: (gtkmm-3): Likewise. * gnu/packages/pdf.scm (zathura): Likewise. * gnu/packages/photo.scm (entangle): Likewise. * gnu/packages/video.scm (pitivi): Likewise. * gnu/packages/virtualization.scm (libvirt-glib): Likewise. Maxim Cournoyer 2022-01-07gnu: gphoto2: Update to 2.5.28....* gnu/packages/photo.scm (gphoto2): Update to 2.5.28. [arguments]: Don't explicitly return #t from phases. Tobias Geerinckx-Rice 2022-01-07gnu: libgphoto2: Update to 2.5.28....* gnu/packages/photo.scm (libgphoto2): Update to 2.5.28. Tobias Geerinckx-Rice 2021-12-26gnu: rawtherapee: Fix build....* gnu/packages/photo.scm: (rawtherapee): Fix build. Sharlatan Hellseher 2021-12-13gnu: Further simplify package inputs....This is the result of running: ./pre-inst-env guix style --input-simplification=safe and manually undoing changes on a dozen of packages to reduce rebuilds (derivations for emacs, icecat, and libreoffice are unchanged.) Ludovic Courtès 2021-12-13gnu: Simplify package inputs....This commit was obtained by running: ./pre-inst-env guix style without any additional argument. Ludovic Courtès 2021-11-28gnu: darktable: Build with OpenEXR 3....* gnu/packages/photo.scm (darktable)[arguments]<#:phases>: Rename 'set-LDFLAGS-and-CPATH to 'set-LDFLAGS. Don't set CPATH. [inputs]: Remove ilmbase. Add imath. Replace openexr-2 with openexr. Signed-off-by: Leo Famulari <leo@famulari.name> Vinicius Monego 2021-11-28gnu: darktable: Build with libsoup 2....* gnu/packages/photo.scm (darktable)[inputs]: Change libsoup to libsoup-minimal-2. Signed-off-by: Leo Famulari <leo@famulari.name> Vinicius Monego 2021-11-18gnu: entangle: Build with Meson 0.59....* gnu/packages/photo.scm (entangle)[arguments]: Pass #:meson. Ludovic Courtès 2021-10-31Merge remote-tracking branch 'origin/master' into core-updates-frozenEfraim Flashner 2021-10-23gnu: Rename openexr to openexr-2....This is done so the OpenEXR package can be upgraded to version 3 in a later commit. * gnu/packages/graphics.scm (openexr): Rename to ... (openexr-2): ... new variable. (blender, blender-2.79, openimageio, povray)[inputs]: Adjust accordingly. (ctl)[propagated-inputs]: Likewise. * gnu/packages/animation.scm (synfig)[propagated-inputs]: Likewise. * gnu/packages/gimp.scm (gegl, gimp)[inputs]: Likewise. * gnu/packages/gstreamer.scm (gst-plugins-bad)[inputs]: Likewise. * gnu/packages/image-processing.scm (mia, opencolorio, opencv, vips, gmic, nip2)[inputs]: Likewise. * gnu/packages/image-viewers.scm (luminance-hdr)[inputs]: Likewise. * gnu/packages/image.scm (freeimage, vigra, devil)[inputs]: Likewise. * gnu/packages/kde-frameworks.scm (kimageformats)[inputs]: Likewise. * gnu/packages/kde.scm (krita)[inputs]: Likewise. * gnu/packages/photo.scm (enblend-enfuse, darktable, hugin)[inputs]: Likewise. Signed-off-by: Leo Famulari <leo@famulari.name> Vinicius Monego 2021-10-12Merge remote-tracking branch 'origin/master' into core-updates-frozen.Mathieu Othacehe 2021-10-02gnu: Update gtkmm to 4.2.0, add gtkmm@3, and adjust gtkmm@2....* gnu/packages/gtk.scm (gtkmm)[version]: Update to 4.2.0. [arguments](meson): New argument. [native-inputs]: Add glib:bin. [propagated-inputs]: Replace gtk+ with gtk. (gtkmm-3): New variable. (gtkmm-2)[arguments]: Strip certain inherited arguments. * gnu/packages/animation.scm (synfigstudio)[inputs]: Switch to gtkmm-3. * gnu/packages/astronomy.scm (stackistry)[inputs]: Ditto. * gnu/packages/audio.scm (guitarix)[inputs]: Ditto. * gnu/packages/disk.scm (parted)[inputs]: Ditto. * gnu/packages/gnome.scm (gnome-system-monitor)[inputs]: Ditto. (workrave)[inputs]: Ditto. (gnote)[inputs]: Ditto. * gnu/packages/gobby.scm (gobby)[inputs]: Ditto. * gnu/packages/inkscape.scm (inkscape)[inputs]: Ditto. * gnu/packages/mail.scm (astroid)[inputs]: Ditto. * gnu/packages/mate.scm (mate-system-monitor)[inputs]: Ditto. * gnu/packages/music.scm (tascam-gtk)[inputs]: Ditto. * gnu/packages/photo.scm (rawtherapee)[inputs]: Ditto. * gnu/packages/pulseaudio.scm (pavucontrol)[inputs]: Ditto. (paprefs)[inputs]: Ditto. * gnu/packages/text-editors.scm (jucipp)[inputs]: Ditto. * gnu/packages/wm.scm (waybar)[inputs]: Ditto. Raghav Gururajan 2021-09-26gnu: darktable: Update to 3.6.1....* gnu/packages/photo.scm (darktable): Update to 3.6.1. [arguments]<#:phases>: Don't return #t. Remove 'opencl-inline phase because the issue was fixed by upstream in this version. Signed-off-by: Efraim Flashner <efraim@flashner.co.il> Vinicius Monego 2021-09-26gnu: darktable: Add powerpc64le-linux to supported systems....* gnu/packages/photo.scm (darktable)[supported-systems]: Add powerpc64le-linux. Signed-off-by: Efraim Flashner <efraim@flashner.co.il> Vinicius Monego 2021-09-07Merge branch 'master' into core-updates-frozenLudovic Courtès 2021-08-12Merge branch 'master' into core-updates-frozen... Conflicts: gnu/packages/algebra.scm gnu/packages/games.scm gnu/packages/golang.scm gnu/packages/kerberos.scm gnu/packages/mail.scm gnu/packages/python.scm gnu/packages/ruby.scm gnu/packages/scheme.scm gnu/packages/tex.scm gnu/packages/tls.scm gnu/packages/version-control.scm Marius Bakke 2021-08-27gnu: ocl-icd: Replace with opencl-icd-loader....ocl-icd’s project page is dead and the source code is unavailable. * gnu/packages/opencl.scm (ocl-icd): Alias to opencl-icd-loader. (clinfo)[inputs]: Use opencl-icd-loader. (beignet)[inputs]: Dito. (pocl)[inputs]: Dito. (python-pyopencl)[inputs]: Dito. * gnu/packages/games.scm (leela-zero)[inputs]: Dito. * gnu/packages/photo.scm (darktable)[inputs]: Dito. * gnu/packages/rocm.scm (rocm-opencl-runtime)[inputs]: Dito. Lars-Dominik Braun