summaryrefslogtreecommitdiff
path: root/doc
AgeCommit message (Collapse)AuthorFilesLines
19 hoursscripts: lint: Add --manifest option.Hugo Buddelmeijer1-0/+10
* guix/scrips/lint.scm (show-help): Describe option. (%options): Add 'manifest'option. (guix-lint): Run checkers on packages defined in manifest. * doc/guix.texi (Invoking guix lint): Document option. * tests/guix-lint.sh: Test option. Normalize whitespace. * guix/scripts/refresh.scm: Export packages-from-manifest. Signed-off-by: Ludovic Courtès <ludo@gnu.org> Modified-by: Ludovic Courtès <ludo@gnu.org> Merges: #10653
2 daysdoc: Fix typo.Maxim Cournoyer1-1/+1
* doc/guix.texi (VNC Services): Fix typo.
3 daysdoc: Fix typo.Maxim Cournoyer1-1/+1
* doc/contributing.texi (Deprecation Policy): Add missing closing parenthesis.
7 dayshome: services: Add GnuPG home directory configuration.Nox1-2/+6
* gnu/home/services/gnupg.scm (home-gpg-agent-configuration) [home]: New field. (home-gpg-agent-files): Use it. (gpg-agent-activation): Use it (edited into a procedure). (home-gpg-agent-service-type): Use it. (sanitize-home): New procedure. * doc/guix.texi: Update it. Signed-off-by: Ludovic Courtès <ludo@gnu.org> Merges: #9655
7 daysgnu: linux: Use package properties to modularize initrd build.Sergio Pastor Pérez1-5/+14
* doc/guix.texi (operating-system Reference): Document initrd-modules change. (Initial RAM Disk): Inform about deprecation of '%base-initrd-modules' and document 'base-initrd-modules'. * gnu/packages/linux.scm (make-linux*): New argument 'produced-modules'. Handle GEXP in 'defconfig' arguments. (virtio-modules, default-linux-libre-initrd-modules): New variable. (make-linux-libre*): Adjust to instruct 'make-linux*' which modules a Debian configuration will produce. * gnu/system.scm (<operating-system>): Compute default operating systems initrd modules with 'base-initrd-modules'. * gnu/system/linux-initrd.scm (default-initrd-modules): Remove in favor of 'base-initrd-modules' which takes a mandatory kernel argument from which to extract the initrd-modules from the package properties. (base-initrd-modules): New procedure. (%base-initrd-modules): Deprecate in favor of 'base-initrd-modules'.
8 daysmaint: Replace remaining usages of isc-dhcp with dhcpcd.Maxim Cournoyer1-1/+1
isc-dhcp has been unmaintained since 2022. This is a follow-up to commit 3e713ae41c73b352fad4830b23721ee07935c512. * doc/guix.texi (Keyboard Layout and Networking and Partitioning): Adjust example. * etc/manifests/cross-compile.scm (%system-packages) * etc/manifests/release-desktop.scm (%desktop-packages) * etc/manifests/release-minimal.scm (%system-packages): Replace "isc-dhcp" with "dhcpcd". * gnu/system.scm (%base-packages-networking): Likewise. * gnu/tests/install.scm (%simple-installation-script) (%extlinux-gpt-installation-script) (%simple-installation-script-for-/dev/vda) (%separate-store-installation-script) (%extra-encrypted-packages): Likewise.
8 daysdoc: Remove obsolete warning regarding dhcp-client.Sergey Trofimov1-8/+0
* doc/guix.texi (Networking Setup): Remove obsolete dhcp-client-service-type warning. Change-Id: I42d7c22273efd95446f45c04acc80c728d5a417f Signed-off-by: Maxim Cournoyer <maxim@guixotic.coop>
8 daysservices: elogind: Remove deprecated fields.Herman Rimm1-9/+0
* gnu/services/desktop.scm (elogind-deprecated-empty-serializer): Remove variable. (elogind-configuration): Remove deprecated fields. * doc/guix.texi (Desktop Services): Remove descriptions for deprecated configuration fields. Change-Id: Ic4847d9da352671eb0dd7a7ffe507b8b5ff149e4 Signed-off-by: Maxim Cournoyer <maxim@guixotic.coop>
8 daysdoc: Fix a broken reference to the Shepherd's manual.Maxim Cournoyer1-1/+1
11 daysgnu: services: audio: Add snapcast snapserver service.Christopher Baines1-4/+170
This is just the server component, another service definition is needed for the snapclient. * gnu/services/audio.scm: (snapserver-stream, snapserver-stream?, snapserver-stream-name, snapserver-stream-type, snapserver-stream-location, snapserver-stream-codec, snapserver-stream-sampleformat, snapserver-stream-chunk-ms, snapserver-stream-parameters, snapserver-configuration, snapserver-configuration?, snapserver-configuration-package, snapserver-configuration-user, snapserver-configuration-group, snapserver-configuration-shepherd-requirement, snapserver-configuration-log-file, snapserver-configuration-log-filter, snapserver-configuration-data-directory, snapserver-configuration-mdns?, snapserver-configuration-http?, snapserver-configuration-http-port, snapserver-configuration-http-bind-address, snapserver-configuration-doc-root, snapserver-configuration-tcp-control?, snapserver-configuration-tcp-control-port, snapserver-configuration-tcp-streaming?, snapserver-configuration-tcp-streaming-port, snapserver-configuration-streams, snapserver-configuration-codec, snapserver-configuration-sampleformat, snapserver-configuration-buffer-ms, snapserver-configuration-chunk-ms, snapserver-configuration-send-to-muted?, snapserver-configuration-extra-content): New procedures. (snapserver-service-type): New variable. * doc/guix.texi (Audio Services): Document it. Change-Id: I5dd2c15ff8c1b560abd481147312a8d6fc844776
12 daysservices: Add home-goimapnotify-service-type.Sergio Pastor Pérez1-0/+169
* doc/guix.texi (Mail Home Services): Document 'home-goimapnotify-service-type' and 'home-goimapnotify-configuration'. * gnu/home/services/mail.scm (camelize-field-name) (goimapnotify-serialize-field, goimapnotify-serialize-boolean): New procedure. (field-name-mapping): New parameter. (goimapnotify-tls-options-configuration): New configuration. (goimapnotify-serialize-string, goimapnotify-serialize-maybe-string) (goimapnotify-serialize-string-or-gexp): New procedure. (goimapnotify-serialize-maybe-string-or-gexp): New maybe type. * gnu/home/services/mail.scm (goimapnotify-box-configuration): New configuration. (serialize-goimapnotify-tls-options-configuration): New maybe type. (goimapnotify-tls-options-configuration): New configuration.:(list-of-goimapnotify-boxes-configurations?): New procedure. (serialize-list-of-goimapnotify-boxes-configurations): New configuration. (goimapnotify-configuration): New configuration. (serialize-goimapnotify-configuration)::(list-of-goimapnotify-configurations?) (serialize-list-of-goimapnotify-configurations): New procedure. (home-goimapnotify-configuration): New configuration. (home-goimapnotify-shepherd-service): New service. (home-goimapnotify-service-type): New service type. Signed-off-by: Ludovic Courtès <ludo@gnu.org> Merges: #10104
13 daysgnu: services: pm: Add hd-idle.Christopher Baines1-0/+95
* gnu/services/pm.scm: (hd-idle-disk, hd-idle-disk?, hd-idle-configuration, hd-idle-configuration?): New prodedures. (hd-idle-service-type): New variable. * doc/guix.texi (Power Management Services): Document it. Change-Id: I205b9a8de9aa8a15314d03962582aa3ae245a31e
13 daysservices: cuirass: Add ‘minimum-disk-space’ field.Ludovic Courtès1-0/+4
* gnu/services/cuirass.scm (<cuirass-remote-worker-configuration>) [minimum-disk-space]: New field. (cuirass-remote-worker-shepherd-service): Honor it. * doc/guix.texi (Continuous Integration): Document it. Signed-off-by: Ludovic Courtès <ludo@gnu.org> Merges: #10691
13 daysservices: Rewrite 'zulip-irc-bridge-configuration' with ↵Sergio Pastor Pérez1-9/+15
'define-configuration/no-serialization'. * gnu/services/messaging.scm (zulip-irc-bridge-configuration): Rewrite using 'define-configuration/no-serialization'. (zulip-irc-bridge-services): Adjust for handling 'maybe-string' types. Signed-off-by: Ludovic Courtès <ludo@gnu.org> Merges: #10180
13 daysdoc: Add new chapter about Guix extensions.Sergio Pastor Pérez1-0/+25
* doc/guix.texi (Extending Guix): Add new chapter. Signed-off-by: Ludovic Courtès <ludo@gnu.org>
14 daysdoc: Improve documentation of ‘trivial-build-system’.Ludovic Courtès1-9/+31
* doc/guix.texi (Build Systems): Fold the trivial build system intro under ‘trivial-build-system’; refer to gexps instead of ‘build-expression->derivation’; add an example; add cross-reference to ‘copy-build-system’. Signed-off-by: Ludovic Courtès <ludo@gnu.org> Merges: #10608
2026-08-17daemon: Bypass authentication when importing content-addressed store items.Ludovic Courtès1-2/+10
This puts ‘importPaths’ on par with ‘addToStore’ and ‘addTextToStore’: since the two latter RPCs let anyone add content-addressed items in the store, there’s no reason for ‘importPaths’ to require signatures by authorized keys on these content-addressed items. This will allow for things like ‘guix copy’ of .drv items without authorization, or ‘guix deploy’ with (build-locally? #f) without authorization. * nix/libstore/store-api.hh (isContentAddressedPath): New prototype. * nix/libstore/store-api.cc (isContentAddressedPath): New function. * nix/libutil/util.hh (isPlainFile): New prototype. * nix/libutil/util.cc (isPlainFile): New function. * nix/libstore/local-store.cc (LocalStore::importPath): Define ‘narHash’ and ‘contentAddressed’. Allow unsigned imports when ‘contentAddressed’ is true; bypass signature verification when ‘contentAddressed’ is true. * tests/store.scm ("import not signed"): Rewrite to not use a content-addressed store item. ("import signed by unauthorized key"): Likewise. ("import not signed but content-addressed tree"): New test. ("import not signed but content-addressed regular file"): New test. ("import signed by unauthorized key but content-addressed"): New test. ("import with corrupt signature"): New test. ("import signed by authorized key but hash doesn't match"): New test. ("import with corrupt signature but content-addressed"): New test. ("import signed by authorized key, hash doesn't match, but content-addressed"): New test. * doc/guix.texi (Invoking guix archive): Document the exception for content-addressed store items. Add anchor for ‘--authorize’. (Invoking guix deploy): Document the benefit of (build-locally? #f). Add cross-reference for ‘authorize?’. Co-authored-by: Reepca Russelstein <reepca@russelstein.xyz> Signed-off-by: Ludovic Courtès <ludo@gnu.org> Merges: #8979
2026-08-14services: vmware-vmtoolsd: Add vmware-vmtoolsd service.Douglas Deslauriers1-0/+27
Reasoning on running these executables outside a VMWare hypervisor is difficult, which mean we can't implement service tests in current state of the art in upstream QEMU. Essentially the first thing any `open-vm-tools' executable checks is whether it is executing in a VMWare hypervisor via `CPUID_VMWARE_HYPERVISOR_VENDOR_STRING' [1]. This would fail for any machine not running inside VMWare. Marionette evaluations in Guix use QEMU to run the virtual machines that some tests run on. QEMU emulates and allow configuration of some CPUID flags and vendor strings. It does not emulate the hypervisor flag, or allow configuration of the hypervisor vendor flag, which would be required for this program to run and output anything observable, other than a non-zero exit code. In the case someone added upstream QEMU support for custom CPUID hypervisor flags and vendor strings, these executables would initialize a log file, but could not test anything meaningful without a hypercall interface. QEMU sort-of emulates such an interface when it is told to act like the Xen hypervisor, but doesn't seem to support the required `vmcall', `vmmcall', or `inl' x86 assembly instruction communication mechanism between the host and guest. The Linux KVM supports a limited set of hypercalls [2], but certainly not the ones required for these executables, the same applies for Hurd. Since the KVM project already has a functional serial interface between the guest and host [3], it is a low possibility upstream would want to greatly expand the `vmcall' hypercall support in any case. An alternative path would be to add the `USE_VALGRIND' define when compiling the `vmware-open-vm-tools' package, which skips the hypervisor CPUID flag checking, but still would require proper hypercall support to test anything useful. Additionally, this would require another package, or perhaps a "testing" output of the `vmware-open-vm-tools' pacakge, which would be a nearly entire duplicate of the executables and would be used exclusively for whichever test is written. 1. <https://github.com/vmware/open-vm-tools/blob/stable-13.1.x/open-vm-tools/lib/vmCheck/vmcheck.c#L335> 2. <https://docs.kernel.org/virt/kvm/x86/hypercalls.html> 3. <https://linux-kvm.org/page/VMchannel_Requirements> * gnu/services/virtualization.scm (vmware-vmtoolsd-shepherd-service): new procedures. (vmware-vmtoolsd-service-type): new service type (vmware-vmtoolsd-configuration): new struct. update copyright commentary. * doc/guix.texi (Virtualization Services): document it. Merges: guix/guix!5098 Modified-by: Sharlatan Hellseher <sharlatanus@gmail.com> Signed-off-by: Sharlatan Hellseher <sharlatanus@gmail.com>
2026-08-07doc: Fix -E option example of `guix shell'.Maxim Cournoyer1-4/+5
The TERM variable had been changed to OMP_NUM_THREADS in the example, but the text hadn't been adjusted. * doc/guix.texi (Invoking guix shell): Replace TERM with OMP_NUM_THREADS, as well as its associated value (from "no-color" to "16").
2026-07-29services: rsync: Remove deprecated configuration options.Maxim Cournoyer1-1/+1
These have been deprecated since 2021. * gnu/services/rsync.scm (warn-share-field-deprecation): Delete syntax. (<rsync-configuration>) [use-chroot?, share-path, share-comment] [read-only?, timeout]: Delete deprecated fields. (rsync-configuration-modules): Delete compatibility procedure. * doc/guix.texi (Networking Services) <rsync-configuration>: Update doc. Change-Id: Ia7742deaf61dc87824e70172647f2974c5ddb758
2026-07-29doc: Update dependency URLs.fanquake1-2/+2
* doc/contributing.texi (Requirements): Update URLs. Merges: https://codeberg.org/guix/guix/pulls/10206 Signed-off-by: Nguyễn Gia Phong <cnx@loang.net>
2026-07-28services: elogind: Fix runtime-directory-size field.Herman Rimm1-10/+6
Both runtime-directory-size and runtime-directory-size-percent field currently cause an error if set. A comment above the latter already calls for its deprecation. This patch combines both into a single field and fixes their serialization. * gnu/services/desktop.scm (percent?, percent, elogind-serialize-percent): Replace with… (non-negative-integer-and-suffix?, non-negative-integer-and-suffix) (elogind-serialize-non-negative-integer-and-suffix): … these. (elogind-configuration)[runtime-directory-size-percent]: Remove field, integrating logic into … [runtime-directory-size]: … here. Serialize it. * doc/guix.texi (Desktop Services): Adjust accordingly. Signed-off-by: Liliana Marie Prikler <liliana.prikler@gmail.com> Merges: guix/guix#9987
2026-07-26services: rabbitmq: Depend on epmd.wrobell1-0/+1
* gnu/services/high-availability.scm (rabbitmq-shepherd-service): Change requirement to epmd service. * doc/gnu.texi (High Availability Services): Document it. * gnu/tests/high-availability.scm (%rabbitmq-os): Add epmd service. Merges: https://codeberg.org/guix/guix/pulls/9607 Signed-off-by: Nguyễn Gia Phong <cnx@loang.net>
2026-07-26services: Add epmd-service-type.wrobell1-5/+49
Add Erlang Port Mapper Daemon (epmd) service. Run the service on localhost by default. * gnu/services/high-availability.scm (<epmd-configuration>): New record. (epmd-service-type): New variable. * gnu/tests/high-availability.scm (run-epmd-test): New procedure. (%epmd-os, %tests-epmd): New variables. * doc/gnu.texi (High Availability Services): Document it. Merges: https://codeberg.org/guix/guix/pulls/9607 References: https://www.rabbitmq.com/blog/2024/12/18/epmd-public-exposure References: https://erlef.org/blog/eef/epmd-public-exposure Signed-off-by: Nguyễn Gia Phong <cnx@loang.net>
2026-07-25services: Add `zulip-irc-bridge-service-type'.Sergio Pastor Pérez1-0/+69
* gnu/services/messaging.scm: (zulip-irc-bridge-configuration): New configuration record. (%zulip-accounts): New variable. (zulip-irc-bridge-services): New procedure. (zulip-irc-bridge-service-type): New service. * doc/guix.texi (Messaging Services): Document `zulip-irc-bridge-service-type' and `zulip-irc-bridge-configuration'. Change-Id: Ie74aa71f2912ccd905c0866ede9ead7b397f7c64 Signed-off-by: Ludovic Courtès <ludo@gnu.org> Modified-by: Ludovic Courtès <ludo@gnu.org> Merges: #7047
2026-07-22home: xdg-user-directories: Support Projects directory.Noé Lopez1-0/+63
* gnu/home/services/xdg.scm (home-xdg-user-directories-configuration): Add projects field. Fix documentation of desktop field. * doc/guix.texi (Miscellaneous Home Services): Add documentation for home-xdg-user-directories. Merges: https://codeberg.org/guix/guix/pulls/8023
2026-07-20doc: Document current policy for vendored code.Giacomo Leidi1-14/+77
* doc/contributing.texi (Dependencies Unbundling): New subsection. Signed-off-by: Gabriel Wicki <gabriel@erlikon.ch>
2026-07-17doc: Add a more complete Qemu example for new comers.Fonzie Huang1-0/+31
* doc/guix.texi (Running Guix in a VM): Update Qemu command example. Signed-off-by: Gabriel Wicki <gabriel@erlikon.ch>
2026-07-17doc: Update deprecated Qemu short-form boolean option.Fonzie Huang1-1/+1
Running the example with old Qemu short-form boolean option will trigger "warning: short-form boolean option 'disable-ticketing' deprecated Please use disable-ticketing=on instead". See https://www.qemu.org/docs/master/about/deprecated.html#short-form-boolean-options-since-6-0 * doc/guix.texi (Running Guix in a VM): Update Qemu option. Signed-off-by: Gabriel Wicki <gabriel@erlikon.ch>
2026-07-13system: nss: Add protocols database.Dariqq1-0/+1
* gnu/system/nss.scm (<name-service-switch>): Add protocols field. (name-service-switch->string): Add protocols to serialization. * doc/guix.texi (Name Service Switch): Add protocols to list of available databases. Change-Id: Icf77556359680670e12b7add434fac401662266d Signed-off-by: Ludovic Courtès <ludo@gnu.org> Merges: #9293
2026-07-13doc: Fix package field on nix-configuration.Orahcio Felício de Sousa1-1/+1
* doc/guix.texfi (nix-configuration): Replace the field name 'nix' with 'package', as defined in nix-service-type. Merges: https://codeberg.org/guix/guix/pulls/9887 Signed-off-by: Nguyễn Gia Phong <cnx@loang.net>
2026-07-11services: Fix typo.Julien Lepiller1-2/+2
* gnu/services/base.scm (nwg-hello-configuration): Fix typo. * doc/guix.texi: Modify accordingly. Change-Id: I64d91588773978d45d8df3562ef4dde900da9bf0
2026-07-11doc: Fix typos.Julien Lepiller2-10/+10
* doc/guix-cookbook.texi: Fix typos. * doc/guix.texi: Fix typos. Co-Authored-By: Konstantin Suntsov <protvin@disroot.org> Change-Id: I251274b29683d9ce5b89189a303d7ee7bf6a4638
2026-07-11doc: Add TRANSLATORS comment.Julien Lepiller2-0/+10
* doc/guix.texi: Add comment in headers to help translators. * doc/guix-cookbook.texi: idem. Change-Id: I84d56a47deb0cab442d4b638908736d44303bfa1
2026-07-11doc: cookbook: Improve style in section about updating rust packageswrobell1-2/+2
* doc/guix-cookbook.texi (Common Workflow for Updating Existing Rust Packages): Improve style by dropping double "now" and "following" words. Change-Id: I7426920dcd1717ccb410059bd3634b2b3fd48cc1 Signed-off-by: Ludovic Courtès <ludo@gnu.org> Merges: #9802
2026-07-11doc: Improve instructions to minimize unexpected test failures.Hugo Buddelmeijer1-17/+32
* doc/contributing.texi (Building from Git): Suggest `guix shell --pure` as that is currenlty the only way to make the tests pass on the first run. (Running the Test Suite): Explain which test failures are expected depending on each setup. Change-Id: I3425879dcd2a71c2e3c2fd00b55c819447ac9437 Signed-off-by: Ludovic Courtès <ludo@gnu.org> Modified-by: Ludovic Courtès <ludo@gnu.org> Merges: #9408
2026-07-06services: sddm: Use sddm-qt5 by default.Hilton Chain1-6/+1
This improves out-of-box experience of the service, since the default theme only supports sddm-qt5. * gnu/services/sddm.scm (<sddm-configuration>) [sddm]: Use sddm-qt5. * doc/guix.texi (X Window) [sddm-configuration]: Adjust accordingly. Change-Id: I97825751fc230b41fbc3d5d1ae86eb2408c4dc29 Merges: #7480
2026-07-05build: Do not attempt to build Tamil translation of the Cookbook.Ludovic Courtès1-1/+1
This is a followup to 2a53bb66807bd874bb974e2089968dcbde3c8aa0, which removed said translation. * doc/local.mk (COOKBOOK_LANGUAGES): Remove ‘ta’.
2026-07-04nls: Update translations.Florian Pelz4-9/+5
* po/doc/guix-cookbook.ta.po: Delete file, as it is based on clearly low-quality machine translation. * po/doc/local.mk: Remove 'ta' cookbook. * po/doc/po4a.cfg (po4a_langs): Remove 'ta'. * doc/local.mk: Remove 'ta' cookbook. * doc/htmlxref.cnf: Update URLs for cookbook. * doc/build.scm (%cookbook-languages): Remove 'ta'. (html-manual-indexes)<language-index>: Do not hide PDF for 'ta'. * doc/guix-cookbook.texi (Top): Do not mention 'ta' cookbook.$
2026-07-03profiles: Add manifest generator based on build-system.Romain GARBAGE1-0/+17
* guix/profiles.scm (build-system->manifest): New procedure. * doc/guix.texi (Writing Manifests): Document it. * tests/profiles.scm: Test it. Merges: #7272 Change-Id: Iaba54d5d4a1a9ae304de45f91374098617adebfc Signed-off-by: Simon Tournier <zimon.toutoune@gmail.com>
2026-07-03doc: cookbook: Fix shell instructions on updating rust packages.Cayetano Santos1-2/+2
* doc/guix-cookbook.texi (Common Workflow for Updating Existing Rust Packages): Add missing packages. Merges guix/guix!9496
2026-07-02services: Add kanata-service-type.coopi1-0/+23
* gnu/services/desktop.scm: Import (gnu packages rust-apps). (kanata-configuration): New record type. (kanata-shepherd-services): New procedure. (%kanata-group, %kanata-user, %kanata-accounts, %kanata-udev-rule) (kanata-service-type): New variables. * doc/guix.texi (Desktop Services): Document `kanata-service-type'. Change-Id: I5e8041c6dba17ae0fad33b8ca74099c053c4a3ea Signed-off-by: Ludovic Courtès <ludo@gnu.org> Merges: #9093
2026-07-01cookbook: Update subtitle.Gabriel Wicki1-1/+1
GNU Guix has grown to be much more than a "Functional Package Manager". This change reflects that fact. * doc/guix-cookbook.texi (@subtitle): Update it. Signed-off-by: Gabriel Wicki <gabriel@erlikon.ch>
2026-07-01cookbook: Add gabber to copyright lines.Gabriel Wicki1-0/+1
* doc/guix-cookbook.texi: Add myself to copyright lines. Signed-off-by: Gabriel Wicki <gabriel@erlikon.ch>
2026-07-01cookbook: Fix order of copyright holders.Gabriel Wicki1-2/+2
* doc/guix-cookbook.texi: Order copyright notices by year. Signed-off-by: Gabriel Wicki <gabriel@erlikon.ch>
2026-06-28services: Update rabbitmq servicewrobell1-9/+21
Update RabbitMQ default configuration to use localhost interface by default and avoid listening on public interfaces. Change the default configuration file to set inter-node communication listener to localhost network interface (see also https://www.rabbitmq.com/docs/networking#distribution). This requires setting RabbitMQ node name to `rabbit@localhost`, so introduce `node-name` RabbitMQ configuration field with such default value. Path to the RabbitMQ environment configuration file was hardcoded. Remove the hardcoding and allow to create such file with env-config-file RabbitMQ configuration field. Add new RabbitMQ service tests to check RabbitMQ broker startup and status after the service is started. * gnu/services/high-availability.scm (<rabbitmq-configuration>) [<node-name>, <env-config-file>]: New fields. (rabbitmq-shepherd-service): Use them. (%default-rabbitmq-config-file): Update. * gnu/tests/high-availability.scm (run-rabbitmq-test): Add new tests. * doc/gnu.texi (High Availability Services): Document new fields and provide information about local interfaces. Merges: guix/guix!9360 Signed-off-by: Sharlatan Hellseher <sharlatanus@gmail.com>
2026-06-24services: Add nwg-hello greeter for greetd.Sughosha1-0/+126
* gnu/services/base.scm (nwg-hello-configuration): New configuration. (nwg-hello-configuration-file): New variable. (nwg-hello-style): New configuration. (nwg-hello-stylesheet): New variable. (greetd-nwg-hello-sway-session): New configuration. (make-greetd-nwg-hello-sway-session-sway-config): New variable. (greetd-nwg-hello-sway-session-compiler): New gexp compiler. * doc/guix.texi (Base Services): Document the new greeter. Merges: guix/guix!7644 Reviewed-by: Maxim Cournoyer <maxim@guixotic.coop> Signed-off-by: Sharlatan Hellseher <sharlatanus@gmail.com>
2026-06-24pull: Add channel filtering options to the CLI.Sergio Pastor Pérez1-1/+23
* doc/guix.texi (Invoking guix pull): Document channel selection and exclusion flags. * etc/news.scm: Add entry. * guix/scripts/pull.scm (show-help): Add help strings for channel selection and exclusion flags. (%options): Handle channel selection and exclusion flags. (collect-alist-values): New procedure. (options->channel-transformation): New procedure. (channel-list): Implement channel selection and exclusion logic. * guix/scripts/time-machine.scm (show-help): Add help strings for channel selection and exclusion flags. (%options): Handle channel selection and exclusion flags. Change-Id: Ia22c5c38903ed1a2b9a9353ff94b70795820376d Signed-off-by: Ludovic Courtès <ludo@gnu.org> Modified-by: Ludovic Courtès <ludo@gnu.org>
2026-06-24import: npm-binary: Add a '--binary' option.Maxim Cournoyer1-7/+8
This changes the default behavior of the 'npm-binary' importer to prefer using pristine sources from Git when available, along with attempting to build the package. It adds a '--binary' option to the importer to preserve the previous behavior. * guix/import/git.scm (get-tags): Export. * guix/import/npm-binary.scm (<repository>): New JSON mapping. (<package-revision>): Add a repository field. (npm-package->package-sexp) [#:binary?]: New keyword. Update doc. Conditionally splice #:phases argument. <normalize-git-url, sexpify-git-tag/maybe>: New nested procedures. (npm-package->package-sexp) [binary?]: Expand origin conditionally to BINARY?. (npm-binary->guix-package) [#:binary?]: New keyword. (npm-binary-recursive-import): Likewise. * guix/import/utils.scm (git->origin) [#:eager?]: New keyword. Update doc. * guix/scripts/import/npm-binary.scm (show-help): Document new --binary option. (guix-import-npm-binary): Honor the new option. Change-Id: I8e8c1c333faa8f5c96184ada064b63bdf2b4e165
2026-06-24import: npm-binary: Simplify deletion of development dependencies.Maxim Cournoyer1-0/+11
* guix/build/node-build-system.scm (delete-dev-dependencies): Include peerDependencies as well. * guix/import/npm-binary.scm (npm-package->package-sexp): Use it to delete all development dependencies, instead of listing them. * doc/guix.texi (Invoking guix import): Document this special treatment. Change-Id: I97b20aa59db67dc0297e0514e8ae083ac2088cb2