summaryrefslogtreecommitdiff
path: root/doc
AgeCommit message (Collapse)Author
2025-02-23doc: Write about depending on the ‘user-processes’ Shepherd service.Ludovic Courtès
* doc/guix.texi (Shepherd Services): Add paragraph on ‘user-processes’. Suggested-by: Dariqq <[email protected]> Change-Id: I76fb11779eefc90d13dbc11368ddf64f7450f5e6
2025-02-23services: Add missing Shepherd dependency on ‘user-processes’.Ludovic Courtès
Fixes <https://issues.guix.gnu.org/76368>. * gnu/services/auditd.scm (auditd-shepherd-service): * gnu/services/base.scm (rngd-service-type): (gpm-shepherd-service): * gnu/services/ci.scm (laminar-shepherd-service): * gnu/services/containers.scm (rootless-podman-cgroups-fs-owner-service): (rootless-podman-cgroups-limits-service): * gnu/services/cups.scm (cups-shepherd-service): * gnu/services/databases.scm (postgresql-role-shepherd-service): * gnu/services/desktop.scm (upower-shepherd-service): (bluetooth-shepherd-service): (elogind-shepherd-service): (inputattach-shepherd-service): (seatd-shepherd-service): * gnu/services/dns.scm (knot-resolver-shepherd-services): (dnsmasq-shepherd-service): * gnu/services/docker.scm (containerd-shepherd-service): (docker-shepherd-service): * gnu/services/file-sharing.scm (transmission-daemon-shepherd-service): * gnu/services/games.scm (joycond-shepherd-service): (wesnothd-shepherd-service): * gnu/services/guix.scm (guix-build-coordinator-shepherd-services): (guix-data-service-shepherd-services): (nar-herder-shepherd-services): (bffe-shepherd-services): * gnu/services/ldap.scm (directory-server-shepherd-service): * gnu/services/linux.scm (cachefilesd-shepherd-service): (rasdaemon-shepherd-service): * gnu/services/mail.scm (dovecot-shepherd-service): (imap4d-shepherd-service): (radicale-shepherd-service): (rspamd-configuration): * gnu/services/monitoring.scm (prometheus-node-exporter-shepherd-service): (vnstat-shepherd-service): * gnu/services/networking.scm (opendht-shepherd-service): (openvswitch-shepherd-service): (pagekite-shepherd-service): (ipfs-shepherd-service): * gnu/services/nfs.scm (rpcbind-service-type): (gss-service-type): (idmap-service-type): * gnu/services/pm.scm (thermald-shepherd-service): * gnu/services/rsync.scm (rsync-shepherd-service): * gnu/services/samba.scm (samba-samba-shepherd-service): (samba-nmbd-shepherd-service): (samba-smbd-shepherd-service): (samba-winbindd-shepherd-service): (wsdd-shepherd-service): * gnu/services/security-token.scm (pcscd-shepherd-service): * gnu/services/sound.scm (speakersafetyd-shepherd-service): * gnu/services/spice.scm (spice-vdagent-shepherd-service): * gnu/services/ssh.scm (lsh-shepherd-service): (openssh-shepherd-service): (dropbear-shepherd-service): (autossh-shepherd-service): * gnu/services/telephony.scm (jami-shepherd-services): (mumble-server-shepherd-service): * gnu/services/version-control.scm (git-daemon-shepherd-service): * gnu/services/virtualization.scm (virtlogd-shepherd-service): * gnu/services/vnc.scm (xvnc-shepherd-service): * gnu/services/vpn.scm (openvpn-shepherd-service): (strongswan-shepherd-service): * gnu/services/web.scm (httpd-shepherd-services): (fcgiwrap-shepherd-service): (php-fpm-shepherd-service): (hpcguix-web-shepherd-service): (tailon-shepherd-service): (varnish-shepherd-service): (whoogle-shepherd-service): (mumi-shepherd-services): (gmnisrv-shepherd-service): (agate-shepherd-service): Add ‘user-processes’ requirement. * doc/guix.texi (Mail Services): Update accordingly. Reported-by: Dariqq <[email protected]> Change-Id: I947bd2afc83b786cb17c555cfe73ab586b806618
2025-02-21services: Add xen-guest-agent-service-type.Karl Hallsby
* gnu/services/virtualization.scm (xen-guest-agent-configuration, xen-guest-agent-service-type): New variables. * doc/guix.texi: Document them. Change-Id: Id1b1f4fc2b193d73f4401e74a214222dfe1b6ea7 Signed-off-by: Ludovic Courtès <[email protected]>
2025-02-19doc: Fix some misspellings.Efraim Flashner
Change-Id: I567aec7b1fac91234f46886c35affa6bd6e582d9
2025-02-17gnu: guix-configuration: Add a chroot? parameter.Andreas Enge
The parameter should take the values #t, #f or 'default. In a container environment, 'default amounts to #f, otherwise it amounts to #t. * gnu/services/base.scm (guix-configuration)<chroot?>: New field. (guix-shepherd-service): If chroot? is #f, add "--disable-chroot". If it is #t or 'default, do nothing. * gnu/system/linux-container.scm (containerized-operating-system): If chroot? is 'default, replace it by #f. * doc/guix.texi: Document the parameter. Change-Id: I8b9c3f46ad8650fa6ed4acee947b4ae5d002d03d
2025-02-17services: syncthing: Add support for declarative configuration.Zacchaeus
* gnu/services/syncthing.scm: (syncthing-config-file, syncthing-folder, syncthing-device, syncthing-folder-device): New records. (syncthing-service-type): Add special-files-service-type extension for the config file. (syncthing-files-service): Add service to create config file. * gnu/home/services/syncthing.scm: (home-syncthing-service-type): Extend home-files-services-type and re-exported more things from gnu/services/syncthing.scm. * doc/guix.texi: (syncthing-service-type): Document changes. Change-Id: I87eeba1ee1fdada8f29c2ee881fbc6bc4113dde9 Signed-off-by: Leo Famulari <[email protected]>
2025-02-16Revert "services: Switch to ‘shepherd-system-log-service-type’ in ↵Ludovic Courtès
‘%base-services’." This reverts commit c83bfc0415ba928b746362915d67600cdbb5da62 and the corresponding ‘etc/news.scm’ entry (commits 12bd93113c7a2ddf8c1db849550d1c0ae356f039 and 622568ec13b54ad8caaa7f67d1e8686073749b8b) while investigating <https://issues.guix.gnu.org/76315>. Change-Id: Ie26c24b8cd25cee3466cc871470b0bec9a5dfafb
2025-02-16gnu: guix-build-coordinator: Add the listen-repl configuration.Christopher Baines
* gnu/services/guix.scm (<guix-build-coordinator-configuration>): Add listen-repl. (guix-build-coordinator-configuration-listen-repl): New procedure. (make-guix-build-coordinator-start-script, guix-build-coordinator-shepherd-services): Use listen-repl. * doc/guix.texi (Guix Services): Document listen-repl. Change-Id: I49cac7cd3c4675f6ffed71320bb61dc7b008179a
2025-02-15services: Switch to ‘shepherd-system-log-service-type’ in ↵Ludovic Courtès
‘%base-services’. * gnu/services/base.scm (%base-services): Replace ‘syslog-service-type’ by ‘shepherd-system-log-service-type’. * doc/guix.texi (Base Services): Update ‘syslog-service-type’ documentation. (Shepherd Services): Mention that ‘system-log-service-type’ is in ‘%base-services’. Add anchor. Reviewed-by: Maxim Cournoyer <[email protected]> Change-Id: I21082300f6a052865a6ab1bdff27fbe71f73d492
2025-02-15services: Add ‘system-log’ Shepherd service.Ludovic Courtès
* gnu/services/shepherd.scm (gexp-or-integer?) (gexp-or-string?, gexp-or-string-or-false?): New procedures. (system-log-configuration): New record type. (shepherd-system-log-service-type): New variable. * doc/guix.texi (Shepherd Services): Document it. Reviewed-by: Maxim Cournoyer <[email protected]> Change-Id: I1e29fe0977eb4f8026ee6a2d2f282e269c8c00b4
2025-02-15services: Add speakersafetyd service.Roman Scherer
* gnu/services/sound.scm (speakersafetyd-shepherd-service) (speakersafetyd-configuration) (speakersafetyd-service-type): New variables. * doc/guix.texi (Sound Services): Document it. Change-Id: Ib8fa19b056a2036019ae7c199d81e1139664e951 Modified-by: Maxim Cournoyer <[email protected]> Signed-off-by: Maxim Cournoyer <[email protected]>
2025-02-13doc: Slight adjustment to network-manager-configuration.45mg
* doc/guix.texi (Networking Setup): Fix file names used in example. Change-Id: I07479958e4d0aa318328c666a9630b779230b300
2025-02-13services: network-manager: Add extra-configuration-files field.45mg
Allow users to specify additional configuration files for NetworkManager. These files will be added to /etc/NetworkManager/conf.d (NetworkManager's default configuration directory location). * gnu/services/networking.scm (<network-manager-configuration>) [extra-configuration-files]: New field. (network-manager-activation): Honor the new field. * doc/guix.texi (Networking Setup): Document the new field. Change-Id: I07479958e4d0aa318328c666a9630b779230b300 Modified-by: Maxim Cournoyer <[email protected]> Signed-off-by: Maxim Cournoyer <[email protected]>
2025-02-12doc: Recommend login as non-root user after installation.Simon Josefsson
* doc/guix.texi (After System Installation): Fix. Signed-off-by: Simon Josefsson <[email protected]> Signed-off-by: Ludovic Courtès <[email protected]>
2025-02-09machine: Implement 'hetzner-environment-type'.Roman Scherer
* Makefile.am (SCM_TESTS): Add test modules. * doc/guix.texi: Add documentation. * gnu/local.mk (GNU_SYSTEM_MODULES): Add modules. * gnu/machine/hetzner.scm: Add hetzner-environment-type. * gnu/machine/hetzner/http.scm: Add HTTP API. * po/guix/POTFILES.in: Add Hetzner modules. * tests/machine/hetzner.scm: Add machine tests. * tests/machine/hetzner/http.scm Add HTTP API tests. Change-Id: I276ed5afed676bbccc6c852c56ee4db57ce3c1ea Signed-off-by: Ludovic Courtès <[email protected]>
2025-02-09import: crate: Comment out missing dependencies.Herman Rimm
* guix/import/crate.scm (package-names->package-inputs): Emit comments. (make-crate-sexp): Make input into comment if missing. (crate->guix-package): Take #:mark-missing? argument. [dependency-name+missing+version+yanked]: Mark as missing. Rename from dependency-name+version+yanked. [sort-map-dependencies]: Adjust. [remove-missing+yanked-info]: Remove missing info. Rename from remove-yanked-info. * guix/scripts/import/crate.scm (show-help): Explain --mark-missing. (%options): Add mark-missing option. (guix-import-crate): Pass mark-missing option as #:mark-missing?. * doc/guix.texi (Invoking guix import): Document --mark-missing. * tests/crate.scm ("crate->guix-package-marks-missing-packages"): Add test. Change-Id: I065d394e1c04fdc332b8f7f8b9fcbd87c14c6512 Signed-off-by: Ludovic Courtès <[email protected]>
2025-02-07doc: Mention --check --no-grafts as a way to force-rebuild packages.Rostislav Svoboda
* doc/guix.texi (On Trusting Binaries): Document that combining --check and --no-grafts with 'guix build' forces the rebuild of a package. Change-Id: I4eb6be04243a52f70d0fc298f76e62f10e3d376e Co-authored-by: Leo Famulari <[email protected]> Signed-off-by: Leo Famulari <[email protected]>
2025-02-07services: Rename field in greetd-terminal-configuration record.Maxim Cournoyer
This was erroneously renamed during the review of commit ee0d1b144c ("services: greetd: Improve greeter configurations."). The field *adds* to the intrinsic requirements of the service, so the 'extra-' prefixes communicates this better. * gnu/services/base.scm (<greetd-terminal-configuration>): Rename shepherd-requirement field to extra-shepherd-requirement. * doc/guix.texi (Base Services): Adjust doc accordingly. Change-Id: I4b970bdd63864ed86d61fde9cad2487a293417ce
2025-02-06services: greetd: Add new gtkgreet greeter.muradm
* gnu/services/base.scm (<greetd-gtkgreet-sway-session>): New record, represents 'gtkgreet' greeter session configuration. * doc/guix.texi (Base Services): Document new 'gtkgreet' greeter. Change-Id: I2e8b5710965faa05795af1d0b2a0e2f774af1d5a Modified-by: Maxim Cournoyer <[email protected]> Signed-off-by: Maxim Cournoyer <[email protected]>
2025-02-06services: greetd: Improve greeter configurations.muradm
This improvement focuses on providing common user session scripts for use by multiple greeters. Now user session entry point is factored out into '<greetd-user-session>', which can be reused as is with different greeters. By default it uses 'bash' as first user process. Then user normally starts additional programs with '.profile' or '.bashrc'. Using 'command', 'command-args' and 'extra-env' one can specify something else, which could be 'dbus-session' wrapped process, some desktop environment or else. While the above is possible, one is still encouraged to use '.bashrc', '.profile' or similar. It also fixes incorrect use of 'XDG_RUNTIME_DIR' for 'wlgreet'. 'wlgreet' requires a compositor to run. We provide common sway based greeter script, which can be shared by other graphical greeters. * gnu/services/base.scm (<greetd-user-session>): Common user session factored out, for shared use by multiple greeters. (<greetd-agreety-session>): Switch to common user session. (<greetd-wlgreet-configuration>): Refactor 'wlgreet' configuration. (<greetd-wlgreet-sway-session>): Switch to common user session. (<greetd-terminal-configuration>): Add 'extra-shepherd-requirement' for establishing configurable Shepherd service dependency. * gnu/tests/desktop.scm (%minimal-services): Reflect configuration changes. * doc/guix.texi (Base Services): Document refactoring changes. Change-Id: I9d45a592b355eb9c438be5b1d4d15555ce4956fa Modified-by: Maxim Cournoyer <[email protected]> Signed-off-by: Maxim Cournoyer <[email protected]>
2025-02-05gnu: Remove extraneous reference to defunct xfce-desktop-service.Leo Famulari
This is a followup to commit a1fa23014718a63dca400f5db7800b72024cee28. Perhaps it was caused by a conflict resolution error during a rebase or merge? * gnu/services/desktop.scm: Stop exporting the non-existent variable xfce-desktop-service. * doc/guix.texi (Desktop Services): Adjust accordingly. Change-Id: I7ca24331365fa395fcee47de7ad0239e08aafbe3
2025-01-31gnu: xf86-input-keyboard: Remove Linux from supported systems.宋文武
* gnu/packages/xorg.scm (xf86-input-keyboard)[supported-systems]: New field. (xpra)[inputs]: Remove xf86-input-keyboard. * gnu/services/xorg.scm (%default-xorg-modules): Remove xf86-input-keyboard. * doc/guix.texi (X Window)[%default-xorg-modules]: Replace xf86-input-keyboard with xf86-input-libinput. Change-Id: Ia0b5c0289aa83e3afa7e71bef1785d6bddf6f017
2025-01-26services: dico: Add symbols to help users configure FreeDict with dicod.Runciter
* gnu/services/dict.scm: (dicod-freedict-database): New procedure; (%dicod-databases:freedict): new variable. * doc/guix.texi (Dictionary Service): Document them. Signed-off-by: Runciter <[email protected]> Signed-off-by: Ludovic Courtès <[email protected]> Change-Id: Id5b20e235b988953a66e0344872d1fa165c4c773
2025-01-26home: services: shepherd: Add ‘transient’ and ‘timer’ services.Ludovic Courtès
* gnu/home/services/shepherd.scm (home-shepherd-timer-service-type) (home-shepherd-transient-service-type): New variables. * doc/guix.texi (Shepherd Home Service): Document them. (Shepherd Services): Add anchor. Reviewed-by: Maxim Cournoyer <[email protected]> Change-Id: Ia4eb7cf043f4661c64f5ca81b8989a451532aa18
2025-01-26services: shepherd: Add ‘transient’ and ‘timer’.Ludovic Courtès
* gnu/services/shepherd.scm (shepherd-timer-service-type) (shepherd-transient-service-type): New variables. * doc/guix.texi (Shepherd Services): Document them. Change-Id: I9b622e7e947e7a6384c2701a313d0c7080a0a5f6
2025-01-25services: restic-backup: Implement as a Shepherd timer.Giacomo Leidi
This patch implements restic backup with Shepherd services. It is supposed not to break any existing setup. * gnu/services/backup.scm (restic-backup-job): Add Shepherd configuration options; (restic-backup-job->mcron-job): Replace with...; (restic-job-log-file): New procedure; (restic-backup-job->shepherd-service): New procedure; (restic-backup-activation): New procedure; (restic-backup-service-type): Replace mcron with Shepherd extension and add activation extension hook. * doc/guix.texi: Document it. Change-Id: I66de3b6a1cb6177f9e4ee0c2acf3013ecbcdd338 Signed-off-by: Ludovic Courtès <[email protected]>
2025-01-25guix: Add loongarch platform.Zheng Junjie
* Makefile.am (MODULES): Add loongarch platform module. * doc/guix.texi: Add documentation for loongarch platform. * guix/platforms/loongarch.scm (loongarch64-linux): New variable. Change-Id: I71b8f3cb3b2f0d9562bbbefdc1f2fc4b2dcc4fbb
2025-01-23doc: htmlxref.cnf: Fix link to The GNU Stow Manual.Tomas Volf
At the same time the reference text is adjusted. I found it confusing for link to the `Top' to be labeled `Introduction'. So let us just link to the `Introduction', it is probably what the author intended. * doc/htmlxref.cnf (stow): Add both mono and node versions. * doc/guix.texi (Essential Home Services): Link to `Introduction' node of GNU Stow's manual. Change-Id: Ib82d2eecfb655694a0af73e1aec9fcd68c3994e3 Signed-off-by: Maxim Cournoyer <[email protected]>
2025-01-23doc: htmlxref.cnf: Add link to debbugs-ug.Tomas Volf
* doc/htmlxref.cnf (ELPA, ELPA_DOC): New variables. (debbugs-ug): Define `mono' version. Change-Id: I3a914354df732ec8d2cc92d56e551ba63c723041 Signed-off-by: Maxim Cournoyer <[email protected]>
2025-01-23doc: htmlxref.cnf: Trim trailing whitespace characters.Tomas Volf
Change-Id: Idda2684864248b1ef11acff31bc145b1cbdabe9d Signed-off-by: Maxim Cournoyer <[email protected]>
2025-01-23doc: htmlxref.cnf: Use write-file-functions.Tomas Volf
The write-file-hooks is deprecated since Emacs 22.1, so switch to the suggested replacement. * doc/htmlxref.cnf (add-hook): Use 'write-file-functions. Change-Id: Ia652ace9a5b5ffb971999372348fa4133f909a4e Signed-off-by: Maxim Cournoyer <[email protected]>
2025-01-22gnu: home: home-pipewire: Add extra-content to configuration.Janneke Nieuwenhuizen
This allows for setting the default sound card/device, e.g.: pcm.!default {type hw card 0 device 2} ctl.!default {type hw card 0 device 2} * gnu/home/services/sound.scm (home-pipewire-configuration)[extra-content]: New field. * gnu/home/services/sound.scm (home-pipewire-asoundrc): Append it to "asoundrc". * doc/guix.texi (Sound Home Services): Update accordingly. Change-Id: I6ecebaaab41cd7313b16a5f365c21789db65664e
2025-01-16home: Add log rotation to ‘%base-home-services’.Ludovic Courtès
* gnu/home.scm (%base-home-services): Add instance of ‘home-log-rotation-service-type’. * doc/guix.texi (Shepherd Home Service): Document it. Change-Id: I00a98da100e3a07fe409f3c44d8ab88e743a8e3e
2025-01-16home: Define ‘%base-home-services’.Ludovic Courtès
* gnu/home.scm (%base-home-services): New variable. (<home-environment>)[services]: Change default to ‘%base-home-services’. * guix/scripts/home/import.scm (manifest+configuration-files->code): Use ‘%base-home-services’ by default. * tests/home-import.scm (match-home-environment-no-services) (match-home-environment-transformations) (match-home-environment-no-services-nor-packages) (match-home-environment-bash-service) (match-home-environment-bash-service-with-alias): Adjust accordingly. * doc/he-config-bare-bones.scm: Use ‘%base-home-services’. * doc/guix.texi (Declaring the Home Environment): Add index entry for ‘%base-home-services’. Change-Id: Id95ede62b97a976aad138bfc4b63fc0bdf37c7de
2025-01-16home: services: Add log rotation service.Ludovic Courtès
* gnu/home/services/admin.scm: New file. * gnu/local.mk (GNU_SYSTEM_MODULES): Add it. * doc/guix.texi (Shepherd Home Service): Document it. Change-Id: I37ac171147c236b05d6d3b226e9072ab7524dfe9
2025-01-16services: rottlog: Deprecate.Ludovic Courtès
* gnu/services/admin.scm (rottlog-service-type): Deprecate. * doc/guix.texi (Log Rotation): Add deprecation warning. Change-Id: I661666ff3de64a69ff4f4982d7f432fd575c36df
2025-01-16services: Switch from mcron + Rottlog to Shepherd’s log rotation.Ludovic Courtès
* gnu/services/admin.scm (unattended-upgrade-log-rotations): Remove. (unattended-upgrade-service-type): Remove ‘rottlog-service-type’ extension. * gnu/services/audio.scm (mpd-log-rotation): Remove. (mpd-service-type): Remove ‘rottlog-service-type’ extension. (mympd-log-rotation): Remove. (mympd-service-type): Remove rottlog-service-type’ extension. * gnu/services/base.scm (%guix-publish-log-rotations): Remove. (guix-publish-service-type): Remove ‘rottlog-service-type’ extension. (%base-services): Instantiate ‘log-rotation-service-type’ instead of ‘rottlog-service-type’. (%default-syslog-files): New variable. (syslog-service-type): Extend ‘log-rotation-service-type’. * gnu/services/cuirass.scm (cuirass-log-rotations): Remove. (cuirass-service-type): Remove ‘rottlog-service-type’ extension. (cuirass-remote-worker-log-rotations): Remove. (cuirass-remote-worker-service-type): Remove ‘rottlog-service-type’ extension. * gnu/services/file-sharing.scm (%transmission-daemon-log-rotations): Remove. (transmission-daemon-service-type): Remove ‘rottlog-service-type’ extension. * gnu/services/linux.scm (%earlyoom-log-rotation): Remove. (earlyoom-service-type): Remove ‘rottlog-service-type’ extension. * gnu/services/networking.scm (%ntp-log-rotation): Remove. (ntp-service-type): Remove ‘rottlog-service-type’ extension. (openntpd-service-type): Likewise. (%connman-log-rotation): Remove. (connman-service-type): Remove ‘rottlog-service-type’ extension. (%hostapd-log-rotation): Remove. (hostapd-service-type): Remove ‘rottlog-service-type’ extension. (%pagekite-log-rotation): Remove. (pagekite-service-type): Remove ‘rottlog-service-type’ extension. (%yggdrasil-log-rotation): Remove. (yggdrasil-service-type): Remove ‘rottlog-service-type’ extension. (%ipfs-log-rotation): Remove. (ipfs-service-type): Remove ‘rottlog-service-type’ extension. (%keepalived-log-rotation): Remove. (keepalived-service-type): Remove ‘rottlog-service-type’ extension. * gnu/services/web.scm (%hpcguix-web-log-rotations): Remove. (hpcguix-web-service-type): Remove ‘rottlog-service-type’ extension. (%mumi-log-rotations): Remove. (mumi-service-type): Remove ‘rottlog-service-type’ extension. * doc/guix.texi (Log Rotation): Adjust text regarding which one is in ‘%base-services’. Change-Id: I8802d4c2337a1e08e3c084d6217f76527d7ee1fb
2025-01-16services: unattended-upgrade: Rewrite as a Shepherd timer.Ludovic Courtès
This is a semi-incompatible change: gexps previously provided in the ‘schedule’ field will no longer work. * gnu/services/admin.scm (unattended-upgrade-mcron-jobs): Rename to… (unattended-upgrade-shepherd-services): … this. Return a list of one Shepherd service. Remove custom logging and time limitation facilities from ‘code’. (unattended-upgrade-service-type): Extend ‘shepherd-root-service-type’ instead of ‘mcron-service-type’. (<unattended-upgrade-configuration>)[services-to-restart]: Change default. * doc/guix.texi (Unattended Upgrades): Adjust ‘schedule’ and ‘services-to-restart’ documentation. Change-Id: I1b239c5946e71cf9e2af9b24fe4b01366b57fb7a
2025-01-16services: log-cleanup: Rewrite as a Shepherd timer.Ludovic Courtès
This is a semi-incompatible change: gexps previously provided in the ‘schedule’ field will no longer work. * gnu/services/admin.scm (log-cleanup-mcron-jobs): Remove. (log-cleanup-shepherd-services): New procedure. (log-cleanup-service-type): Extend SHEPHERD-ROOT-SERVICE-TYPE instead of MCRON-SERVICE-TYPE. * doc/guix.texi (Log Rotation): Adjust ‘schedule’ documentation accordingly. Change-Id: I2a3beb7dffbc9992b714a29423674db9c7dc6cab
2025-01-16services: Add ‘log-rotation-service-type’.Ludovic Courtès
* gnu/services/admin.scm (%default-log-rotation-calendar-event): New variable. (<log-rotation-configuration>): New record type. (log-rotation-shepherd-services): New procedure. (log-rotation-service-type): New variable. Change-Id: I4400035f3b6065ec147ac932110b690120d739c2
2025-01-16doc: Unattended upgrades: document module.Yarl Baudig
* doc/guix.texi (Unattended Upgrades): document module. Change-Id: I668e5e0165ff75ac6a5fe510639b976aaf779556 Signed-off-by: Ludovic Courtès <[email protected]>
2025-01-16services: Add xe-guest-utilities-service-type.Karl Hallsby
* gnu/services/virtualization.scm (xe-guest-utilities-configuration, xe-guest-utilities-service-type): New variables. * doc/guix.texi: Document them. Change-Id: Ife4e79fa6d1a9d5a21bf7479488884f2a5cf8d56 Signed-off-by: Ludovic Courtès <[email protected]>
2025-01-14doc: Remove extra closing paren.Ludovic Courtès
* doc/guix.texi (Guix Services): Remove extra paren in example. Change-Id: Ib834f98b2fbee0c6577166b4c45b747beb9f7198
2025-01-14doc: Add missing paren.Ludovic Courtès
* doc/guix.texi (Privileged Programs): Add missing paren in example. Change-Id: Iaeac91b193c475e8c18a713f7a958053372bfd76
2025-01-11services: nginx: Make log formats configurable.Leo Nikkilä
* gnu/services/web.scm (<nginx-log-format-configuration>): New record. (<nginx-configuration>)[log-format, log-formats]: New fields. (assert-valid-log-format-escape): New procedure. (emit-nginx-log-format-config): New procedure. (default-nginx-config): Make log formats configurable. * doc/guix.texi (Web Services): Document it. Signed-off-by: Ludovic Courtès <[email protected]> Change-Id: I8a16a1a9a20f64606dac0a1e14f1c5217d351f90
2025-01-11services: dns: Add unbound service.Sören Tempel
This allows using Unbound as a local DNSSEC-enabled resolver. This commit also allows configuration of the Unbound DNS resolver via a Scheme API. The API currently provides very common options and includes an escape hatch to enable less common configurations. * gnu/service/dns.scm (unbound-serialize-field): New procedure. (unbound-serialize-alist, unbound-serialize-section) (unbound-serialize-string, unbound-serialize-boolean) (unbound-serialize-list-of-strings): New procedures. (unbound-zone): New record type. (unbound-serialize-unbound-zone) (unbound-serialize-list-of-unbound-zone): New procedures. (unbound-remote): New record type. (unbound-serialize-unbound-remote): New procedure. (unbound-server): New record type. (unbound-serialize-unbound-server): New procedure. (unbound-configuration): New record type. (unbound-config-file, unbound-shepherd-service): New procedures. (unbound-account-service): New variable. (unbound-service-type): New services. * gnu/tests/dns.scm: New file. * gnu/local.mk (GNU_SYSTEM_MODULES): Add it. * doc/guix.texi (DNS Services): Document it. Signed-off-by: Ludovic Courtès <[email protected]> Change-Id: I4c9646c9e17d4882e596d33ff8f738e1877fa1ae
2025-01-11doc: cookbook: Update "Build system arguments" section.Marco Rimoldi
* doc/guix-cookbook.texi (Build system arguments) Remove recommendation on phase return value. Ensure code examples can run and are up-to-date. Change-Id: I143babf79983751578d6d4e20b20195ea000656d Signed-off-by: Ludovic Courtès <[email protected]>
2025-01-11services: cuirass: Add ‘build-expiry’ field.Ludovic Courtès
* gnu/services/cuirass.scm (<cuirass-configuration>)[build-expiry]: New field. (cuirass-shepherd-service): Honor it. * doc/guix.texi (Continuous Integration): Document it. Change-Id: I1f9e21368437fd8fc236719e32bad7656928c926
2025-01-06services: rootless-podman-service-type: Allow not installing podman.Tomas Volf
Sometimes you would want to skip on actually installing the podman package in order to save disk space and bandwidth. Even without installing it globally, podman can still be fetched via guix shell when required. * gnu/services/containers.scm (package-or-#f?): New procedure. (rootless-podman-configuration)<podman>: Change type to package-or-#f. (rootless-podman-service-profile): Produce empty list if not podman package. * doc/guix.texi (Miscellaneous Services): Document the change. Change-Id: If533d913ea190558ce7e206d98ada4d805270594 Signed-off-by: Ludovic Courtès <[email protected]>
2025-01-06doc: Minor wording improvements of “Using TeX and LaTeX”.Ludovic Courtès
* doc/guix.texi (Using TeX and LaTeX): Tweak. Change-Id: I69d93d00b8c343f078b90f4b718948c0015bb88d