summary refs log tree commit diff
path: root/doc/guix.texi
AgeCommit message (Collapse)Author
2024-07-26services: agate: Update options for compatibility with the current Agate ↵Rodion Goritskov
version. * gnu/services/web.scm (<agate-configuration>)[certs]: Add. [cert]: Remove. [key]: Remove. [hostname]: Change from string to list. [silent?]: Remove. [only-tls13?]: Add. [central-conf?]: Add. [ed25519?]: Add. [skip-port-check?]: Add. (agate-shepherd-service): Change handling of addr and hostname, add new options handling. * doc/guix.texi (Web Services): Update. Change-Id: Ifb4968d704627344913bb69f20636d710a4fe738 Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2024-07-20doc: Add note about use sddm with qt5 theme.Z572 via Guix-patches via
* doc/guix.texi (X Window): Add note about use sddm with qt5 theme. Change-Id: I57eebc696803894f154e09347283d3327db8a084 Signed-off-by: Zheng Junjie <zhengjunjie@iscas.ac.cn>
2024-07-07doc: Update note on Emacs packages.Liliana Marie Prikler
* doc/guix.texi ("Emacs packages"): Expand note to talk about differences between native compilation upstream and as used in Guix.
2024-07-05services: oci-container: Allow setting Shepherd actions in ↵Giacomo Leidi via Guix-patches via
oci-container-configuration. * gnu/services/docker.scm (oci-container-configuration) [shepherd-actions]: New field. (sanitize-shepherd-actions): sanitize it. (oci-container-shepherd-service): use it. * doc/guix.texi: Document it. Change-Id: I0ca9826542be7cb8ca280a07a9bff1a262c2a8a7 Signed-off-by: Zheng Junjie <zhengjunjie@iscas.ac.cn>
2024-07-05services: oci-container: Allow setting Shepherd respawn? in ↵Giacomo Leidi via Guix-patches via
oci-container-configuration. * gnu/services/docker.scm (oci-container-configuration) [respawn?]: New field. (oci-container-shepherd-service): use it. * doc/guix.texi: Document it. Change-Id: I0d6367607fd0fd41f90a54b33d80bf4d4f43dd8b Signed-off-by: Zheng Junjie <zhengjunjie@iscas.ac.cn>
2024-07-05services: oci-container: Allow setting Shepherd auto-start? in ↵Giacomo Leidi via Guix-patches via
oci-container-configuration. * gnu/services/docker.scm (oci-container-configuration) [auto-start?]: New field. (oci-container-shepherd-service): use it. * doc/guix.texi: Document it. Change-Id: Id093d93effbbec3e1be757f8be83cf5f62eaeda7 Signed-off-by: Zheng Junjie <zhengjunjie@iscas.ac.cn>
2024-07-05services: oci-container: Allow setting Shepherd log-file in ↵Giacomo Leidi via Guix-patches via
oci-container-configuration. * gnu/services/docker.scm (oci-container-configuration) [log-file]: New field. (oci-container-shepherd-service): use it. * doc/guix.texi: Document it. Change-Id: Icad29ac6342b6f5bafc0d9be13a93cee99674185
2024-07-05doc: Minor changes to the OCI-backed Services documentation.Giacomo Leidi via Guix-patches via
* doc/guix.texi: Clarify the example and remove reduntant escapes. Change-Id: I38f5517ae46b391ba21ae5a94c6dcc272e245036
2024-06-26services: guix: Default `channels' field to #f.Tomas Volf
In the absence of the /etc/guix/channels.scm file, %default-channels is used anyway. If user manually (or by extra-special-file) created the file, we should respect it. This commit therefore changes the default to #f, hopefully having zero impact on people not actively using the `channels' field. * gnu/services/base.scm (<guix-configuration>)[channels]: Set default to #f. Change-Id: I516c1735a037a153fabbebfc337051aaf0be2155 Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2024-06-26doc: Warn about extra-special-file usage in /etc.Tomas Volf
* doc/guix.texi (Base Services)[extra-special-file]: Add warning regarding files in /etc. Change-Id: Ic45465c8712d61caeed42d7912777368e8763a1a Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2024-06-26services: shepherd: Support “free-form” services.Ludovic Courtès
* gnu/services/shepherd.scm (<shepherd-service>)[free-form]: New field. [start]: Add default value. (shepherd-service-file): Rename to… (shepherd-service-file/regular): … this. (shepherd-service-file/free-form): New procedure. (shepherd-service-file): Dispatch to one of the two procedures above. * doc/guix.texi (Shepherd Services): Document the ‘free-form’ field. Reviewed-by: Maxim Cournoyer <maxim.cournoyer@gmail.com> Change-Id: I206374e950ef6d1e4a996c0f507fb5fcd9cadde3
2024-06-26services: web: Improve nginx formatting for extra-content.Richard Sent
When extra-content is a list, add 4 space indentation and a newline to every line. If it's a string, continue inserting it directly. This makes the list serialization behavior more consistent with other services. * gnu/services/web (default-nginx-config): Support lists. * doc/guix.texi (Web Services)[nginx-configuration]: Document it. Change-Id: Iec8614ba3cfc37292a566197e8d39b352b04846a Signed-off-by: Christopher Baines <mail@cbaines.net>
2024-06-24doc: Improve description of nginx's configuration.Tomas Volf
* doc/guix.texi (Web Services)[nginx-server-configuration]: Document semantics of raw-content field. [nginx-location-configuration]: Document semantics of body field. Change-Id: I1e699d085a27f2615190de1e1973146da4ab193d Signed-off-by: Maxim Cournoyer <maxim.cournoyer@gmail.com>
2024-06-24gnu: grub: Update to 2.12.Ludovic Courtès
* gnu/packages/bootloaders.scm (grub): Update to 2.12. [source](patches): Remove ‘grub-ignore-metadata-csum-seed.patch’. (snippet): Create ‘grub-core/extra_deps.lst’. Replace “exit 99” by “exit 77”. (grub-coreboot): Update value of ‘XFAIL_TESTS’. * doc/guix.texi (Keyboard Layout and Networking and Partitioning): Update accordingly (it should now be fine to use LUKS2). * gnu/packages/patches/grub-ignore-metadata-csum-seed.patch: Remove. * gnu/local.mk (dist_patch_DATA): Remove it. Change-Id: Ia31b3b7e0a2e7de42d30229733e9c196fcd12fd9 Signed-off-by: Maxim Cournoyer <maxim.cournoyer@gmail.com> Modified-by: Maxim Cournoyer <maxim.cournoyer@gmail.com>
2024-06-24doc: Prepend ISC to DHCP client references.Richard Sent
This makes it clearer that this service uses the ISC's dhclient implementation and does not support DHCP clients that have different command line interfaces. * doc/guix.texi (Networking Setup): Prepend ISC to all DHCP client references. Change-Id: I750ef2ffb4b23445c4a2b97aaa44eba56458f430 Signed-off-by: Maxim Cournoyer <maxim.cournoyer@gmail.com>
2024-06-24services: networking: Allow dhcp-client to use a config file.Richard Sent
* gnu/services/networking.scm (dhcp-client-configuration) [config-file]: New field. (dhcp-client-configuration-config-file): New accessor. (dhcp-client-shepherd-service): Use the config file when invoking dhclient if supplied. * doc/guix.texi: Document it. Change-Id: I286de4ddf59c5e606bf1fe0a7510570869e62b1a Signed-off-by: Maxim Cournoyer <maxim.cournoyer@gmail.com>
2024-06-23services: radicale: Use define-configuration.Juliana Sims
* doc/guix.texi (radicale-configuration): Update documentation to reflect new configuration, add new symbols. * gnu/services/mail.scm (%default-radicale-config-file): Delete. (radicale-auth-configuration, radicale-auth-configuration?) (radicale-encoding-configuration, radicale-encoding-configuration?) (radicale-logging-configuration, radicale-logging-configuration?) (radicale-rights-configuration, radicale-rights-configuration?) (radicale-server-configuration, radicale-server-configuration?) (radicale-storage-configuration, radicale-storage-configuration?): New configuration types and corresponding predicates. (radicale-configuration, radicale-configuration?): Use define-configuration. (radicale-activation, radicale-shepherd-service): Update to new configuration format. (radicale-activation): Use user-defined values for service files. (radicale-service-type): Capitalize "Radicale" in description. Change-Id: Ic88b8ff2750e3d658f6c7cee02d33417aa8ee6d2 Signed-off-by: Liliana Marie Prikler <liliana.prikler@gmail.com>
2024-06-22doc: Fix typo in Guix Home ServiceRichard Sent
* doc/guix.texi (Guix Home Service): Change home-service-type to guix-home-service-type in example. Change-Id: Ief7f71c9e6494ced20ccda3bb2643f01eabe8441 Signed-off-by: Zheng Junjie <zhengjunjie@iscas.ac.cn>
2024-06-13services: dnsmasq: Add escape hatch.Sergey Trofimov
* gnu/service/dns.scm: (<dnsmasq-configuration>)[extra-options]: Add. * doc/guix.texi: Document (<dnsmasq-configuration>)[extra-options]. Signed-off-by: Ludovic Courtès <ludo@gnu.org> Change-Id: I7d2df7aa5d3b041b69b2f8b3e311a7328c28a3be
2024-06-13doc: Use a symbol for Cuirass specification names.Ludovic Courtès
* doc/guix.texi (Continuous Integration): Change ‘name’ field of ‘specification’ to be a symbol, as written in upstream Cuirass doc. Change-Id: I0a8cddfb8ab47f627a01459393aaf346028bb3f6
2024-06-12doc: Document mumi am, compose and www subcommands.Arun Isaac
* doc/contributing.texi (Debbugs User Interfaces)[Command-line interface]: Document mumi am, compose and www subcommands. * doc/guix.texi: Bump copyright year. Change-Id: I28bde9454ad35115ed60fe4d6ffa35fad599b2d1
2024-06-12doc: Update field name in gitile-configuration.Nguyễn Gia Phong
* doc/guix.texi (gitile-configuration): Update field name nginx-server-block to nginx. Change-Id: I215d3d57c1cb88271c580fa1426a661477a775f7 Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2024-06-06doc: Binary Installation: Add Parabola packages.Denis 'GNUtoo' Carikli
* doc/guix.texi (Binary Installation): Add Parabola packages. Co-authored by: Florian Pelz <pelzflorian@pelzflorian.de> Change-Id: Id646152c54de0a958740314b09fdcf6af898e22e Signed-off-by: Florian Pelz <pelzflorian@pelzflorian.de>
2024-06-06doc: Binary Installation: Mention Trisquel package.Denis 'GNUtoo' Carikli
* doc/guix.texi (Binary Installation): Also mention Trisquel package. Change-Id: Iae6f77de43de2c6f387b99a10dcae5b9d82aaee1 Signed-off-by: Florian Pelz <pelzflorian@pelzflorian.de>
2024-06-06doc: Advise system administrators to read and follow security notices.Florian Pelz
* doc/guix.texi (Binary Installation): Prefix installation instructions with the advice. Change-Id: I088c7f00f4c3c8e32bdfd117ea934942930f7513
2024-06-04services: base: Add optional delayed mount of file-systemsRichard Sent
Add a mechanism to only require mounting a subset of file-system entries during early Shepherd initialization. Any file-system with additional Shepherd service requirements (e.g. networking) is not required to provision 'file-systems. * gnu/services/base.scm (file-system-shepherd-service): Splice file-system-requirements into the Shepherd service requirement list. (file-system-shepherd-services): Provision 'file-system only when file system services without additional Shepherd requirements are started. * gnu/system/file-systems.scm (file-system): Add shepherd-requirements field to the file-system record. This field is used for adding additional Shepherd requirements to a file-system Shepherd service. * doc/guix.texi: Add documentation for file-system shepherd-requirements. Change-Id: If0392db03d48e8820aa53df1df482c12ec72e1a5 Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2024-06-02services: nscd: ‘log-file’ defaults to #f.Ludovic Courtès
* gnu/services/base.scm (<nscd-configuration>)[log-file]: Default to #f. * doc/guix.texi (Base Services): Clarify documentation. Change-Id: Ia75914fc2665db13bef688d53659083a615ebef4
2024-06-02Revert "services: home: Use pairs instead of lists."Andrew Tropin
This reverts commit dbeef44f3c520816251bde74c1005915a637e1ef. Despite the more semantically correct data type, it doesn't follow the style of the most services and also breaks user-facing API. Change-Id: Ib4ef4e9cd2f53ac853a5b7c7c90e57c35c99a5ea
2024-06-02services: home: Use pairs instead of lists.Andrew Tropin
* gnu/services/guix.scm: Use pairs instead of lists. * doc/guix.texi: Update accordingly. * gnu/tests/guix.scm: Update accordingly. Change-Id: I0b8d3fa5b214add89bdb84a11fa20d1b319435f0
2024-05-30home: services: Add home-startx-command-service-type.Tomas Volf
* gnu/home/services/desktop.scm (home-startx-command-service-type): New variable. (startx-command-service-type): New service-type mapping. * doc/guix.texi (Guix Home Services): Document home-startx-command-service-type. Change-Id: Id38b5dc7b9235e04e3a9a1b70a35b02e8fae95f0 Signed-off-by: Arun Isaac <arunisaac@systemreboot.net>
2024-05-30services: xorg: Add startx-command-service-type.Tomas Volf
* gnu/services/xorg.scm (startx-command-profile-service, startx-command-service-type): New variables. * doc/guix.texi (X Window): Document startx-command-service-type. Change-Id: Ia2a7c3b2d5ebf6bcfff40cb2640b17d3baf6eba0 Signed-off-by: Arun Isaac <arunisaac@systemreboot.net>
2024-05-30services: xorg: Add xorg-start-command-xinit procedure.Tomas Volf
When the user does not use any desktop environment, the typical sequence is to log in and then type `startx' into the tty to get a window manager running. Most distributions do provide a startx by default, but Guix has only an xorg-start-command that is not suitable for this. This commit adds a second procedure, xorg-start-command-xinit, that correctly picks a virtual terminal to use, sets up XAUTHORITY and starts xinit with the correct arguments. That should make running Guix without a desktop environment more approachable. * gnu/services/xorg.scm (xorg-start-command-xinit): New public procedure. * doc/guix.texi (X Window): Document it. Change-Id: I17cb16093d16a5c6550b1766754700d4fe014ae9 Signed-off-by: Arun Isaac <arunisaac@systemreboot.net>
2024-05-27gnu: Use new ovmf firmware packages.Efraim Flashner
* doc/guix.texi (Invoking guix system): Update qemu command to use ovmf-x86-64. * gnu/packages/virtualization.scm (xen)[inputs]: Replace ovmf with ovmf-i686. * gnu/tests/install.scm (uefi-firmware): Use system appropriate ovmf firmware. Change-Id: Ia2ff76eaf766c8d4fb0be4a7cc7b8941574433d0
2024-05-27doc: Replace 'specification->package+output' with 'specifications->packages'.宋文武
'(map specification->package+output specs)' doesn't work due to 'specification->package+output' will return multiple values. * doc/guix.texi (Using the Configuration System): Replace 'specification->package+output' with 'specifications->packages'. Change-Id: I443771327a2ef5ae5e7dddd9785f1eef4200e898
2024-05-25doc: Document ‘assume-valid-file-name’ in ‘local-file’.Richard Sent
* doc/guix.texi (G-Expressions): Document the use of assume-valid-file-name with local-file. Signed-off-by: Ludovic Courtès <ludo@gnu.org> Change-Id: I132f78e198cbf3ba2e5a677d671563d753de534c
2024-05-25gnu: docker: Allow passing tarballs for images in oci-container-configuration.Giacomo Leidi
This commit allows for loading an OCI image tarball before running an OCI backed Shepherd service. It does so by adding a one shot Shepherd service to the dependencies of the OCI backed service that at boot runs docker load on the tarball. * gnu/services/docker.scm (oci-image): New record; (lower-oci-image): new variable, lower it; (string-or-oci-image?): sanitize it; (oci-container-configuration)[image]: allow also for oci-image records; (oci-container-shepherd-service): use it; (%oci-image-loader): new variable. Change-Id: Ie504f479ea0d47f74b0ec5df9085673ffd3f639d Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2024-05-25gnu: docker: Allow setting Shepherd dependencies in oci-container-configuration.Giacomo Leidi
* gnu/services/docker.scm (oci-container-configuration) [requirement]: New field; (list-of-symbols): sanitize it; (oci-container-shepherd-service): use it. * doc/guix.texi: Document it. Change-Id: Ic0ba336a2257d6ef7c658cfc6cd630116661f581 Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2024-05-25gnu: docker: Allow setting host environment variables in ↵Giacomo Leidi
oci-container-configuration. * gnu/services/docker.scm (oci-container-configuration) [host-environment]: New field; (oci-sanitize-host-environment): sanitize it; (oci-container-shepherd-service): use it. * doc/guix.texi: Document it. Change-Id: I4d54d37736cf09f042a71cb0b6e673abc0948d9c Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2024-05-25gnu: docker: Provide escape hatch in oci-container-configuration.Giacomo Leidi
* gnu/services/docker.scm (exports): Add missing procedures; (oci-container-service-type)[description]: Docker and OCI images should mean the same thing; (oci-container-configuration): clarify field types; [extra-arguments]: new field; (oci-sanitize-extra-arguments): sanitize it; (oci-container-shepherd-service): use it. * doc/guix.texi: Document it. Change-Id: I64e9d82c8ae538d59d1c482f23070a880156ddf7 Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2024-05-25services: Add restic-backup service.Giacomo Leidi
* gnu/services/backup.scm: New file. * gnu/local.mk: Add this. * doc/guix.texi: Document this. Change-Id: I9efd5559bb445b484107a7c27c2d0a65ccad1e66 Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2024-05-19import: Add binary npm importer.Jelle Licht
* guix/scripts/import.scm: (importers): Add "npm-binary". * doc/guix.texi (Invoking guix import): Document npm-binary importer. * guix/import/npm-binary.scm: New file. * guix/scripts/import/npm-binary.scm: New file. * tests/npm-binary.scm: New file. * Makefile.am: Add them. Co-authored-by: Timothy Sample <samplet@ngyro.com> Co-authored-by: Lars-Dominik Braun <lars@6xq.net> Change-Id: I98a45068cf5b9c42790664cc743feaa7ac76f807
2024-05-15gnu: services: Add power-profiles-daemon-service-type.Dariqq
* gnu/services/pm.scm (power-profiles-configuration): New configuration. (power-profiles-daemon-shepherd-service): New procedure. (power-profiles-daemon-activation): New variable. (power-profiles-daemon-service-type): New procedure. * doc/guix.texi (Power Management Services): Document it. Change-Id: Ib035d993ed82eec2a43f3ba2b4c92f77e08a0fd7 Signed-off-by: Christopher Baines <mail@cbaines.net>
2024-05-13doc: Fix bug in hg-reference documentation.Tomas Volf
The field is called changeset, not revision. And the string does not have to be a number. * doc/guix.texi (origin Reference): Fix documentation for hg-reference. Change-Id: Ic622dfc7b44caf42d070cdab8e42808dd96e6d63 Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2024-05-13doc: Document cvs-fetch and cvs-reference.Tomas Volf
For some reason, they were missing from the documentation. This commit adds them including an example of usage. * doc/guix.texi (origin Reference): Add cvs-fetch and cvs-reference. Change-Id: I6622a9f70e6d71ed31fbb3d2689df4a6946f8868 Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2024-05-12doc: Update NixOS wiki url to the official wiki.Picnoir
nixos.wiki was created by a community member a long time ago. It turned out to be very useful to the community, it became an official service last month hosted on the NixOS.org domain name. To ease the long term maintainance among other things. See more details at https://github.com/NixOS/foundation/issues/113 * doc/guix.texi (Nix service): Change nixos.wiki to wiki.nixos.org. Change-Id: Ia95074fbfad494e8ceb5c2cdb3faab23f3604882 Signed-off-by: Christopher Baines <mail@cbaines.net>
2024-05-04services: cuirass: Remove use-substitutes? configuration option.Ahmad Draidi
As of Cuirass commit 9a1452ee021c9f773424961cfeef47ca0b7c5c5a, this option seems to be unused and kept for back compatibility there. * gnu/services/cuirass.scm (<cuirass-configuration>): Remove use-substitutes? field. (cuirass-shepherd-service): Remove the option. * doc/guix.texi (Continuous Integration): Remove option documentation. Change-Id: I933550ce76eecdf918b07891aa8212fd30a7c87e Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2024-05-04services: cuirass: Add new configuration options.Ahmad Draidi
* gnu/services/cuirass.scm (<cuirass-configuration>): Add ttl and threads fields. (cuirass-shepherd-service): Handle the new options. * doc/guix.texi (Continuous Integration): Document them. Change-Id: I4387fbd7bf6766f4a54801f35c7ed82ce4eb9645 Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2024-05-04services: cuirass: Use separate extra options for cuirass web process.Ahmad Draidi
Currently, "extra-options" is passed to both "cuirass register" and "cuirass web" processes. This makes it impractical since the extra parameters have to be intended for and supported by both processes. * gnu/services/cuirass.scm (<cuirass-configuration>): Add a web-extra-options field. (cuirass-shepherd-service): Replace extra-options with web-extra-options for cuirass web. * doc/guix.texi (Continuous Integration): Document the changes. Change-Id: Iba79c559ea8267aaf8f25248f3d18ed7b352cb60 Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2024-05-01git authenticate: Install pre-push and post-checkout hooks.Ludovic Courtès
* guix/scripts/git/authenticate.scm (install-hooks): New procedure. (guix-git-authenticate): Use it. * doc/guix.texi (Invoking guix git authenticate): Document it. Change-Id: I4464a33193186e85b476a12740e54412bd58429c
2024-05-01git authenticate: Record introduction and keyring in ‘.git/config’.Ludovic Courtès
* guix/scripts/git/authenticate.scm (%default-options): Remove ‘keyring-reference’. (config-value, configured-introduction, configured-keyring-reference) (configured?, record-configuration, current-branch): New procedures. (guix-git-authenticate)[missing-arguments]: New procedure. Use ‘configured-introduction’ when zero arguments are given. Use ‘configured-keyring-reference’ when ‘-k’ is not passed. Add call to ‘record-configuration’. * doc/guix.texi (Invoking guix git authenticate): Document it. Change-Id: I66e111a83f50407b52da71662629947f83a78bbc