aboutsummaryrefslogtreecommitdiff
path: root/AUTHORS
blob: 1e30a74a64f51ec735dcc44ff4dfe5fa4fa13c6f (about) (plain)
1
2
3
4
5
6
7
8
9
GNU Guix consists of Scheme code that implements the deployment model
of the Nix package management tool.  In fact, it currently talks to a
build daemon whose code comes from Nix (see the manual for details.)

Nix was initially written by Eelco Dolstra; other people have been
contributing to it.  See `nix/AUTHORS' for details.

The list of GNU Guix contributors is now generated from the output of
'git log' and written to this file, as can be seen in release tarballs.
td>Simon Tournier * gnu/services/admin.scm (<rottlog-configuration>): Rename accessors rottlog-rottlog to rottlog-configuration-rottlog, rottlog-rc-file to rottlog-configuration-rc-file, rottlog-rotations to rottlog-configuration-rotations, rottlog-jobs to rottlog-configuration-jobs. (rottlog-etc, rottlog-jobs-or-default, rottlog-service-type): Adjust accordingly. 2023-10-20services: nftables: Tighten the default rules.Tomas Volf Packets for local host IP ranges should be coming only over lo. If that is not the case, we should drop them. Use iif for the check instead of iifname, lo is guaranteed to exists, and iif is faster. * gnu/services/networking.scm (%default-nftables-ruleset): Tighten the rules. Signed-off-by: Ludovic Courtès <ludo@gnu.org> 2023-10-14services: dhcp-client-service-type: Support DDNS.Lilah Tascheter * gnu/services/networking.scm (dhcp-client-shepherd-service): Enable -I flag on dhclient. Co-authored-by: Ludovic Courtès <ludo@gnu.org> 2023-10-12services: cuirass: Add ‘log-expiry’ option for ‘remote-server’.Ludovic Courtès * gnu/services/cuirass.scm (<cuirass-remote-server-configuration>)[log-expiry]: New field. (cuirass-shepherd-service): Honor it. * doc/guix.texi (Continuous Integration): Document it. 2023-10-11services: static-networking: Add support for bonding.Alexey Abramov * gnu/services/base.scm (<network-link>): Add mac-address field. Set type field to #f by default, so it won't be mandatory. network-link without a type will be used for existing interfaces. (assert-network-link-mac-address, mac-address?): Add sanitizer. Allow valid mac-address or #f. (assert-network-link-type): Add sanitizer. Allow symbol or #f. * gnu/services/base.scm (network-set-up/linux, network-tear-down/linux): Adapt to new structure. * doc/guix.texi (Networking Setup): Document it. * gnu/tests/networking.scm (run-static-networking-advanced-test): New variable. Signed-off-by: Ludovic Courtès <ludo@gnu.org> 2023-10-07services: configuration: Add some commonly used predicates.Bruno Victal * gnu/services/configuration.scm (list-of-packages?, list-of-symbols?): New predicate. * gnu/services/audio.scm (list-of-symbol?): Remove. * gnu/services/telephony.scm (string-list?): Remove. (serialize-string-list): Rename to … (serialize-list-of-strings): … this. (account-fingerprint-list?, jami-account-list?): Use list-of. * doc/guix.texi: Update it. Signed-off-by: Maxim Cournoyer <maxim.cournoyer@gmail.com> 2023-10-07services: fstrim-service-type: Serialize with SRFI-171 transducers.Bruno Victal * gnu/services/linux.scm (serialize-fstrim-configuration): Refactor to use base-transducer. Signed-off-by: Maxim Cournoyer <maxim.cournoyer@gmail.com> 2023-10-07services: configuration: Use transducers within serialize-configuration.Bruno Victal Introduces 'base-transducer', a SRFI-171 based transducer that can be used as a starting point for writing custom configuration record serializing procedures. This also fixes the symbol maybe-value serialization test case. * gnu/services/configuration.scm (empty-serializer?): New predicate. (base-transducer, tfilter-maybe-value): New procedure. (serialize-configuration): Adapt to use base-transducer. * gnu/services/telephony.scm (jami-account->alist): Use transducers to skip fields that are unserializable or whose field maybe-value is unset. * tests/services/configuration.scm: Remove test-expect-fail. Signed-off-by: Maxim Cournoyer <maxim.cournoyer@gmail.com> 2023-10-07services: configuration: Simplify normalize-extra-args.Bruno Victal * gnu/services/configuration.scm (define-configuration-helper, normalize-extra-args): Use #f instead of %unset-value. Signed-off-by: Maxim Cournoyer <maxim.cournoyer@gmail.com> 2023-10-05services: hurd-vm: Leave root password uninitialized when offloading.Ludovic Courtès Starting with 953c65ffdd43c02c934518fb7a1c68542584b223, offloading to the Hurd VM would be enabled by default. However, ‘root’ had an empty password so any user on the host could connect to the VM over VNC, log in as root, and potentially populate the host’s store from there. This change fixes that. * gnu/services/virtualization.scm (operating-system-with-locked-root-account): New procedure. (hurd-vm-disk-image)[transform]: Add ‘operating-system-with-locked-root-account’ when offloading. 2023-10-05services: mcron: Hide ‘mkdir-p’ from (shepherd support).Ludovic Courtès This a avoids a Guile warning about the name collision with (guix build utils). The warning was introduced by commit e0e85f2b2396c69d078caad9bd8e1a0fddf33a4a. * gnu/services/mcron.scm (mcron-shepherd-services): Hide ‘mkdir-p’. 2023-10-02services: mcron: Do not #:select ‘%user-log-dir’.Ludovic Courtès * gnu/services/mcron.scm (mcron-shepherd-services): Do not #:select ‘%user-log-dir’ from (shepherd support) since it’s missing in the Shepherd 0.8, which is still used on GNU/Hurd. 2023-10-02gnu: cuirass: Update to 797b26a.Ludovic Courtès * gnu/packages/ci.scm (cuirass): Update to 797b26a. * gnu/services/cuirass.scm (cuirass-activation): Create /var/run/cuirass. 2023-10-01services: hurd-vm: Implement zero-configuration offloading.Ludovic Courtès This allows for zero-configuration offloading to a childhurd. * gnu/services/virtualization.scm (operating-system-with-offloading-account): New procedure. (<hurd-vm-configuration>)[offloading?]: New field. (hurd-vm-disk-image): Define ‘transform’ and use it. (hurd-vm-activation): Generate SSH key for user ‘offloading’ and add authorize it via /etc/childhurd/etc/ssh/authorized_keys.d. (hurd-vm-configuration-offloading-ssh-key) (hurd-vm-guix-extension): New procedures. (hurd-vm-service-type): Add GUIX-SERVICE-TYPE extension. * gnu/tests/virtualization.scm (run-childhurd-test)[import-module?]: New procedure. [os]: Add (gnu build install) and its closure to #:import-modules. [test]: Add “copy-on-write store” and “offloading” tests. * doc/guix.texi (Virtualization Services): Document it. 2023-10-01services: hurd-vm: Disable password-based authentication for root.Ludovic Courtès With offloading to a childhurd is enabled, allowing password-less root login in the childhurd to anyone amounts to providing write access to the host’s store to anyone. Thus, disable password-based root logins in the childhurd. * gnu/services/virtualization.scm (%hurd-vm-operating-system): Change ‘permit-root-login’ to 'prohibit-password. * gnu/tests/virtualization.scm (%childhurd-os): Provide a custom ‘os’ field for ‘hurd-vm-configuration’. * doc/guix.texi (Virtualization Services): Remove mention of password-less root login. 2023-10-01services: hurd-vm: ‘image’ field has to be an <image> record.Ludovic Courtès * gnu/services/virtualization.scm (<hurd-vm-configuration>)[image]: Document as being an <image> record. (hurd-vm-disk-image): Remove call to ‘system-image’. (hurd-vm-shepherd-service): Add call to ‘system-image’. * gnu/tests/virtualization.scm (hurd-vm-disk-image-raw): Remove call to ‘system-image’. * doc/guix.texi (Virtualization Services): Adjust accordingly. 2023-10-01services: childhurd: Authorize the childhurd’s key on the host.Ludovic Courtès This partly automates setting up a childhurd for offloading purposes. * gnu/services/virtualization.scm (authorize-guest-substitutes-on-host): New procedure. (hurd-vm-activation): Use it. 2023-10-01services: guix: Support declarative offloading setup.Ludovic Courtès * gnu/services/base.scm (guix-machines-files-installation): New procedure. (<guix-configuration>)[build-machines]: New field. (guix-activation): Call ‘ guix-machines-files-installation’. (<guix-extension>)[build-machines]: New field. (guix-extension-merge): Handle it. (guix-service-type)[extend]: Likewise. * doc/guix.texi (Daemon Offload Setup): Add note linking to ‘guix-configuration’. (Base Services): Document ‘build-machines’ field of <guix-configuration> and of <guix-extension>. (Virtualization Services): Add ‘hurd-vm’ anchor. 2023-10-01services: guix: Use the right locale package on GNU/Hurd.Ludovic Courtès Fixes a bug introduced in 0dd293b4d9095137c9952e16ca951f887b7e7018 whereby guix-daemon on GNU/Hurd would have ‘GUIX_LOCPATH’ set to the “wrong” locale data (2.35 instead of 2.37). Consequently, it would fail to setlocale(3) and calls to ‘std::stoi’ (when reading the output of ‘guix authenticate’) would throw, leading to this error message of guix-daemon: unexpected build daemon error: stoi This would manifest when sending store items to a childhurd: $ guix copy --to=localhost:10022 sed guix copy: sending 1 store item (1 MiB) to 'localhost'... guix copy: error: unknown error while sending files over SSH The “unknown error” is the ‘stoi’ exception. This commit fixes that, but for the ‘guix-daemon’ service only. * gnu/services/base.scm (guix-shepherd-service)[locales]: New variable. Use it instead of ‘glibc-utf8-locales’. 2023-10-01services: hurd-vm: Use the default SSH port number.Ludovic Courtès * gnu/services/virtualization.scm (%hurd-vm-operating-system): Remove ‘port-number’ from ‘openssh-configuration’. (hurd-vm-net-options): Change 2222 to 22 in port forwarding. 2023-09-22services: nftables: Add 'configuration' action.Marius Bakke * gnu/services/networking.scm (nftables-shepherd-service)[actions]: New field. 2023-09-18services: hurd-vm: Use ‘qemu-system-x86_64’.Ludovic Courtès Fixes <https://issues.guix.gnu.org/66053>. * gnu/services/virtualization.scm (hurd-vm-shepherd-service)[vm-command]: Use ‘qemu-system-x86_64’. 2023-09-17services: dhcp-client: Fix name of the provision accessor.Ludovic Courtès This is a followup to 04f71edb73205d0bb82404de28a70ae17b897429. * gnu/services/networking.scm (<dhcp-client-configuration>)[shepherd-provision]: Fix accessor name. 2023-09-17services: dhcp-client-configuration: Allow provision override.Alexey Abramov * gnu/services/networking.scm (<dhcp-client-configuration>)[shepherd-provision]: New field. (dhcp-client-shepherd-service): Honor it. * doc/guix.texi (Networking Setup): Document it. Co-authored-by: Ludovic Courtès <ludo@gnu.org> 2023-09-17services: syncthing: Ensure that service runs after mounting home directories.Adam Maleszka Sometimes `syncthing-service-type' fails during startup because it tries to read configuration files from the user's home directory: Failure on home directory: mkdir /home/xyz/.config: permission denied This patch adds `user-processes' to the shepherd service requirements to ensure that `user-homes' is fired before `syncthing' tries to read data from the home directory. * gnu/services/syncthing.scm (syncthing-shepherd-service): add `user-processes' to requirements Signed-off-by: Ludovic Courtès <ludo@gnu.org> 2023-09-15services: bffe: Use guile from the package.Christopher Baines Rather than hardcoding a particular guile in the service definition. * gnu/services/guix.scm (bffe-shepherd-services): Use guile from the package. * gnu/packages/package-management.scm (bffe)[inputs]: Remove unnecessary guile-next input. 2023-09-15services: guix: Add bffe-service-type.Christopher Baines This is intended to replace the functionality of the Guix Build Coordinator queue builds script, and also provide a web interface for build farms. * gnu/services/guix.scm (<bffe-configuration>): New record type. (bffe-configuration, bffe-configuration?, bffe-configuration-package, bffe-configuration-user, bffe-configuration-group, bffe-configuration-arguments bffe-configuration-extra-environment-variables): New procedures. (bffe-service-type): New variable. * gnu/tests/guix.scm (%test-bffe): New variable. * doc/guix.texi (Guix Services): Document the new service. 2023-09-09services: cgit: Allow file-like objects for ‘root-readme’.Thomas Albers * gnu/services/cgit.scm (cgit-configuration)[root-readme]: Accept 'file-object' instead of only 'string' Signed-off-by: Ludovic Courtès <ludo@gnu.org> 2023-09-09services: vpn: Fix broken format string for wireguard dns.Reily Siegel * gnu/services/vpn.scm (wireguard-configuration-file): Fix broken format string. Signed-off-by: Liliana Marie Prikler <liliana.prikler@gmail.com> 2023-09-08services: Open vSwitch: Depend on 'user-processes' target.Marius Bakke * gnu/services/networking.scm (openvswitch-shepherd-service)[ovsdb](requirement): Add user-processes. 2023-08-26services: nar-herder: Specify a working directory.Christopher Baines Mostly so that core dumps end up here. * gnu/services/guix.scm (nar-herder-shepherd-services): Specify a working directory. 2023-08-26services: guix-data-service: Specify a working directory.Christopher Baines Mostly so that core dumps end up here. * gnu/services/guix.scm (guix-data-service-shepherd-services): Specify a working directory. 2023-08-26services: guix-build-coordinator: Specify a working directory.Christopher Baines Mostly so that core dumps end up here. * gnu/services/guix.scm (guix-build-coordinator-shepherd-services): Specify a working directory. 2023-08-22services: mcron: Use (shepherd support) module unconditionally.Hilton Chain This fixes a issue introduced in the previous commit 552d0703776c (services: mcron: Add module for %user-log-dir.) which made the expression invalid when using a '() module for the system service. * gnu/services/mcron.scm (mcron-shepherd-services)[modules]: Use (shepherd support) unconditionally. 2023-08-22services: mcron: Add module for %user-log-dir.Hilton Chain * gnu/services/mcron.scm (mcron-shepherd-services)[modules]: Add (shepherd support) for home service. 2023-08-22services: file-database: Clarify 'excluded-directories' description.Ludovic Courtès * gnu/services/admin.scm (file-database-configuration)[excluded-directories]: Mention that these are regexps. (%default-file-database-excluded-directories): Likewise. * doc/guix.texi (File Search Services): Adjust accordingly.