summaryrefslogtreecommitdiff
path: root/gnu/services/base.scm
AgeCommit message (Expand)Author
2020-04-22services: Add udev-rules-service helper....* doc/guix.texi (Base services): Add documentation for 'udev-rules-service'. Replace examples of 'udev-service-type' extension with 'udev-rules-service'. * gnu/services/base.scm (udev-rules-service): New procedure. Signed-off-by: Ludovic Courtès <ludo@gnu.org> Brice Waegeneire
2020-04-21services: Don't use the deprecated 'make-forkexec-constructor' call....Passing 'make-forkexec-constructor' a string or several string arguments has been deprecated since dmd 0.1. * gnu/services/base.scm (rngd-service-type): In 'start' method, pass a list as the first argument to 'make-forkexec-constructor'. * gnu/services/desktop.scm (bluetooth-shepherd-service): Likewise. * gnu/services/spice.scm (spice-vdagent-shepherd-service): Likewise. Ludovic Courtès
2020-04-17services: Move 'user-processes' to (gnu services shepherd)....* gnu/services/base.scm (%do-not-kill-file) (user-processes-shepherd-service, user-processes-service-type): Move to... * gnu/services/shepherd.scm: ... here. Ludovic Courtès
2020-04-07services: guix: Add 'set-http-proxy' action....Fixes <https://bugs.gnu.org/25569>. Reported by Divan Santana <divan@santanas.co.za>. * gnu/services/base.scm (shepherd-set-http-proxy-action): New procedure. (guix-shepherd-service): Add 'actions' field. Change 'start' to a lambda; check the value of the "http_proxy" environment variable and add "http_proxy" and "https_proxy" to #:environment-variables as a function of that. * gnu/tests/base.scm (run-basic-test)["guix-daemon set-http-proxy action", "guix-daemon set-http-proxy action, clear"]: New tests. * doc/guix.texi (Base Services): Document it. Ludovic Courtès
2020-04-06services: syslog: Create log files as non-world-readable....Partly fixes <https://bugs.gnu.org/40405>. Reported by Diego Nicola Barbato <dnbarbato@posteo.de>. * gnu/services/base.scm (syslog-service-type): Change 'start' method to set umask to #o137 before spawning syslogd. * gnu/tests/base.scm (run-basic-test)["/var/log/messages is not world-readable"]: New test. Ludovic Courtès
2020-04-06services: Add 'rottlog-service-type' to '%base-services'....* gnu/services/base.scm (%base-services): Add an instance of ROTTLOG-SERVICE-TYPE. * doc/guix.texi (Log Rotation): Mention that it's part of %BASE-SERVICES and change example. Ludovic Courtès
2020-03-23services: console-font: Fix docstring....* gnu/services/base.scm (console-font-service-type): Use quasiquote and unquote appropriately in docstring. Ludovic Courtès
2020-03-07gnu: eudev: Add variant with corrected Btrfs rules....Discussed at <https://bugs.gnu.org/39926>. * gnu/packages/linux.scm (eudev/btrfs-fix): New variable. * gnu/services/base.scm (<udev-configuration>)[udev]: Default to it. (udev-service): Likewise for #:udev. Ludovic Courtès
2020-02-20services: udev: Do not rely on shepherd inheriting environment variables....Fixes <https://bugs.gnu.org/39671>. * gnu/services/base.scm (udev-shepherd-service)[start] Move or copy environment variables to 'fork+exec-command' instead of 'setenv'. Florian Pelz
2020-01-05services: host-name: Make service one-shot....* gnu/services/base.scm (host-name-service-type): Remove 'respawn?' keyword from shepherd-service-type, add 'one-shot?'. Efraim Flashner
2019-12-30services: console-font: Update example with HDPI font suggestion....This solution was kindly provided by Bernard M. Wiedemann. * gnu/services/base.scm (console-font-service-type): Add ter132n (terminus 132 nomal) font example, for HDPI displays. * doc/guix.texi (Invoking guix system): Update to `guix system search console' example output. Jan Nieuwenhuizen
2019-10-21services: agetty: Really import (gnu build linux-boot)....This is a followup to commit 62c2217570fb3a3437e8316d3679b7fe13db0884. * gnu/services/base.scm (agetty-shepherd-service)[start]: Wrap un 'with-imported-modules'. This fixes a build error when TTY is true ("no code for module (gnu build linux-boot)"). Ludovic Courtès
2019-10-06Merge branch 'master' into core-updatesRicardo Wurmus
2019-10-06services: udev: Explicitly depend on (gnu build linux-boot)....* gnu/services/base.scm (udev-shepherd-service): Wrap 'start' method in 'with-imported-modules'. Ludovic Courtès
2019-10-06services: agetty: Explicitly depend on (gnu build linux-boot)....* gnu/services/base.scm (default-serial-port): Wrap in 'with-imported-modules'. Ludovic Courtès
2019-10-05services: urandom-seed: Credit the entropy added to the PRNG....Partly fixes <https://bugs.gnu.org/37501>. Reported by Marius Bakke <mbakke@fastmail.com>. * gnu/services/base.scm (urandom-seed-shepherd-service): In 'start' method, add calls to 'add-to-entropy-count'. Ludovic Courtès
2019-10-02services: For "gdm-password" pam service, include "limits.conf"....* gnu/services/base.scm (pam-limits-service-type): For "gdm-password" pam service, include "limits.conf". Signed-off-by: Danny Milosavljevic <dannym@scratchpost.org> Jesse Gibbons
2019-09-12services: Fix /usr/bin/env special file target....This is a followup to a9162155975a131afa1e6a44262afbb7af91f7fd. * gnu/services/base.scm (%base-services): Fix "/usr/bin/env" target. Ludovic Courtès
2019-09-09services: Add ‘/usr/bin/env’ special file....* gnu/services/base.scm (%base-services): Add ‘/usr/bin/env‘ to special-files-service-type. Tobias Geerinckx-Rice
2019-09-06Revert "services: Add ‘/usr/bin/env’ special file."...This reverts commit 3b38bf141a464e1bb370af7d2b2651d1efb29781. The Guix project discussed this years ago and decided against including /usr/bin/env. That decision should not be reversed without a wider discussion. Mark H Weaver
2019-09-06services: Fix typo....This is a follow-up to 3b38bf141a464e1bb370af7d2b2651d1efb29781. * gnu/services/base.scm (%base-services): Remove duplicated line. Efraim Flashner
2019-09-06services: Add ‘/usr/bin/env’ special file....* gnu/services/base.scm (%base-services): Add ‘/usr/bin/env‘ to special-files-service-type. Tobias Geerinckx-Rice
2019-08-22services: console-fonts: Update docstring....* gnu/services/base (console-font-service-type): Add documentation about valid arguments. Co-authored-by: Ludovic Courtès <ludo@gnu.org> John Soo
2019-06-29etc: Remove hydra.gnu.org.pub key....* etc/substitutes/hydra.gnu.org.pub: Delete file. * guix/self.scm (miscellaneous-files): Don't install it. * Makefile.am (dist_pkgdata_DATA): Remove it. * gnu/services/base.scm (%default-authorized-guix-keys): Likewise. (hydra-key-authorization): Rename to… (substitute-key-authorization): …this. Adjust only call site. Tobias Geerinckx-Rice
2019-06-10services: guix-publish: Configure log rotation....* gnu/services/base.scm (%guix-publish-log-rotations): New variable. (guix-publish-service-type): Extend the rottlog-service-type. Christopher Baines
2019-06-10services: guix-publish: Log to a file....This makes it easier to read the output, as it's recorded in a file. * gnu/services/base.scm (guix-publish-shepherd-service): Add #:log-file to make-forkexec-constructor. Christopher Baines
2019-06-03services: guix-publish: Allow for multi-compression....This is a followup to b8fa86adfc01205f1d942af8cb57515eb3726c52. * guix/deprecation.scm (warn-about-deprecation): Make public. * gnu/services/base.scm (<guix-publish-configuration>)[compression]: New field. [compression-level]: Default to #f. Add '%' to getter name. (guix-publish-configuration-compression-level): Define as deprecated. (default-compression): New procedure. (guix-publish-shepherd-service)[config->compression-options]: New procedure. Use 'match-record' instead of 'match'. * doc/guix.texi (Base Services): Remove 'compression-level' and document 'compression'. Ludovic Courtès
2019-05-15tests: Skip unreliable "herd invalidate nscd" test....* gnu/tests/base.scm (run-basic-test)["nscd invalidate action, wrong table"]: Skip unconditionally. Ludovic Courtès
2019-05-09services: Log-in services now require "pam_loginuid"....Fixes <https://bugs.gnu.org/35553>. Reported by Bruno Haible <bruno@clisp.org>. * gnu/services/base.scm (login-pam-service): Pass #:login-uid? #t to 'unix-pam-service'. * gnu/services/ssh.scm (lsh-pam-services, openssh-pam-services): Likewise. * gnu/services/xorg.scm (slim-pam-service): Likewise. (gdm-pam-service): Likewise for "gdm-autologin" and "gdm-password". * gnu/tests/base.scm (run-basic-test)["getlogin on tty1"]: New test. * gnu/tests/ssh.scm (run-ssh-test): Add #:test-getlogin? parameter. ["getlogin"]: New test. (%test-dropbear): Pass #:test-getlogin? #f. Ludovic Courtès
2019-04-27services: file-system: Filter what goes to /etc/fstab....Fixes a longstanding issue whereby, due to our long fstab that included pseudo file systems like cgroup mounts, graphical file managers would display all of these. Initially reported at <https://lists.gnu.org/archive/html/help-guix/2017-11/msg00084.html>. * gnu/services/base.scm (file-system-fstab-entries): New procedure. (file-system-service-type): Use it to extend FSTAB-SERVICE-TYPE. Ludovic Courtès
2019-04-05services: console-keymap: Deprecate....* gnu/services/base.scm (console-keymap-service): Mark as deprecated. * doc/guix.texi (Base Services): Remove its documentation. Ludovic Courtès
2019-04-04gexp: Remove workarounds for <https://bugs.gnu.org/15602>....* gnu/services/base.scm (hydra-key-authorization)[aaa]: Remove. [default-acl]: Don't import it. * guix/scripts/pack.scm (store-database)[build]: Don't import (gnu build install). Ludovic Courtès
2019-03-13Remove traces of "GuixSD"....* gnu/bootloader/extlinux.scm (extlinux-configuration-file): Remove mentions of "GuixSD". * gnu/bootloader/grub.scm (install-grub-efi): Likewise. * gnu/build/vm.scm (make-iso9660-image): Change default #:volume-id to "Guix_image". (initialize-hard-disk): Search for the "Guix_image" label. * gnu/ci.scm (system-test-jobs, tarball-jobs): Remove "GuixSD". * gnu/installer/newt/welcome.scm (run-welcome-page): Likewise. * gnu/packages/audio.scm (supercollider)[description]: Likewise. * gnu/packages/curl.scm (curl): Likewise. * gnu/packages/emacs.scm (emacs): Likewise. * gnu/packages/gnome.scm (network-manager): Likewise. * gnu/packages/julia.scm (julia): Likewise. * gnu/packages/linux.scm (alsa-plugins): Likewise. (powertop, wireless-regdb): Likewise. * gnu/packages/package-management.scm (guix): Likewise. * gnu/packages/polkit.scm (polkit): Likewise. * gnu/packages/tex.scm (texlive-bin): Likewise. * gnu/services/base.scm (file-systems->fstab): Likewise. * gnu/services/cups.scm (%cups-activation): Likewise. * gnu/services/mail.scm (%dovecot-activation): Likewise. * gnu/services/messaging.scm (prosody-configuration)[log]: Likewise. * gnu/system/examples/vm-image.tmpl (vm-image-motd): Likewise. * gnu/system/install.scm (installation-os)[file-systems]: Change root file system label to "Guix_image". * gnu/system/mapped-devices.scm (check-device-initrd-modules): Remove "GuixSD". * gnu/system/vm.scm (system-docker-image): Likewise. (system-disk-image)[root-label]: Change to "Guix_image". * gnu/tests/install.scm (run-install): Remove "GuixSD". * guix/modules.scm (guix-module-name?): Likewise. * nix/libstore/optimise-store.cc: Likewise. Ludovic Courtès
2019-03-10services: guix: Pre-compute the default ACL....This makes the first boot slightly faster. * gnu/services/base.scm (not-config?): New procedure. (hydra-key-authorization): Rewrite to pre-compute the default ACL, and pre-compute it using (guix pki) directly. Ludovic Courtès
2019-03-10services: guix: Allocate build user UIDs in the system range....Until now we were allocating the UIDs of build users above 30000, which is in "normal" user UID range. This static allocation was unnecessary, so this change lets the system allocate UIDs in the system range (below 1000). * gnu/services/base.scm (guix-build-accounts): Remove #:first-uid, and remove 'uid' field from 'user-account'. Ludovic Courtès
2019-01-20gnu: %base-services: Use *getty-service-type....* gnu/services/base.scm (%base-services): Replace agetty-service with agetty-service-type, mingetty-service with mingetty-service-type. Efraim Flashner
2019-01-20gnu: %base-services: Use login-service-type....* gnu/services/base.scm (login-service-type)[default-value]: New field. (%base-services): Replace login-service with login-service-type. Efraim Flashner
2019-01-20services: %base-services: Use udev-service-type....* gnu/services/base.scm (udev-configuration): Fix typo. (udev-service-type)[default-value]: New field. (%base-services): Replace udev-service with udev-service-type. Efraim Flashner
2019-01-20services: %base-services: Use nscd-service-type....* gnu/services/base.scm (nscd-service-type)[default-value]: New field. (%base-services): Replace nscd-service with nscd-service-type. Efraim Flashner
2019-01-20services: Use guix-service-type....* gnu/services/base.scm (%base-services): Replace guix-service with guix-service-type. * gnu/system/examples/docker-image.tmpl (services): Same. Efraim Flashner
2019-01-17services: kmscon: Remove virtual-terminal requirement....kmscon does not require that virtual terminals run in UTF-8 mode. * gnu/services/base.scm (kmscon-service-type): Remove virtual-terminal from requirement list. Mathieu Othacehe
2019-01-11services: Deprecate a few more service procedures....These procedures were already either undocumented (and de facto deprecated) or documented as deprecated or redundant. * gnu/services/base.scm (guix-service, guix-publish-service): Mark as deprecated. * gnu/services/mcron.scm (mcron-service): Likewise. * gnu/services/networking.scm (tor-service): Likewise. * doc/guix.texi (Scheduled Job Execution): Remove 'mcron-service' and adjust example. (Networking Services): Remove 'tor-service'. * gnu/tests/base.scm (%mcron-os): Use 'mcron-service-type' instead of 'mcron-service'. * gnu/tests/networking.scm (%tor-os): Use 'tor-service-type' instead of 'tor-service'. * tests/guix-system.sh: Likewise. Ludovic Courtès
2019-01-10services: Use 'define-deprecated' for service procedures....* gnu/services/base.scm (urandom-seed-service, gpm-service): Define using 'define-deprecated'. * gnu/services/messaging.scm (bitlbee-service): Likewise. * gnu/services/networking.scm (dhcp-client-service): Likewise. (ntp-service): Likewise. * gnu/services/xorg.scm (slim-service): Likewise. (gdm-service): Likewise. Ludovic Courtès
2018-12-17services: udev: Add 'rules' action....* gnu/services/base.scm (udev-shepherd-service): Add 'actions' field. * doc/guix.texi (Base Services): Move "@end deffn" after 'udev-service' definition. Mention 'herd rules udev'. Ludovic Courtès
2018-12-10services: guix: Run 'guix-daemon' in UTF-8 locale....Fixes <https://bugs.gnu.org/32942>. Reported by Julien Lepiller <julien@lepiller.eu>. * gnu/services/base.scm (guix-shepherd-service) <start>: In #:environment-variables, add "GUIX_LOCPATH" and "LC_ALL". Ludovic Courtès
2018-12-05services: guix-daemon: Fix authorization of multiple keys....Previously, the 'unless (file-exists? "/etc/guix/acl")' guard would mean that only the first key in the list would get registered since were were generating one registration snippet per key. This fixes that. * gnu/services/base.scm (hydra-key-authorization): Change to be a 'for-each' loop iterating on #$KEYS. Ludovic Courtès
2018-12-04Remove most references to hydra.gnu.org....* Makefile.am (assert-binaries-available): Don't mention hydra.gnu.org in comment. * build-aux/check-available-binaries.scm: Likewise. * build-aux/check-final-inputs-self-contained.scm: Likewise. * doc/guix.texi (SUBSTITUTE-SERVER): New variable. Use it throughout instead of "mirror.hydra.gnu.org". * doc/contributing.texi (Submitting Patches): Likewise. * gnu/services/base.scm (hydra-key-authorization) (guix-activation): Remove mentions of "hydra.gnu.org" in comments and messages. * gnu/system/install.scm (%installation-services): Likewise. * guix/scripts/size.scm (guix-size): Likewise. Ludovic Courtès
2018-11-13services: nscd: Add 'invalidate' and 'statistics' actions....* gnu/services/base.scm (nscd-action-procedure, nscd-actions): New procedures. (nscd-shepherd-service): Add 'modules' and 'actions' fields. * gnu/tests/base.scm (run-basic-test)["nscd invalidate action"] ["nscd invalidate action, wrong table"]: New tests. * doc/guix.texi (Services): Mention 'herd doc nscd action'. (Base Services): Document the actions. Ludovic Courtès
2018-11-07services: kmscon: Add an auto-login option....Add an auto-login option that behaves as the one of mingetty-service. * gnu/services/base.scm (kmscon-configuration)[auto-login]: New field. (kmscon-service-type): Pass it to kmscon command. * doc/guix.texi (Base Services): Document it. Mathieu Othacehe
2018-11-07services: kmscon: Do not switch to vt at start....* gnu/services/base.scm (kmscon-service-type): Add "--no-switchvt" to kmscon command. Mathieu Othacehe