aboutsummaryrefslogtreecommitdiff
path: root/doc
AgeCommit message (Expand)Author
2025-03-21build: Fix doc generation in VPATH builds.•••* po/doc/local.mk: For every target make sure destination directory beneath $(top_builddir) exists. Don't write files beneath $(top_srcdir). * doc/local.mk: ditto. Change-Id: I18898edbf228fdf944646a72d278c3fc5daeafe4 W. Kosior
2025-03-05Revert "file-systems: %base-file-systems: Add tmpfs /run."•••This reverts commit e88018be70ffb8ea35819a4c95d44ec20868ca59. Since this change breaks current dbus-service-type, it would be better to wait https://issues.guix.gnu.org/73494 finished. Hilton Chain
2025-03-05Revert "services/udev: Allow configuring udev to run in debug mode."•••This reverts commit dd64f441d3dcff9165927b821da2b69b1fc6a24f. Enabling debug output for udevd apparently hangs the boot. Maxim Cournoyer
2025-03-05file-systems: %base-file-systems: Add tmpfs /run.•••* gnu/system/file-systems (%runtime-variable-data): New variable. (%base-file-systems): Add it. * doc/guix.texi (File Systems): Document it. * gnu/services.scm (cleanup-gexp): Adjust accordingly. Change-Id: I3a95e49d396fbb2577026aefc247cfe996c5f267 Modified-by: Maxim Cournoyer <maxim.cournoyer@gmail.com> Hilton Chain
2025-03-05services: Switch to ‘shepherd-system-log-service-type’ in ‘%base-servic...•••This reinstates c83bfc0415ba928b746362915d67600cdbb5da62, which had been reverted in 8c483c12e94bcf43e4c44170f1d5fea5fbba4970 in response to <https://issues.guix.gnu.org/76315>. * 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 <maxim.cournoyer@gmail.com> Change-Id: I21082300f6a052865a6ab1bdff27fbe71f73d492 Ludovic Courtès
2025-03-05doc: Fix reference to the Shepherd’s log rotation node.•••* doc/guix.texi (Log Rotation): Fix name of Shepherd manual node. Change-Id: I08aa2e082909a32cd6223eb6dba176ee8121f20f Ludovic Courtès
2025-03-04services: tlp: Add config for CPU energy performance policy.•••* gnu/services/pm.scm (tlp-configuration): Add cpu-energy-perf-policy-on-ac and cpu-energy-perf-policy-on-bat. * doc/guix.texi (Power Management Services): Document cpu-energy-perf-policy-on-bat and cpu-energy-perf-policy-on-ac. Change-Id: Ieddf949a325c317abffce00a4f1d047175342d78 Signed-off-by: Nicolas Goaziou <mail@nicolasgoaziou.fr> Ryan Barber
2025-03-02doc: Fix typos.•••* doc/guix.texi (Log Rotation): Fix typo. Quote lists. (Shepherd Services): Fix plurals. Quote lists. Change-Id: I65edebcddb8dcd4caae0c5eb91900f53ba6c2b97 Florian Pelz
2025-03-03services/udev: Allow configuring udev to run in debug mode.•••* gnu/services/base.scm (<udev-configuration>): <debug?>: New field. * gnu/services/base.scm (udev-shepherd-service): Use it to add '--debug' to the command line, if applicable. * doc/guix.texi (Base Services): Document it. Change-Id: I88243fb4f321ff0876dd227e3c2b22082d37cfcf Maxim Cournoyer
2025-03-03services: Add apcupsd-service-type.•••* gnu/services/power.scm: New file. * gnu/local.mk (GNU_SYSTEM_MODULES): Add it. * doc/guix.texi (Power Management Services): Document service and data types. Change-Id: If205d19bea1d20a99309626e28521a2d6fe6702f Signed-off-by: Maxim Cournoyer <maxim.cournoyer@gmail.com> Reviewed-by: Maxim Cournoyer <maxim.cournoyer@gmail.com> Tomas Volf
2025-03-03services: wireguard: Add the auto-start? field.•••* gnu/services/vpn.scm (<wireguard-configuration>): Add auto-start?. (wireguard-shepherd-service): Pass auto-start? to Shepherd service. * doc/guix.texi (VPN Services)[wireguard]: Document it. Change-Id: I7880a8c8e9860250f875e845e94eb118a4b852fa Signed-off-by: Maxim Cournoyer <maxim.cournoyer@gmail.com> Carlo Zancanaro
2025-03-01deploy: Add --roll-back option.•••* guix/scripts/deploy.scm (guix-deploy): Add the --roll-back option. (show-what-to-deploy): Add #:roll-back? argument. (roll-back-machine*): New function. (show-help): Document the --roll-back option. * doc/guix.texi (Invoking guix deploy): Document the --roll-back option. Change-Id: Ic5084f287aefb2d1d28380ca4ba1c6971cb913e7 Arun Isaac
2025-02-28machine: hetzner: Fix deployment on smaller instances.•••* gnu/machine/hetzner.scm (hetzner-machine-rescue-install-os): Avoid out of disk space error by bind mounting /mnt/tmp/gnu/store to /gnu/store. * tests/machine/hetzner.scm: Test with smaller instances. * doc/guix.texi (Invoking guix deploy): Mention unsupported instance. Change-Id: If8bfb6733de493b51813b3e82e255849192f7cba Signed-off-by: Ludovic Courtès <ludo@gnu.org> Roman Scherer
2025-02-28nls: Update translations.•••* po/doc/guix-cookbook.ru.po: New file. * po/doc/local.mk: Add 'ru' cookbook. * doc/local.mk: Add 'ru' cookbook. * doc/htmlxref.cnf: Update URLs for cookbook. * doc/build.scm (%cookbook-languages): Add 'ru'. * doc/guix-cookbook.texi (Top): Mention 'ru' cookbook. Change-Id: I5d59db90e23facbacd2b7ebe4a0847d0c44eb709 Florian Pelz
2025-02-28refresh: Add support for partial target versions.•••* guix/import/utils.scm (find-version): New procedure. * guix/scripts/refresh.scm (<update-spec>) [partial?]: New field. (update-spec-partial?): New accessor. (update-spec): Add a PARTIAL? optional argument. (update-specification->update-spec) <update-spec>: Call with its new PARTIAL? optional argument when FALLBACK-VERSION is provided, i.e. when '--target-version' was used. (update-package): Remove the PACKAGE and VERSION positional arguments, and replace them with UPDATE-SPEC. Update doc. Call `package-update' with its new #:partial-version? argument. (check-for-package-update) <package-latest-release>: Pass the new #:partial-version? argument to it. (guix-refresh) <update-package>: Adjust call accordingly. (show-help): Udate doc. * guix/upstream.scm (package-latest-release): Add #:partial-version? argument, and apply it to the importer call. (package-update): Add #:partial-version?> argument. Update doc. Pass it to the `package-latest-release' call. * guix/gnu-maintenance.scm (rewrite-url): Add #:partial-version? argument. Update doc. Crawl URL for newer compatible versions when provided. (import-html-release): Add #:partial-version? argument, and pass it to the `rewrite-url' call. Use `find-version' to find the best version. (import-release, import-ftp-release, import-gnu-release) (import-release*): Add #:partial-version? argument and honor it. (import-html-updatable-release): Add #:partial-version? argument, and pass it to the `import-html-release' call. * guix/import/gnome.scm (import-gnome-release) <#:partial-version?>: Add new argument and honor it. * guix/import/texlive.scm (latest-texlive-tag): Rename to... (texlive-tags): ... this, and have it return all tags. (texlive->guix-package): Adjust accordingly. (latest-release): Add a #:partial-version? argument. Update doc. * guix/import/stackage.scm (latest-lts-release): New #:partial-version? argument. * guix/import/pypi.scm (import-release): New #:partial-version? argument; pass it to `pypi-package->upstream-source'. * guix/import/opam.scm (latest-release): New #:partial-version? argument. * guix/import/minetest.scm (latest-minetest-release): New #:partial-version? argument. (pypi-package->upstream-source): New #:partial-version? argument. Update doc. * guix/import/launchpad.scm (latest-released-version): Rename to... (release-versions): ... this, making it return all versions. (import-release) <#:partial-version?>: New argument. * guix/import/kde.scm (import-kde-release) <#:partial-version?>: New argument. Update doc. Refactor to honor argument. * guix/import/hexpm.scm (lookup-hexpm): Update doc. (hexpm-latest-release): Rename to... (hexpm-releases): ... this; return all release strings. (hexpm->guix-package): Adjust accordingly. (import-release): Add and honor a #:partial-version? argument. Update doc. * guix/import/hackage.scm (import-release): New #:partial-version? argument. * guix/import/cpan.scm (latest-release): New #:partial-version? argument. * guix/import/crate.scm (max-crate-version-of-semver): Improve doc. (import-release): Add a #:partial-version? argument and honor it. * guix/import/egg.scm (find-latest-version): Rename to... (get-versions): ... this, returning all versions. (egg-metadata): Adjust accordingly. (egg->guix-package): Likewise. (import-release): Add a new #:partial-version? argument and honor it. * guix/import/elpa.scm (latest-release): New #:partial-version? argument. * guix/import/gem.scm (get-versions): New procedure. (import-release): Add a new #:partial-version? argument and honor it. * guix/import/git.scm (version-mapping): Update doc; streamline a bit. (latest-tag): Rename to... (get-tags): ... this, dropping the #:version keyword and returning the complete tags alist. Update doc. (latest-git-tag-version): Rename to... (get-package-tags): ... this, returning the complete tags alist of the package. Update doc. (import-git-release): Add a new #:partial-version? argument and honor it. Update doc. * guix/import/github.scm (latest-released-version): Rename to... (get-package-tags): ... this, returning all tags. Update doc. (import-release): Add a new #:partial-version? argument and honor it. * guix/import/cran.scm (latest-cran-release) (latest-bioconductor-release): Add #:partial-version? argument. * guix/import/composer.scm (latest-version): Delete procedure. (composer-fetch): Add #:partial-version? keyword and honor it. Update doc. (import-release): Likewise. * guix/import/test.scm (import-release): Add #:partial-version? argument. * tests/guix-refresh.sh: Add test. * tests/gem.scm (test-foo-versions-json): New variable. (package-latest-release): Mock new URL. * tests/import-git.scm (latest-git-tag-version): New procedure. * tests/gnu-maintenance.scm (libuv-dist-html) (libuv-dist-1.46.0-html, libuv-dist-1.44.2-html) (libuv-html-data): New variables. (mock-http-fetch/cached): New procedure. ("rewrite-url, without to-version"): Rewrite using the above. ("rewrite-url, partial to-version"): New test. * doc/guix.texi <"Invoking guix refresh">: Update doc. Series-to: 75871@debbugs.gnu.org Change-Id: I092a58b57ac42e54a2fa55e7761e8c6993af8ad4 Maxim Cournoyer
2025-02-28gnupg: Automatically fallback to 'always policy when non-interactive.•••Previously to this change, the 'guix refresh' download policy (--key-download)would default to 'interactive', which would throw a backtrace when guix was invoked with its stdin not connected to a peusdo terminal (tty). This change makes the new default value 'auto' use interactive only in an interactive environment, with 'always' used as fallback. * doc/guix.texi (Invoking guix refresh): Adjust doc. * etc/completion/fish/guix.fish: Adjust accordingly. * etc/completion/zsh/_guix (_guix_list_installed_packages): Likewise. * guix/gnupg.scm (gnupg-verify*): Change default #:key-download argument value to 'auto. Update doc. Validate argument. Raise an error in case read-line returns #<eof>. * guix/import/gnu.scm (gnu-package->sexp): <#:key-download>: Change default value to 'auto. * guix/import/gnu.scm (gnu->guix-package): <#:key-download>: Likewise. * guix/scripts/import/gnu.scm (%options): Add "auto" to accepted --key-download values. (%default-options): Set default key-download option to the 'auto value. (show-help): Update doc. * guix/scripts/refresh.scm (show-help): Update doc. (update-package) <#:key-download>: Change default value to 'auto. Update doc. * guix/upstream.scm (download-tarball): <#:key-download>: Likewise. (package-update): Likewise. Change-Id: Id1ca8fd6d453ca4bc5b372534445e3beab9133a8 Fixes: https://issues.guix.gnu.org/76112 Reviewed-by: Ludovic Courtès <ludo@gnu.org> Maxim Cournoyer
2025-02-25services: dovecot: Provide plugins through a /gnu/store directory.•••* gnu/services/mail.scm (package-list?, serialize-package-list): New procedures. * gnu/services/mail.scm (dovecot-configuration)[extensions]: New field. The field lets you provide a list of dovecot plugins that need to be available during the runtime. A union of the set of modules will be created on the activation time. * gnu/services/mail.scm (opaque-dovecot-configuration)[extensions]: Likewise. * gnu/services/mail.scm (make-dovecot-moduledir): New function. * gnu/services/mail.scm (%dovecot-activation): Add step to compute a set of modules, and provide them over the shared link at /usr/lib/dovecot. * doc/guix.texi (Mail Services)[extension]: Add documentation. Clarify the purpose and usage of the extensions parameter. Add an example showing how to enable Sieve filtering using dovecot-pigeonhole. Better explain the module directory structure and requirements. Change-Id: I3c3955bb04b09d245242112f6810ecc0558109a1 Signed-off-by: Christopher Baines <mail@cbaines.net> Alexey Abramov via Guix-patches via
2025-02-23doc: Write about depending on the ‘user-processes’ Shepherd service.•••* doc/guix.texi (Shepherd Services): Add paragraph on ‘user-processes’. Suggested-by: Dariqq <dariqq@posteo.net> Change-Id: I76fb11779eefc90d13dbc11368ddf64f7450f5e6 Ludovic Courtès
2025-02-23services: Add missing Shepherd dependency on ‘user-processes’.•••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 <dariqq@posteo.net> Change-Id: I947bd2afc83b786cb17c555cfe73ab586b806618 Ludovic Courtès
2025-02-21services: Add xen-guest-agent-service-type.•••* 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 <ludo@gnu.org> Karl Hallsby
2025-02-19doc: Fix some misspellings.•••Change-Id: I567aec7b1fac91234f46886c35affa6bd6e582d9 Efraim Flashner
2025-02-17gnu: guix-configuration: Add a chroot? parameter.•••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 Andreas Enge
2025-02-17services: syncthing: Add support for declarative configuration.•••* 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 <leo@famulari.name> Zacchaeus
2025-02-16Revert "services: Switch to ‘shepherd-system-log-service-type’ in ‘%bas...•••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 Ludovic Courtès
2025-02-16gnu: guix-build-coordinator: Add the listen-repl configuration.•••* 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 Christopher Baines
2025-02-15services: Switch to ‘shepherd-system-log-service-type’ in ‘%base-servic...•••* 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 <maxim.cournoyer@gmail.com> Change-Id: I21082300f6a052865a6ab1bdff27fbe71f73d492 Ludovic Courtès
2025-02-15services: Add ‘system-log’ Shepherd service.•••* 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 <maxim.cournoyer@gmail.com> Change-Id: I1e29fe0977eb4f8026ee6a2d2f282e269c8c00b4 Ludovic Courtès
2025-02-15services: Add speakersafetyd service.•••* 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 <maxim.cournoyer@gmail.com> Signed-off-by: Maxim Cournoyer <maxim.cournoyer@gmail.com> Roman Scherer
2025-02-13doc: Slight adjustment to network-manager-configuration.•••* doc/guix.texi (Networking Setup): Fix file names used in example. Change-Id: I07479958e4d0aa318328c666a9630b779230b300 45mg
2025-02-13services: network-manager: Add extra-configuration-files field.•••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 <maxim.cournoyer@gmail.com> Signed-off-by: Maxim Cournoyer <maxim.cournoyer@gmail.com> 45mg
2025-02-12doc: Recommend login as non-root user after installation.•••* doc/guix.texi (After System Installation): Fix. Signed-off-by: Simon Josefsson <simon@josefsson.org> Signed-off-by: Ludovic Courtès <ludo@gnu.org> Simon Josefsson
2025-02-09machine: Implement 'hetzner-environment-type'.•••* 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 <ludo@gnu.org> Roman Scherer
2025-02-09import: crate: Comment out missing dependencies.•••* 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 <ludo@gnu.org> Herman Rimm
2025-02-07doc: Mention --check --no-grafts as a way to force-rebuild packages.•••* 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 <leo@famulari.name> Signed-off-by: Leo Famulari <leo@famulari.name> Rostislav Svoboda
2025-02-07services: Rename field in greetd-terminal-configuration record.•••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 Maxim Cournoyer
2025-02-06services: greetd: Add new gtkgreet greeter.•••* 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 <maxim.cournoyer@gmail.com> Signed-off-by: Maxim Cournoyer <maxim.cournoyer@gmail.com> muradm
2025-02-06services: greetd: Improve greeter configurations.•••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 <maxim.cournoyer@gmail.com> Signed-off-by: Maxim Cournoyer <maxim.cournoyer@gmail.com> muradm
2025-02-05gnu: Remove extraneous reference to defunct xfce-desktop-service.•••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 Leo Famulari
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.•••* 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 <runciter@whispers-vpn.org> Signed-off-by: Ludovic Courtès <ludo@gnu.org> Change-Id: Id5b20e235b988953a66e0344872d1fa165c4c773 Runciter
2025-01-26home: services: shepherd: Add ‘transient’ and ‘timer’ services.•••* 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 <maxim.cournoyer@gmail.com> Change-Id: Ia4eb7cf043f4661c64f5ca81b8989a451532aa18 Ludovic Courtès
2025-01-26services: shepherd: Add ‘transient’ and ‘timer’.•••* gnu/services/shepherd.scm (shepherd-timer-service-type) (shepherd-transient-service-type): New variables. * doc/guix.texi (Shepherd Services): Document them. Change-Id: I9b622e7e947e7a6384c2701a313d0c7080a0a5f6 Ludovic Courtès
2025-01-25services: restic-backup: Implement as a Shepherd timer.•••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 <ludo@gnu.org> Giacomo Leidi
2025-01-25guix: Add loongarch platform.•••* 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 Zheng Junjie
2025-01-23doc: htmlxref.cnf: Fix link to The GNU Stow Manual.•••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 <maxim.cournoyer@gmail.com> Tomas Volf
2025-01-23doc: htmlxref.cnf: Add link to debbugs-ug.•••* doc/htmlxref.cnf (ELPA, ELPA_DOC): New variables. (debbugs-ug): Define `mono' version. Change-Id: I3a914354df732ec8d2cc92d56e551ba63c723041 Signed-off-by: Maxim Cournoyer <maxim.cournoyer@gmail.com> Tomas Volf
2025-01-23doc: htmlxref.cnf: Trim trailing whitespace characters.•••Change-Id: Idda2684864248b1ef11acff31bc145b1cbdabe9d Signed-off-by: Maxim Cournoyer <maxim.cournoyer@gmail.com> Tomas Volf
2025-01-23doc: htmlxref.cnf: Use write-file-functions.•••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 <maxim.cournoyer@gmail.com> Tomas Volf
2025-01-22gnu: home: home-pipewire: Add extra-content to configuration.•••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 Janneke Nieuwenhuizen
2025-01-16home: Add log rotation to ‘%base-home-services’.•••* 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 Ludovic Courtès