1
0
mirror of https://git.savannah.gnu.org/git/guix.git synced 2026-05-05 00:35:53 +02:00
Commit Graph

106069 Commits

Author SHA1 Message Date
Ludovic Courtès adfe1064c8 services: base: Use 'match-record' instead of 'match'.
* gnu/services/base.scm (agetty-shepherd-service)
(mingetty-shepherd-service)
(nscd.conf-file)
(udev-shepherd-service)
(udev-etc)
(gpm-shepherd-service)
(network-set-up/linux)
(network-tear-down/linux)
(static-networking-shepherd-service)
(greetd-agreety-tty-session-command)
(greetd-agreety-tty-xdg-session-command): Use 'match-record' instead of
'match'.
(guix-accounts): Use <guix-configuration> accessors.
(udev-service-type): Use <udev-configuration> accessors.
2022-12-02 00:02:13 +01:00
Ludovic Courtès 4c8eea027a home: services: Use 'match-record' instead of 'match'.
* gnu/home/services/mcron.scm (home-mcron-shepherd-services): Use
'match-record' instead of 'match'.
* gnu/home/services/shells.scm (home-bash-extensions): Likewise.
* gnu/home/services/xdg.scm (serialize-xdg-desktop-entry): Likewise.
2022-12-02 00:02:13 +01:00
Ludovic Courtès cc9ee514e3 doc: Recommend 'match-record'.
* doc/contributing.texi (Data Types and Pattern Matching): Recommend
'match-record'.
2022-12-02 00:02:12 +01:00
Ludovic Courtès 7c1161dba4 records: 'match-record' checks fields at macro-expansion time.
This allows 'match-record' to be more efficient (field offsets are
computed at compilation time) and to report unknown fields at
macro-expansion time.

* guix/records.scm (map-fields): New macro.
(define-record-type*)[rtd-identifier]: New procedure.
Define TYPE as a macro and use a separate identifier for the RTD.
(lookup-field, match-record-inner): New macros.
(match-record): Rewrite in terms of 'match-error-inner'.
* tests/records.scm ("match-record, simple")
("match-record, unknown field"): New tests.
* gnu/services/cuirass.scm (cuirass-shepherd-service): Rename 'log-file'
local variable to 'main-log-file'.
* gnu/services/getmail.scm (serialize-getmail-configuration-file): Move
after <getmail-configuration-file> definition.
2022-12-02 00:02:12 +01:00
Sharlatan Hellseher 594f5ef351 gnu: Add alfa.
* gnu/packages/astronomy.scm (alfa): New variable.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2022-12-02 00:02:12 +01:00
Philip McGrath 5a7e496c5d etc: teams: Add chez.scm to Racket team's scope.
Racket's variant of Chez Scheme is defined in that file.

* etc/teams.scm.in (racket)[#:scope]: Add gnu/packages/chez.scm.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2022-12-02 00:02:12 +01:00
Ludovic Courtès 8e416c979d gnu: guile-gcrypt: Update to 0.4.0.
* gnu/packages/gnupg.scm (guile-gcrypt): Update to 0.4.0.
2022-12-02 00:02:12 +01:00
Stefan c7793b82ef gnu: raspberry-pi: Add a bootloader-chain for the Raspberry Pi and os examples.
* gnu/packages/raspberry-pi.scm (grub-efi-bootloader-chain-raspi-64): New
bootloader variable, capable to boot a Raspberry Pi over network or from a
local storage.
* gnu/system/examples/raspberry-pi-64.tmpl: New operating-system example.
* gnu/system/examples/raspberry-pi-64-nfs-root.tmpl: New operating-system
example for booting over network.
* Makefile.am (EXAMPLES): Register the new files.

Signed-off-by: Maxim Cournoyer <maxim.cournoyer@gmail.com>
2022-12-01 14:31:29 -05:00
Stefan 0ea8328052 gnu: raspberry-pi: New make-raspi-bcm28-dtbs procedure.
* gnu/packages/raspberry-pi.scm (make-raspi-bcm28-dtbs): New procedure.

Signed-off-by: Maxim Cournoyer <maxim.cournoyer@gmail.com>
2022-12-01 14:31:29 -05:00
Stefan 4e2e4b222f gnu: raspberry-pi: Add helpers for config.txt file generation.
* gnu/packages/raspberry-pi.scm (raspi-config-file, raspi-custom-txt):
New functions.
(%raspi-config-txt, %raspi-bcm27-dtb-txt, %raspi-bcm28-dtb-txt
%raspi-u-boot-bootloader-txt): New variables.

Signed-off-by: Maxim Cournoyer <maxim.cournoyer@gmail.com>
2022-12-01 14:31:29 -05:00
Stefan 13f9110e5f gnu: raspberry-pi: Add defconfig objects to build customized Linux kernels.
gnu/packages/raspberry-pi.scm (make-raspi-defconfig): New procedure.
(%bcm2709-defconfig, %bcm2711-defconfig, %bcm2711-defconfig-64)
(%bcmrpi3-defconfig): New variables.

Signed-off-by: Maxim Cournoyer <maxim.cournoyer@gmail.com>
2022-12-01 14:31:28 -05:00
Stefan 16ecfda418 gnu: linux: Add a 'customize-linux' procedure.
* gnu/packages/linux.scm (linux-srcarch): New procedure.
(customize-linux): Likewise.
(make-defconfig): New procedure.

Signed-off-by: Maxim Cournoyer <maxim.cournoyer@gmail.com>
Modified-by: Maxim Cournoyer <maxim.cournoyer@gmail.com>
2022-12-01 14:31:28 -05:00
Stefan c2c1dfdf57 gnu: bootloader: Add U-Boot packages for Raspberry Pi models.
* gnu/packages/bootloader.scm (make-u-boot-package): Add keyword
parameters 'name-suffix' and 'append-description'.
(make-u-boot-bin-package): New procedure
(%u-boot-rpi-efi-configs): New variable.
(%u-boot-rpi-description-32-bit, %u-boot-rpi-description-64-bit,
%u-boot-rpi-efi-description, %u-boot-rpi-efi-description-32-bit):
New variables.
(u-boot-rpi-2-efi, u-boot-rpi-2-bin, u-boot-rpi-2-efi-bin})
(u-boot-rpi-3-32b-efi, u-boot-rpi-3-32b-bin, u-boot-rpi-3-32b-efi-bin)
(u-boot-rpi-4-32b-efi, u-boot-rpi-4-32b-bin, u-boot-rpi-4-32b-efi-bin)
(u-boot-rpi-arm64-efi, u-boot-rpi-arm64-bin)
u-boot-rpi-arm64-efi-bin): New packages.
(u-boot-tools): Reuse the description of u-boot.
(u-boot-am335x-boneblack, u-boot-am335x-evm)
(u-boot-nintendo-nes-classic-edition, u-boot-novena): Make use of new keyword
parameters of make-u-boot-package.

Signed-off-by: Maxim Cournoyer <maxim.cournoyer@gmail.com>
2022-12-01 14:31:28 -05:00
Stefan a9acbf919a gnu: bootloader: Rework chaining, add grub-efi-netboot-removable-bootloader.
This rework allows to use an (efi-bootloader-chain) like this, which is able
to boot over network or local storage, depending on whether the bootloader
target has support for symbolic links:

   (operating-system
    (bootloader
      (bootloader-configuration
        (bootloader
          (efi-bootloader-chain
            grub-efi-netboot-removable-bootloader
            #:packages (list my-firmware-package
                             my-u-boot-package)
            #:files (list (plain-file "config.txt"
                                      "kernel=u-boot.bin"))
            #:hooks my-special-bootloader-profile-manipulator))
        (targets '("/booti/efi"))
        …))
    …)

* doc/guix.texi (Bootloader Configuration): Describe the new
‘grub-efi-netboot-removable-bootloader’.  Mention the file names used and that
the UEFI Boot Manager is not modified.  Advise to disable write-access over
TFTP.
* gnu/bootloader.scm (efi-bootloader-profile): Allow a list of packages and
collect everything directly in the profile, avoiding a separate collection
directory.  Renamed the profile from "bootloader-profile" to
"efi-bootloader-profile".
[bootloader-collection]: Rename to...
[efi-bootloader-profile-hook]: ... this and remove unused modules.  Do not
create the now extraneous collection directory.
(efi-bootloader-chain): Add PACKAGES and DISK-IMAGE-INSTALLER arguments.
Remove handling of the collection directory, now only calling the given
installer procedure.
* gnu/bootloader/grub.scm (make-grub-efi-netboot-installer): New helper.
(make-grub-configuration): New helper based on (grub-configuration-file).  Add
a GRUB argument, fix indentation, remove previous code retrieving GRUB from
CONFIG.
(grub-configuration-file): Make use of make-grub-configuration.
(grub-efi-configuration-file): New procedure.
(grub-cfg): New variable to replace "/boot/grub/grub.cfg".
(install-grub-efi-netboot): Remove, splitting logic to...
(make-grub-efi-netboot-installer): ... this new helper procedure, as well as
to make-grub-efi-netboot, added below.
(grub-bootloader): Adjust to use the GRUB-CFG.
(grub-efi-bootloader): Likewise.  Removed inheritance and declare all fields
explicitly.
(make-grub-efi-netboot-bootloader): New procedure.
(grub-efi-netboot-bootloader): Use it.
(grub-efi-netboot-removable-bootloader): New variable.
* gnu/packages/bootloaders.scm (make-grub-efi-netboot): New procedure.

Signed-off-by: Maxim Cournoyer <maxim.cournoyer@gmail.com>
Modified-by: Maxim Cournoyer <maxim.cournoyer@gmail.com>
2022-12-01 14:31:28 -05:00
Ricardo Wurmus 1a63aea943 linux-container: Do not replace nscd-service-type.
* gnu/system/linux-container.scm (containerized-operating-system): Respect
customizations to the nscd-service-type and only modify the caches field.
2022-12-01 19:52:13 +01:00
Maxim Cournoyer df25165530 gnu: u-boot-pinebook-pro-rk3399: Fix indentation.
* gnu/packages/bootloaders.scm (u-boot-pinebook-pro-rk3399): Fix indentation.
2022-12-01 11:57:10 -05:00
Maxim Cournoyer 24b0fe3463 gnu: u-boot-rockpro64-rk3399: Fix indentation.
* gnu/packages/bootloaders.scm (u-boot-rockpro64-rk3399): Fix indentation.
2022-12-01 11:57:10 -05:00
Maxim Cournoyer a18aaa26dc gnu: u-boot-firefly-rk3399: Fix indentation.
* gnu/packages/bootloaders.scm (u-boot-firefly-rk3399): Fix indentation.
2022-12-01 11:57:10 -05:00
Maxim Cournoyer d1ef19e76e gnu: u-boot-puma-rk3399: Fix indentation.
* gnu/packages/bootloaders.scm (u-boot-puma-rk3399): Fix indentation.
2022-12-01 11:57:10 -05:00
Maxim Cournoyer 8cac149ec5 gnu: u-boot-nintendo-nes-classic-edition: Fix indentation.
* gnu/packages/bootloaders.scm
(u-boot-nintendo-nes-classic-edition): Fix indentation.
2022-12-01 11:57:09 -05:00
Maxim Cournoyer e99dc7353f gnu: make-u-boot-package: Fix indentation.
* gnu/packages/bootloaders.scm (make-u-boot-package): Fix indentation.
2022-12-01 11:57:09 -05:00
Maxim Cournoyer 8d1d209ffe gnu: u-boot-tools: Fix indentation.
* gnu/packages/bootloaders.scm (u-boot-tools): Fix indentation.
2022-12-01 11:57:09 -05:00
Maxim Cournoyer 650636baca gnu: dtc: Fix indentation.
* gnu/packages/bootloaders.scm (dtc): Fix indentation.
2022-12-01 11:57:09 -05:00
Maxim Cournoyer 76259d7305 gnu: grub-efi32: Fix indentation.
* gnu/packages/bootloaders.scm (grub-efi32): Fix indentation.
2022-12-01 11:57:09 -05:00
Maxim Cournoyer 1a1a5aad2c gnu: grub: Normalize indentation.
* gnu/packages/bootloaders.scm (grub): Re-indent package and remove trailing #t.
2022-12-01 11:57:08 -05:00
Stefan a3f638e748 build: kconfig: Add new module to modify defconfig files.
* guix/build/kconfig.scm: New file.
* Makefile.am: Register it.
* gnu/packages/bootloaders.scm (make-u-boot-package)
(make-u-boot-sunxi64-package): Add DEFCONFIGS and CONFIGS arguments.  Remove
dead code.
(u-boot-am335x-boneblack, u-boot-pinebook)
(u-boot-novena,u-boot-rockpro64-rk3399): Simplify packages by using the new
keyword arguments.

Signed-off-by: Maxim Cournoyer <maxim.cournoyer@gmail.com>
Modified-by: Maxim Cournoyer <maxim.cournoyer@gmail.com>
2022-12-01 11:57:06 -05:00
Maxim Cournoyer 748ec62882 gnu: linux-libre: Move info manual to doc output.
The kernel Linux is installed in the system profile, which means the manual
was not easily discoverable.  Move it to the "doc" output, so that users can
install the Linux documentation explicitly in their user profile without
pulling the whole Linux package.

* gnu/packages/linux.scm (make-linux-libre*) [outputs]: Conditionally add a
"doc" output.
[phases] {install-doc}: Install the info manual to the doc output, an create a
"linux" symlink to it for convenience.
* guix/build-system/linux-module.scm (make-linux-module-builder): Delete the
"doc" output, if present.
2022-12-01 10:53:49 -05:00
Stefan ad9d0f8e58 gnu: linux: Fix the extra-version parameter in make-linux-libre*.
* gnu/packages/linux.scm (make-linux-libre*)

[phases] {configure}: Remove now extraneous INPUTS argument and Move code
setting environment variables to...
{set-environment}: ... this new phase.  Patch the Makefile to accept
EXTRAVERSION from the environment.  Fix the usage of an empty extra-version
string.
{install}: Remove extraneous NATIVE-INPUTS argument.

Signed-off-by: Maxim Cournoyer <maxim.cournoyer@gmail.com>
Modified-by: Maxim Cournoyer <maxim.cournoyer@gmail.com>
2022-12-01 10:53:48 -05:00
Andrew Tropin 0823fd1aa9 services: network-manager: Add iwd backend support.
* gnu/services/networking.scm (network-manager-configuration)[iwd?]: New
field.
(network-manager-shepherd-service): Add iwd to requirements if needed.
* doc/guix.texi: Add information about iwd? option.
2022-12-01 18:56:24 +04:00
Andrew Tropin 7dddf0cc54 home: xdg: Export xdg-base/user-directories getters.
* gnu/home/services/xdg.scm: Export xdg-base/user-directories getters.
2022-12-01 18:56:23 +04:00
Ricardo Wurmus 4df7a71b25 gnu: sssd: Update to 2.8.1.
* gnu/packages/sssd.scm (sssd): Update to 2.8.1.
[source]: Remove obsolete patch.
* gnu/packages/patches/sssd-optional-systemd.patch: Remove file.
* gnu/local.mk (dist_patch_DATA): Remove patch.
2022-12-01 14:27:13 +01:00
Mădălin Ionel Patrașcu a712c07d6a gnu: Add r-metaneighbor.
* gnu/packages/bioconductor.scm (r-metaneighbor): New variable.
2022-12-01 11:41:05 +01:00
Efraim Flashner 9a1ad4a2a0 gnu: cook: Fix building.
* gnu/packages/cook.scm (cook)[native-inputs]: Replace bison with
bison-3.0.
2022-12-01 11:05:18 +02:00
Efraim Flashner 26744bca20 gnu: openrgb: Unbundle more libraries.
* gnu/packages/hardware.scm (openrgb)[source]: Adjust snippet to remove
more bundled dependencies.
2022-12-01 10:46:34 +02:00
Kaelyn Takata f726d2fd07 gnu: openrgb: Update to 0.8.
* gnu/packages/hardware.scm (openrgb): Update to 0.8.
[native-inputs]: Add qttools-5 for generating translations.

Signed-off-by: Efraim Flashner <efraim@flashner.co.il>
2022-12-01 10:46:15 +02:00
Efraim Flashner 42325fc373 gnu: eolie: Build with webkitgtk-with-libsoup2.
* gnu/packages/gnome.scm (eolie)[inputs]: Replace webkitgtk with
webkitgtk-with-libsoup2.
2022-12-01 08:59:37 +02:00
Ricardo Wurmus c381516366 gnu: r-plotly: Replace bundled minified JavaScript.
* gnu/packages/statistics.scm (r-plotly)[source]: Delete bundled minified
JavaScript files.
[arguments]: Add phase "process-javascript" to minify JavaScript.
[native-inputs]: Add esbuild, js-colourpicker, js-plotly, js-selectize, and
js-typedarray.
2022-11-30 23:53:13 +01:00
Efraim Flashner 357c66db7a gnu: texinfo-7: Update to 7.0.1.
* gnu/packages/texinfo.scm (texinfo-7): Update to 7.0.1.
2022-11-30 21:40:31 +02:00
Efraim Flashner 5e03354ef5 gnu: gst-plugins-bad: Skip elements/camerabin test on riscv64-linux.
* gnu/packages/gstreamer.scm (gst-plugins-bad)[arguments]: Skip the
elements/camerabin test on riscv64-linux too.
2022-11-30 21:03:32 +02:00
Guillaume Le Vaillant 26e1f39888 gnu: p2pool: Update to 2.6.
* gnu/packages/finance.scm (p2pool): Update to 2.6.
2022-11-30 13:54:17 +01:00
jgart via Guix-patches via ac7e2f21b0 gnu: Add cl-clavier.
* gnu/packages/lisp-xyz.scm (cl-clavier, ecl-clavier, sbcl-clavier):
  New variables.

Signed-off-by: Guillaume Le Vaillant <glv@posteo.net>
2022-11-30 13:28:42 +01:00
Guillaume Le Vaillant 5a6d0b5193 gnu: Remove unused patch.
This a followup to 9b714ec75e.

* gnu/packages/patches/sbcl-fix-build-on-arm64-with-clisp-as-host.patch:
  Delete file.
* gnu/local.mk (dist_patch_DATA): Remove it.
2022-11-30 13:17:36 +01:00
Ricardo Wurmus f0ee77a17e gnu: r-sendmailr: Update to 1.3-1.
* gnu/packages/statistics.scm (r-sendmailr): Update to 1.3-1.
2022-11-30 11:39:16 +01:00
Ricardo Wurmus a5c515dc57 gnu: r-text2vec: Update to 0.6.3.
* gnu/packages/cran.scm (r-text2vec): Update to 0.6.3.
2022-11-30 11:39:16 +01:00
Ricardo Wurmus ecabd344c9 gnu: r-proj4: Update to 1.0-12.
* gnu/packages/cran.scm (r-proj4): Update to 1.0-12.
2022-11-30 11:39:10 +01:00
Ricardo Wurmus cef2cbb295 gnu: r-biodb: Update to 1.6.1.
* gnu/packages/bioconductor.scm (r-biodb): Update to 1.6.1.
2022-11-30 11:28:48 +01:00
Ricardo Wurmus 95e62fb993 gnu: r-biocparallel: Update to 1.32.3.
* gnu/packages/bioconductor.scm (r-biocparallel): Update to 1.32.3.
2022-11-30 11:28:48 +01:00
Ricardo Wurmus 6b825d9cb9 gnu: r-alpine: Update to 1.24.0.
* gnu/packages/bioconductor.scm (r-alpine): Update to 1.24.0.
2022-11-30 11:28:44 +01:00
Efraim Flashner 8073467c1c gnu: rust-svd-parser-0.9: Rename to rust-svd-parser-0.10.
* gnu/packages/crates-io.scm (rust-svd-parser-0.9): Rename to
rust-svd-parser-0.10.
* gnu/packages/rust-apps.scm (svd2rust)[cargo-inputs]: Adjust
accordingly.
2022-11-30 11:52:31 +02:00
Efraim Flashner f845b2b223 gnu: crates-io: Resort some unsorted packages.
* gnu/packages/crates-io.scm (rust-clap-conf-0.1, rust-rt-format-0.8,
rust-enquote-1, rust-im-rc-15, rust-impl-codec-0.5, rust-impl-rlp-0.3,
rust-impl-serde-0.3, rust-impl-trait-for-tuples-0.2,
rust-indicatif-0.16, rust-inflections-1, rust-pam-sys-0.5,
rust-rustc-workplace-hack-1, rust-svd-parser-0.9, rust-svgtypes-0.5,
rust-sxd-document-0.3, rust-sxd-xpath-0.4, rust-xi-unicode-0.3): Sort
into their proper places.
(skim, skim-0.7, svd2rust): Move to ...
* gnu/packages/rust-apps.scm: ... here.
2022-11-30 11:51:38 +02:00