summaryrefslogtreecommitdiff
path: root/gnu/services/base.scm
Commit message (Collapse)AuthorAge
* services: Add udev-rules-service helper.Brice Waegeneire2020-04-22
| | | | | | | | | * 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>
* services: Don't use the deprecated 'make-forkexec-constructor' call.Ludovic Courtès2020-04-21
| | | | | | | | | | 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.
* services: Move 'user-processes' to (gnu services shepherd).Ludovic Courtès2020-04-17
| | | | | | | * gnu/services/base.scm (%do-not-kill-file) (user-processes-shepherd-service, user-processes-service-type): Move to... * gnu/services/shepherd.scm: ... here.
* services: guix: Add 'set-http-proxy' action.Ludovic Courtès2020-04-07
| | | | | | | | | | | | | | 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.
* services: syslog: Create log files as non-world-readable.Ludovic Courtès2020-04-06
| | | | | | | | | | 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.
* services: Add 'rottlog-service-type' to '%base-services'.Ludovic Courtès2020-04-06
| | | | | | | * 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.
* services: console-font: Fix docstring.Ludovic Courtès2020-03-23
| | | | | * gnu/services/base.scm (console-font-service-type): Use quasiquote and unquote appropriately in docstring.
* gnu: eudev: Add variant with corrected Btrfs rules.Ludovic Courtès2020-03-07
| | | | | | | | 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.
* services: udev: Do not rely on shepherd inheriting environment variables.Florian Pelz2020-02-20
| | | | | | | 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'.
* services: host-name: Make service one-shot.Efraim Flashner2020-01-05
| | | | | * gnu/services/base.scm (host-name-service-type): Remove 'respawn?' keyword from shepherd-service-type, add 'one-shot?'.
* services: console-font: Update example with HDPI font suggestion.Jan Nieuwenhuizen2019-12-30
| | | | | | | | | 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.
* services: agetty: Really import (gnu build linux-boot).Ludovic Courtès2019-10-21
| | | | | | | | 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)").
* Merge branch 'master' into core-updatesRicardo Wurmus2019-10-06
|\
| * services: udev: Explicitly depend on (gnu build linux-boot).Ludovic Courtès2019-10-06
| | | | | | | | | | * gnu/services/base.scm (udev-shepherd-service): Wrap 'start' method in 'with-imported-modules'.
| * services: agetty: Explicitly depend on (gnu build linux-boot).Ludovic Courtès2019-10-06
| | | | | | | | | | * gnu/services/base.scm (default-serial-port): Wrap in 'with-imported-modules'.
| * services: For "gdm-password" pam service, include "limits.conf".Jesse Gibbons2019-10-02
| | | | | | | | | | | | | | * gnu/services/base.scm (pam-limits-service-type): For "gdm-password" pam service, include "limits.conf". Signed-off-by: Danny Milosavljevic <dannym@scratchpost.org>
* | services: urandom-seed: Credit the entropy added to the PRNG.Ludovic Courtès2019-10-05
|/ | | | | | | | 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'.
* services: Fix /usr/bin/env special file target.Ludovic Courtès2019-09-12
| | | | | | This is a followup to a9162155975a131afa1e6a44262afbb7af91f7fd. * gnu/services/base.scm (%base-services): Fix "/usr/bin/env" target.
* services: Add ‘/usr/bin/env’ special file.Tobias Geerinckx-Rice2019-09-09
| | | | | * gnu/services/base.scm (%base-services): Add ‘/usr/bin/env‘ to special-files-service-type.
* Revert "services: Add ‘/usr/bin/env’ special file."Mark H Weaver2019-09-06
| | | | | | | | 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.
* services: Fix typo.Efraim Flashner2019-09-06
| | | | | | This is a follow-up to 3b38bf141a464e1bb370af7d2b2651d1efb29781. * gnu/services/base.scm (%base-services): Remove duplicated line.
* services: Add ‘/usr/bin/env’ special file.Tobias Geerinckx-Rice2019-09-06
| | | | | * gnu/services/base.scm (%base-services): Add ‘/usr/bin/env‘ to special-files-service-type.
* services: console-fonts: Update docstring.John Soo2019-08-22
| | | | | | | * gnu/services/base (console-font-service-type): Add documentation about valid arguments. Co-authored-by: Ludovic Courtès <ludo@gnu.org>
* etc: Remove hydra.gnu.org.pub key.Tobias Geerinckx-Rice2019-06-29
| | | | | | | | | * 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.
* services: guix-publish: Configure log rotation.Christopher Baines2019-06-10
| | | | | * gnu/services/base.scm (%guix-publish-log-rotations): New variable. (guix-publish-service-type): Extend the rottlog-service-type.
* services: guix-publish: Log to a file.Christopher Baines2019-06-10
| | | | | | | 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.
* services: guix-publish: Allow for multi-compression.Ludovic Courtès2019-06-03
| | | | | | | | | | | | | | | | 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'.
* tests: Skip unreliable "herd invalidate nscd" test.Ludovic Courtès2019-05-15
| | | | | * gnu/tests/base.scm (run-basic-test)["nscd invalidate action, wrong table"]: Skip unconditionally.
* services: Log-in services now require "pam_loginuid".Ludovic Courtès2019-05-09
| | | | | | | | | | | | | | | | 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.
* services: file-system: Filter what goes to /etc/fstab.Ludovic Courtès2019-04-27
| | | | | | | | | | 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.
* services: console-keymap: Deprecate.Ludovic Courtès2019-04-05
| | | | | * gnu/services/base.scm (console-keymap-service): Mark as deprecated. * doc/guix.texi (Base Services): Remove its documentation.
* gexp: Remove workarounds for <https://bugs.gnu.org/15602>.Ludovic Courtès2019-04-04
| | | | | | | * 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).
* Remove traces of "GuixSD".Ludovic Courtès2019-03-13
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * 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.
* services: guix: Pre-compute the default ACL.Ludovic Courtès2019-03-10
| | | | | | | | 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.
* services: guix: Allocate build user UIDs in the system range.Ludovic Courtès2019-03-10
| | | | | | | | | | 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'.
* gnu: %base-services: Use *getty-service-type.Efraim Flashner2019-01-20
| | | | | * gnu/services/base.scm (%base-services): Replace agetty-service with agetty-service-type, mingetty-service with mingetty-service-type.
* gnu: %base-services: Use login-service-type.Efraim Flashner2019-01-20
| | | | | * gnu/services/base.scm (login-service-type)[default-value]: New field. (%base-services): Replace login-service with login-service-type.
* services: %base-services: Use udev-service-type.Efraim Flashner2019-01-20
| | | | | | * gnu/services/base.scm (udev-configuration): Fix typo. (udev-service-type)[default-value]: New field. (%base-services): Replace udev-service with udev-service-type.
* services: %base-services: Use nscd-service-type.Efraim Flashner2019-01-20
| | | | | * gnu/services/base.scm (nscd-service-type)[default-value]: New field. (%base-services): Replace nscd-service with nscd-service-type.
* services: Use guix-service-type.Efraim Flashner2019-01-20
| | | | | | * gnu/services/base.scm (%base-services): Replace guix-service with guix-service-type. * gnu/system/examples/docker-image.tmpl (services): Same.
* services: kmscon: Remove virtual-terminal requirement.Mathieu Othacehe2019-01-17
| | | | | | | 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.
* services: Deprecate a few more service procedures.Ludovic Courtès2019-01-11
| | | | | | | | | | | | | | | | | | 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.
* services: Use 'define-deprecated' for service procedures.Ludovic Courtès2019-01-10
| | | | | | | | | | * 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.
* services: udev: Add 'rules' action.Ludovic Courtès2018-12-17
| | | | | | * 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'.
* services: guix: Run 'guix-daemon' in UTF-8 locale.Ludovic Courtès2018-12-10
| | | | | | | | 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".
* services: guix-daemon: Fix authorization of multiple keys.Ludovic Courtès2018-12-05
| | | | | | | | | 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.
* Remove most references to hydra.gnu.org.Ludovic Courtès2018-12-04
| | | | | | | | | | | | | | | * 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.
* services: nscd: Add 'invalidate' and 'statistics' actions.Ludovic Courtès2018-11-13
| | | | | | | | | | * 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.
* services: kmscon: Add an auto-login option.Mathieu Othacehe2018-11-07
| | | | | | | | 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.
* services: kmscon: Do not switch to vt at start.Mathieu Othacehe2018-11-07
| | | | | * gnu/services/base.scm (kmscon-service-type): Add "--no-switchvt" to kmscon command.