summaryrefslogtreecommitdiff
path: root/doc
AgeCommit message (Collapse)Author
2025-05-13gnu: home: services: Add home-mpv-service-type.Tomas Volf
This commit adds a new service type to generate configuration file for the mpv media player. Originally I attempted to use Guix Records (via define-configuration) for this, but ran into the bug #74748, so I had to switch to procedures instead. The usage is (hopefully) sufficiently described in the documentation. When the bug is resolved, I will update it to use define-configuration instead. The full list of supported options is documented, however I decided to *not* document types and purpose for each individual fields. While I had mostly working prototype to extract the documentation from mpv, once I realized it would be few 10k of lines added, I decided it is not worth it. It would bloat the .texi file (by more than 50%), be hard to maintain and, in my opinion, would not provide enough value to justify that. The current version seems like sane middle ground. * gnu/home/services/mpv.scm: New file. * gnu/local.mk (GNU_SYSTEM_MODULES): Register it. * doc/guix.texi (mpv Media Player): Document it. Change-Id: I2deb44799a28047cb5d67da97dc6007a9df873af
2025-05-12doc: build.scm: Handle (current-source-directory) being #f.Christopher Baines
Since this seems to be the case when the devel manual is being built on bayfront. * doc/build.scm: Use the current working directory as a fallback if (current-source-directory) is #f, and log the value of root. Change-Id: Ic43fd05a4a0822d9efb935069850f0a8cadd80aa
2025-05-12doc: Add missing heading and fix accidental duplication.Evgeny Pisemsky
* doc/guix.texi: Add missing heading for Snuik Service, fix accidental duplication of sections for Mosquitto Service. Change-Id: Id3e3a80da70e6eb47ee9c5afa69d3c48efea4754 Signed-off-by: Maxim Cournoyer <maxim.cournoyer@gmail.com>
2025-05-09services: Add mosquitto-service-type.Evgeny Pisemsky
* gnu/services/messaging.scm (<mosquitto-configuration>): New record type. (mosquitto-accounts): New procedure. (mosquitto-shepherd-service): New procedure. (mosquitto-service-type): New variable. * doc/guix.texi (Messaging Services): Document it. Change-Id: I3500c5b6b69084c1f4a6da66ea45bfd42c871f3f Signed-off-by: Danny Milosavljevic <dannym@friendly-machines.com>
2025-05-09doc: Fix building documentation on Berlin.Maxim Cournoyer
This reverts 4df6eda30f92dd09a7b5839514fab971b5633a0d ("gnu: Rename `texlive-updmap.cfg' into `texlive-local-tree'.") just for doc/build.scm. As the build farm uses 'guix' as provided by the guix-daemon; an updated to the guix package and reconfiguration of Berlin would be required to fix building the latest development manual. Use the deprecated texlive-updmap.cfg binding for now. * doc/build.scm (pdf-manual): Revert to use texlive-updmap.cfg for now. Change-Id: I133deaa7a345e711a99ea469ec6fecfde9c729de
2025-05-06gnu: Rename `texlive-updmap.cfg' into `texlive-local-tree'.Nicolas Goaziou
* doc/build.scm (pdf-manual): * doc/contributing.texi (Submitting Patches): * gnu/packages/algebra.scm (pari-gp): (giac): * gnu/packages/assembly.scm (asl): * gnu/packages/audio.scm (chow-tape-model): * gnu/packages/bioconductor.scm (r-biocstyle): * gnu/packages/bioinformatics.scm (discrover): (phyml): (velvet): * gnu/packages/chemistry.scm (yaehmop): * gnu/packages/chez.scm (chez-scheme-for-racket): (stex-bootstrap): (chez-web): (chez-sockets): * gnu/packages/cran.scm (r-papaja): (r-prereg): * gnu/packages/docbook.scm (dblatex): * gnu/packages/emacs-xyz.scm (emacs-auctex): * gnu/packages/engineering.scm (fastcap): * gnu/packages/finance.scm (optionmatrix): * gnu/packages/fsf.scm (book-faif): * gnu/packages/gettext.scm (po4a): (po4a-minimal): * gnu/packages/graphics.scm (mmg): * gnu/packages/graphviz.scm (dot2tex): * gnu/packages/guile-xyz.scm (emacsy): (guile-cv): * gnu/packages/lisp.scm (sbcl): * gnu/packages/maths.scm (cddlib): (gnuplot): (itpp): (octave): (suitesparse-amd): (suitesparse-camd): (suitesparse-cholmod): (suitesparse-klu): (suitesparse-ldl): (suitesparse-mongoose): (suitesparse-spex): (suitesparse-spqr): (suitesparse-umfpack): (hypre): * gnu/packages/music.scm (lilypond): * gnu/packages/ocaml.scm (unison): (ocaml-bibtex2html): * gnu/packages/pdf.scm (extractpdfmark): * gnu/packages/photo.scm (enblend-enfuse): * gnu/packages/plotutils.scm (asymptote): * gnu/packages/python-xyz.scm (python-numpy-documentation): (python-ipython-documentation): (python-pypandoc): * gnu/packages/radio.scm (gnuradio): (libosmo-dsp): * gnu/packages/scheme.scm (mit-scheme): * gnu/packages/security-token.scm (yubico-piv-tool): * gnu/packages/sphinx.scm (python-sphinx): (python-sphinx-5): * gnu/packages/statistics.scm (r-with-tests): (r-spams): * gnu/packages/tex.scm (texlive-local-tree): Renamed from… (texlive-updmap.cfg): … this. Deprecate the latter. (texlive-biblatex-philosophy): (texlive-bropd): (texlive-fontsize): (texlive-poetrytex): (texlive-reverxii): (texlive-stix): (texlive-suftesi): (texlive-thucoursework): (texlive-ulqda): (texlive-yathesis): (texlive-makecell): (texlive-robotarm): (texlive-bbold): (texlive-babel-romansh): (texlive-polyglossia): (texlive-innerscript): (teximpatient): (texlive-xkeyval): (texlive-arabxetex): (texlive-blox): (texlive-ecgdraw): (texlive-gradientframe): (texlive-everyhook): (texlive-actuarialangle): (texlive-actuarialsymbol): (texlive-autopdf): (texlive-etaremune): (texlive-extract): (texlive-forarray): (texlive-graphicx-psmin): (texlive-ha-prosper): (texlive-namespc): (texlive-newspaper): (texlive-powerdot): (texlive-recipecard): (texlive-show2e): (texlive-tablists): (texlive-ted): (texlive-xargs): (texlive-xpeek): * gnu/packages/xdisorg.scm (xforms): * gnu/packages/algebra.scm (gap): * gnu/packages/cpp.scm (jthread): * guix/lint.scm (check-inputs-should-be-native): Rename `texlive-updmap.cfg' into `texlive-local-tree'. Change-Id: I129280807c418e57acbcbda399545ab27a9e0a33
2025-05-05environment: Add ‘--writable-root’ and default to read-only root.Ludovic Courtès
This is an incompatible change where the root file system in ‘guix shell -C’ is now read-only by default. * guix/scripts/environment.scm (show-environment-options-help) (%options): Add ‘--writable-root’. * guix/scripts/environment.scm (setup-fhs): Invoke /sbin/ldconfig; moved from… (launch-environment): … here. (launch-environment/container): Add #:writable-root? and pass it to ‘call-with-container’. Move root file system setup to #:populate-file-system. (guix-environment*): Honor ‘--writable-root’. * tests/guix-environment-container.sh: Test it. * doc/guix.texi (Invoking guix shell): Document ‘--writable-root’. (Debugging Build Failures): Mention it before “rm /bin/sh”. Change-Id: I2e8517d6f01eb8093160bffc0f9f56071ad6fee6 Reviewed-by: Maxim Cournoyer <maxim.cournoyer@gmail.com>
2025-05-05transformations: Git source transformations honour RECURSIVE?.Romain GARBAGE
* guix/transformations.scm (package-git-url+recursive?): New variable. (package-git-url): Remove variable. (evaluate-git-replacement-specs): Use package-git-url+recursive?. (transform-package-source-branch, transform-package-source-commit, transform-package-source-git-url): Update according to changes above. * doc/guix.texi (Package Transformation Options): Update documentation. * tests/transformations.scm: Update tests. Add tests for RECURSIVE? inheritance with WITH-COMMIT and WITH-SOURCE. Change-Id: Id6a5e6957a9955c8173b06b3e14f2986c6dfc4bc Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2025-05-03scripts: home: Support extracting home-environment from Guix System declaration.Hilton Chain
* guix/scripts/home.scm (process-action): Handle operating-system declaration and extract home environment for current user. * doc/guix.texi (Guix Services)[Guix Home Service]: Document it. Change-Id: I995f79c2549e6edc76322542d0422159e0b79996 Reviewed-by: Maxim Cournoyer <maxim.cournoyer@gmail>
2025-05-03nls: Update translations.Florian Pelz
* po/guix/kab.po: New file. * po/guix/LINGUAS: Add 'kab'. * po/doc/guix-cookbook.es.po: New file. * po/doc/local.mk: Add 'es' cookbook. * doc/local.mk: Add 'es' cookbook. * doc/htmlxref.cnf: Update URLs for cookbook. * doc/build.scm (%cookbook-languages): Add 'es'. * doc/guix-cookbook.texi (Top): Mention 'es' cookbook. Change-Id: I795563ee78c930248ff860a03d9ce970099429da
2025-05-02doc: Regenerate Texinfo menus.Maxim Cournoyer
Done with 'M-x texinfo-all-menus-update' in Emacs. * doc/guix.texi (Top): Regenerate menus. Change-Id: I4ae480d5e77296cb8b187b5629805b60f4a3cf02
2025-05-02services: kwallet: New service.Sergio Pastor Pérez
Change-Id: I1330ce5e1648a8ddf6ddd507255a73335d6baa51 Signed-off-by: Maxim Cournoyer <maxim.cournoyer@gmail.com>
2025-05-02services: postgresql-role: Add support for password files.Giacomo Leidi
This commit adds a password-file to the postgresql-role field. It allows users to provision Postgres roles with a set password. * gnu/services/databases.scm (postgresql-role): Add password-file field. (postgresql-role-configuration): Add requirement field. (postgresql-create-roles): Add support for setting passwords from a file without leaking passwords to the command line. (postgresql-role-shepherd-service): Add support for customizable requirements. (postgresql-role-service-type): Pass on postgresql-role-configuration fields values by default, this way user configured fields are not lost. * gnu/tests/databases.scm: Test it. * doc/guix.texi: Document the new field and fix the extension point example. Change-Id: I3aabaa10b0c5e826c5aa874e5649e25a3508a585 Signed-off-by: Maxim Cournoyer <maxim.cournoyer@gmail.com>
2025-05-02services: Normalize and improve libvirt-configuration documentation.Maxim Cournoyer
* gnu/services/virtualization.scm (libvirt-configuration): Fix typos and punctuation, and decorate with more Texinfo adornments. Remove extraneous text. Convert enumerations to sentences re-generating the Texinfo documentation with configuration->documentation doesn't require fixing these by hand after (the text is re-flowed, breaking enumerations). Mention the use of 'log-filters' is preferable to 'log-level', as commented in the defaut libvirt.conf template. * doc/guix.texi (Virtualization Services): Re-generate. Change-Id: Icc2abe21a787b4bb6ac3b35a95f6aaaf3bbda9aa
2025-04-30services/udev: Allow configuring udev to run in debug mode.Maxim Cournoyer
This re-introduces commit dd64f441d3dcff9165927b821da2b69b1fc6a24f, which had been reverted due to previously causing a system hang when debug? was enabled, a problem that appears to have been resolved within Shepherd. * 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
2025-04-29doc: cookbook: Fix extended example.Greg Hogan
* doc/guix-cookbook.texi (Extended example): Include missing module. Change-Id: Ibbda03344ad8762ea0c775a7eac36036c3b6200a
2025-04-26services: elogind: Split sleep.conf and port to define-configuration.Maxim Cournoyer
* gnu/services/desktop.scm (pascal-case): New procedure. (<elogind-configuration>): Rewrite in terms of define-configuration. (elogind-configuration-file): Delete. (maybe-list-of-suspend-states?, maybe-list-of-suspend-modes?) maybe-list-of-user-names?, maybe-boolean?maybe-package?) (maybe-action?, maybe-percent?, maybe-list-of-strings?) (maybe-list-of-hibernation-modes?, maybe-non-negative-integer?) (non-negative-integer?, percent?, char-set:user-name, user-name?) (list-of-user-names?, %elogind-actions, action?, %linux-suspend-states) (string->symbol/maybe, suspend-state?, list-of-suspend-states?) (%linux-suspend-modes, suspend-mode?, list-of-suspend-modes?) (%linux-hibernation-modes, hibernation-mode?, list-of-hibernation-modes?) (elogind-deprecated-empty-serializer, list-of-file-likes?) (elogind-serialize-boolean, elogind-base-serializer, elogind-serialize-action) (elogind-serialize-non-negative-integer, elogind-serialize-percent) (elogind-list-serializer, elogind-serialize-list-of-strings) (elogind-serialize-list-of-user-names, elogind-serialize-list-of-suspend-states) (elogind-serialize-list-of-suspend-modes) (elogind-serialize-list-of-hibernation-modes) (%elogind-configuration-sleep-fields, logind.conf, sleep.conf): New procedures. (elogind-etc-directory): Create the main configuration files there too. (elogind-dbus-service): Adjust for package accessor name change. (pam-extension-procedure, elogind-shepherd-service) (elogind-service-type): Likewise. (shepherd-configuration-action*): New procedure. * doc/guix.texi (Desktop Services): Fully document configuration options. Fixes: https://issues.guix.gnu.org/77806 Change-Id: I8767891871d83e58d64995ec986a7d01689fa6d8 Reported-by: Ludovic Courtès <ludo@gnu.org>
2025-04-23services: postgresql-service-type: Allow allowing to log into the user.Tomas Volf
It is often useful to be able to use the `postgres' user for management tasks, so this commit allows setting that. The default behavior is not changed. I have also added missing exports and sorted them by alphabet. * gnu/services/databases.scm (%default-home-directory): New variable. (<postgresql-configuration>): Add home-directory, allow-login? fields. (create-postgresql-account): Use them. * doc/guix.texi (Database Services): Document it. Change-Id: I2212e5082ff4e87c49a5a8a4711bf929dd08626a Signed-off-by: Ludovic Courtès <ludo@gnu.org> Modified-by: Ludovic Courtès <ludo@gnu.org>
2025-04-22doc: Update ReadyMedia URL.Sughosha
* doc/guix.texi (DLNA/UPnP Services): Update ReadyMedia URL. Change-Id: Ief346066edd6b9e679f020a6ff8528856cf853d9 Signed-off-by: Maxim Cournoyer <maxim.cournoyer@gmail.com>
2025-04-22services: pounce: New service.Maxim Cournoyer
* gnu/services/messaging.scm (pounce-serialize-boolean): (pounce-serialize-string, pounce-serialize-list-of-strings) (pounce-serialize-pair, power-of-two?) (pounce-serialize-number, pounce-serialize-power-of-two) (pounce-serialize-port, pounce-serialize-maybe-boolean) (pounce-serialize-maybe-number, pounce-serialize-maybe-pair) (pounce-serialize-maybe-port, pounce-serialize-maybe-port (pounce-maybe-power-of-two, pounce-serialize-maybe-string) (pounce-serialize-maybe-list-of-strings): New procedures. (pounce-configuration): New configuration. (pounce-activation): New procedure. (serialize-pounce-configuration, pounce-wrapper): Likewise. (pounce-service-type): New service type. * gnu/tests/messaging.scm (ngircd-tls-cert-service-type): New variable. (%pounce-os): Likewise. (run-pounce-test): New procedure. (%test-pounce): New test. * doc/guix.texi (Messaging Services): Document it. Change-Id: I4bbd2bc4821072a93c2c4017b86df329c4b240cb Reviewed-by: Ludovic Courtès <ludo@gnu.org>
2025-04-21machine: hetzner: Allow attaching existing public IPs.Sergey Trofimov
* gnu/machine/hetzner.scm (hetzner-configuration): Add ipv4 and ipv6 fields. Export accessors. * gnu/machine/hetzner/http.scm (hetnzer-api-primary-ips): New function. (<hetzner-primary-ip>): New json mapping. (hetzner-api-server-create): Pass IP addresses in request. * doc/guix.texi (Invoking guix deploy): Document it. Change-Id: I44509cc98e041762dc483e876566e79bde85b26a Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2025-04-20services: guix: Allow ‘guix-daemon’ to run without root privileges.Ludovic Courtès
* gnu/services/base.scm (run-with-writable-store) (guix-ownership-change-program): New procedures. (<guix-configuration>)[privileged?]: New field. (guix-shepherd-service): Rename to… (guix-shepherd-services): … this. Add the ‘guix-ownership’ service. Change ‘guix-daemon’ service to depend on it; when unprivileged, prefix ‘daemon-command’ by ‘run-with-writable-store’ and omit ‘--build-users-group’; adjust socket activation endpoints. (guix-accounts): When unprivileged, create the “guix-daemon” user and group in addition to the others. (guix-service-type)[extensions]: Adjust to name change. * gnu/tests/base.scm (run-guix-daemon-test): Add ‘name’ parameter. (%test-guix-daemon): Adjust accordingly. (%test-guix-daemon-unprivileged): New test. * doc/guix.texi (Base Services): Document ‘privileged?’. (Migrating to the Unprivileged Daemon): Explain that this is automatic on Guix System. Reviewed-by: Maxim Cournoyer <maxim.cournoyer@gmail.com> Change-Id: I28a9a22e617416c551dccb24e43a253b544ba163
2025-04-20doc: Document migration to the unprivileged daemon.Ludovic Courtès
* doc/guix.texi (Build Environment Setup): Add “Migrating to the Unprivileged Daemon” section. (Upgrading Guix): Link to it. Change-Id: I2bac3f4419d85b7c718c6c4a3908387b4f6ee582
2025-04-19services: ngircd: Require networking.Maxim Cournoyer
Otherwise the service could fail starting if the networking interface takes some time to be created during the boot (one such example are WireGuard interfaces). * gnu/services/messaging.scm (ngircd-configuration) [shepherd-requirement]: Add networking. * doc/guix.texi (Messaging Services): Update. Change-Id: I387ae5780a35cad5b74d9883ac53f13de1a08c78
2025-04-15Revert "doc: Emacs Packages: Remove outdated commentary on testing."Ludovic Courtès
This reverts commit b17268b53e9fb1b1ac2ad29fe7633b52744fee2f, which was meant for the ‘emacs-team’ branch as part of a patch series. Change-Id: I9d9b01924698aaf5bb6ac2c8472311976eeaacc6
2025-04-14doc: Emacs Packages: Remove outdated commentary on testing.Morgan Smith
* doc/contributing.texi (Emacs Packages): Removeoutdated commentary on testing. We now run the tests by default like is done in other build systems. Change-Id: I245a0a412615a1177fbd1b6e723fda3749f7e49f Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2025-04-14gnu: speakersafetyd: Add log file.Roman Scherer
* gnu/services/sound.scm (speakersafetyd-configuration) [log-file]: New field. (speakersafetyd): Use it via #:log-file. Change-Id: I870bc7bfd69249da3a9c981f627e751395386bd2
2025-04-14gnu: speakersafetyd: Run as unprivileged user.Roman Scherer
* gnu/services/sound.scm (speakersafetyd): Run as unprivileged user. (speakersafetyd-accounts): New procedure. (speakersafetyd-activation): Likewise. (speakersafetyd-shepherd-service): Specify the #:group, #:user and #:supplementary-groups arguments. (speakersafetyd-service-type): Extend activation-service-type. Change-Id: I870bc7bfd69249da3a9c981f627e751395386bd2
2025-04-14services: ngircd: Revert to use make-forkexec-constructor.Maxim Cournoyer
The use of make-systemd-constructor appears to cause problems when connecting via TLS (see: https://github.com/ngircd/ngircd/issues/330). * gnu/services/messaging.scm (ngircd-global): [pid-file]: Set default value and remove maybeness. Adjust doc. * gnu/services/messaging.scm (ngircd-configuration): Adjust comment. (ngircd-wrapper): Expose writable PID file and preserve pid namespace. (ngircd-shepherd-service): Replace make-systemd-constructor with make-forkexec-constructor and adjust surrounding accordingly. (ngircd-activation): New procedure. (ngircd-service-type): Extend activation-service-type with it. Change-Id: Ic7c135ab45122e180107cde8bb9976426e3afbc4
2025-04-14services: ngircd: Fix typo in doc.Maxim Cournoyer
* gnu/services/messaging.scm (ngircd-options) <pam?>: Fix typo. * doc/guix.texi (Messaging Services): Update. Change-Id: If14e406089b2c945cac37e25d8e08a3812e4b28e
2025-04-14services: ngircd: Disable PAM by default.Maxim Cournoyer
This was the original intention, as PAM authentication cannot be easily satisfied when the service runs as non-root, which is the case. * gnu/services/messaging.scm (ngircd-configuration) <options>: Remove maybe and set default value. * doc/guix.texi (Messaging Services): Update. Change-Id: I8435cf5be7206f9165d69cbbac11c205bf928c8f
2025-04-14services: ngircd: Expose a new ssl-verify? option.Maxim Cournoyer
* gnu/services/messaging.scm (ngircd-server) [ssl-verify?]: New field. * doc/guix.texi (Messaging Services): Regenerate doc. Change-Id: Ia2d6e557bd89448d8cc2d1cd88e606e2b1ef5029
2025-04-14services: ngircd: Allow specifying Shepherd requirements.Maxim Cournoyer
* gnu/services/messaging.scm (ngircd-configuration) [shepherd-requirement]: New field. * gnu/services/messaging.scm (ngircd-shepherd-service) [requirement]: Use it. * doc/guix.texi (Messaging Services): Update doc. Change-Id: I8164c132ca25830885005d0e8f55554047c84a95
2025-04-10services: opensmtpd: Add logging to a file.Felix Lechner
* gnu/services/mail.scm (opensmtpd-configuration): Add log-file field. (opensmtpd-shepherd-service)[start]: Add a command line flag to not daemonize. Drop #:pid-file. Add #:log-file. * doc/guix.texi (Mail Services): Document the additional parameter. Change-Id: I485e040d680ccb39fa62e49d2e6ea916f047972c Signed-off-by: Andreas Enge <andreas@enge.fr>
2025-04-08services: anonip: Rotate log files.Ludovic Courtès
* gnu/services/web.scm (anonip-log-files): New procedure. (anonip-service-type): Use it to extend ‘log-rotation-service-type’. * doc/guix.texi (Log Rotation): Document it. Change-Id: I903bb79e0992b794bb0a40e504283cd57a8a087b
2025-04-08services: Add a default configuration value for the ngircd service.Maxim Cournoyer
* gnu/services/messaging.scm (ngircd-configuration): Adjust comment. (ngircd-wrapper): Nest bindings within the (maybe-value-set? ssl) check, to avoid errors when not providing an explicit value to the ssl field. (ngircd-service-type) [default-value]: New field. Change-Id: I1d2d7973cc9314e9bbc5870bf7b5f872d074b49b
2025-04-08services: Add ngircd-service-type.Maxim Cournoyer
* gnu/services/messaging.scm (pascal-case, ngircd-serialize-string) (ngircd-serialize-boolean, ngircd-serialize-file-like) (ngircd-serialize-list-of-strings, ngircd-serialize-list-of-ports) (ngircd-serialize-number, ngircd-serialize-port) (string-or-number?, ngircd-serialize-string-or-number): New procedures. (ngircd-global, ngircd-limits, ngircd-options, ngircd-ssl) (ngircd-operator, ngircd-server, ngircd-channel) (ngircd-configuration): New configurations. (serialize-ngircd-global, serialize-ngircd-limits) (serialize-ngircd-options, serialize-ngircd-operator) (serialize-list-of-ngircd-operators, serialize-ngircd-server) (serialize-ngircd-channel, serialize-list-of-ngircd-channels) (serialize-ngircd-configuration): New procedures. (list-of-ngircd-operators?, list-of-ngircd-servers?) (list-of-ngircd-channels?): New predicates. (ngircd-generate-documentation): New procedure. (ngircd-user+group, ngircd-account, ngircd-wrapper): Likewise. (ngircd-shepherd-service): New shepherd service. (ngircd-service-type): New service type. * gnu/tests/messaging.scm (%ngircd-os): New variable. (run-ngircd-test): New procedure. (%test-ngircd): New test. * doc/guix.texi (Messaging Services): Document it. Change-Id: I3ce9a7fd0b33afab22cf15942a1db0cf5b12bfdb
2025-04-06doc: cookbook: Update instructions for building a custom kernel.Adam Quandour
* doc/guix-cookbook.texi (Customizing the Kernel): Update. Change-Id: I4451f038219c73b685fa3e80e1b05c729d4bea35 Signed-off-by: Ludovic Courtès <ludo@gnu.org> Modified-by: Ludovic Courtès <ludo@gnu.org>
2025-04-06machine: hetzner: Allow connections using ssh-agent.Sergey Trofimov
* gnu/machine/hetzner.scm (<hetzner-configuration>): Add ssh-public-key. * doc/guix.texi (System Configuration)[hetzner-configuration]: Document it. Change-Id: I7354ead508b1a4819534c6b22ba1f089749927c2 Signed-off-by: Ludovic Courtès <ludo@gnu.org> Modified-by: Ludovic Courtès <ludo@gnu.org>
2025-04-03services: gitolite-service-type: Allow setting the admin name.Tomas Volf
* gnu/services/version-control.scm (<gitolite-configuration>): Add admin-name field. (gitolite-activation): Use it. * doc/guix.texi (Version Control Services): Document it. Remove the wrong default value of admin-pubkey. State the need for .pub extension. Change-Id: Idadf4b2697cee6d1da10e6ba03bdc2e1d729c417 Signed-off-by: Maxim Cournoyer <maxim.cournoyer@gmail.com>
2025-04-03services: gitolite-git-configuration: Add extra-content field.Tomas Volf
* gnu/services/version-control.scm (<gitolite-git-configuration>): Add extra-content field. (gitolite-git-configuration-compiler): Handle it during configuration file generation. * doc/guix.texi (Version Control Services): Document it. Change-Id: Iceb02f60b8ef26138961aefef4e56ca83df0e19f Signed-off-by: Maxim Cournoyer <maxim.cournoyer@gmail.com>
2025-04-03services: gitolite-git-configuration: Add receive-fsck-objects field.Tomas Volf
* gnu/services/version-control.scm (<gitolite-git-configuration>): Add receive-fsck-objects field. (gitolite-git-configuration-compiler): Handle it during configuration file generation. * doc/guix.texi (Version Control Services): Document it. Change-Id: Iceb02f60b8ef26138961aefef4e56ca83df0e19f Signed-off-by: Maxim Cournoyer <maxim.cournoyer@gmail.com>
2025-04-03services: gitolite-git-configuration: Add default-branch field.Tomas Volf
* gnu/services/version-control.scm (<gitolite-git-configuration>): Add default-branch field. (gitolite-git-configuration-compiler): Handle it during configuration file generation. * doc/guix.texi (Version Control Services): Document it. Change-Id: Iceb02f60b8ef26138961aefef4e56ca83df0e19f Signed-off-by: Maxim Cournoyer <maxim.cournoyer@gmail.com>
2025-04-03services: Add gitolite-git-configuration.Tomas Volf
In preparation for further customizability of the git configuration, extract the current setup into a separate record type. * gnu/services/version-control.scm (<gitolite-git-configuration>): New record type. (gitolite-git-configuration-compiler): And gexp compiler for it. (<gitolite-configuration>): Add git-config field. (gitolite-activation): Use it. * doc/guix.texi (Version Control Services): Document both. Change-Id: I7658698a93f938f62f41a4fa45b72de1eeb14414 Signed-off-by: Maxim Cournoyer <maxim.cournoyer@gmail.com>
2025-04-03services: gitolite-rc-file: Add extra-content field.Tomas Volf
* gnu/services/version-control.scm (<gitolite-rc-file>): Add extra-content field. (gitolite-rc-file-compiler): Handle it during configuration file generation. * doc/guix.texi (Version Control Services): Document it. Change-Id: I5082e1d7a27cc746641ba9ec8ae07c703da5f279 Signed-off-by: Maxim Cournoyer <maxim.cournoyer@gmail.com>
2025-04-03services: gitolite-rc-file: Add host-name field.Tomas Volf
* gnu/services/version-control.scm (<gitolite-rc-file>): Add host-name field. (gitolite-rc-file-compiler): Handle it during configuration file generation. * doc/guix.texi (Version Control Services): Document it. Change-Id: I1231ed47a294ff48b35a301f76ae8e9cbfcd9b95 Signed-off-by: Maxim Cournoyer <maxim.cournoyer@gmail.com>
2025-04-03services: gitolite-rc-file: Add log-extra field.Tomas Volf
* gnu/services/version-control.scm (<gitolite-rc-file>): Add log-extra field. (gitolite-rc-file-compiler): Handle it during configuration file generation. * doc/guix.texi (Version Control Services): Document it. Change-Id: Ice65dbdf4f42549e3c83914da7229db9d2cf856b Signed-off-by: Maxim Cournoyer <maxim.cournoyer@gmail.com>
2025-04-03doc: Update guix-science URL.Jake Forster
* doc/guix.texi (Customizing the System-Wide Guix): Update guix-science URL. Signed-off-by: Maxim Cournoyer <maxim.cournoyer@gmail.com>
2025-04-01services: file-database: Search ‘updatedb’ in package.Sergio Pastor Pérez
`file-database-service-type' appends 'bin/updatedb' path to the `package' field provided by `file-database-configuration'. This prevents users from using alternate packages which also provide 'updatedb' but in a different location. For example, the `plocate' package installs 'updatedb' in 'sbin/updatedb'. Fallback to 'sbin/' if 'updatedb' is not found in 'bin/'. * gnu/services/admin.scm (<file-database-configuration>)[package]: Update docstring. (file-database-shepherd-services): Locate 'updatedb' binary. * doc/guix.texi (File Search Services): Update accordingly. Change-Id: Ic741716044be3a8f51a157510f9f923bd66c41d7 Signed-off-by: Ludovic Courtès <ludo@gnu.org> Modified-by: Ludovic Courtès <ludo@gnu.org>
2025-04-01doc: Remove extra paren in example.Ludovic Courtès
* doc/guix.texi (Networking Setup): Remove extra parent in ‘dhcpcd-configuration’ example. Change-Id: I10cea18054424ee14318730b9e8d750e9484b35a