aboutsummaryrefslogtreecommitdiff
path: root/doc
AgeCommit message (Collapse)Author
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-26doc: Introduce mumi before referring to it.Ludovic Courtès
* doc/contributing.texi (Debbugs User Interfaces): Introduce mumi in the body of the text rather than a footnote since the “Command-Line Interface” section assumes it has already been introduced. (Command-Line Interface, Emacs Interface): Capitalize titles. Change-Id: I0e87cd48b6158582016734afe71c716c548c1639
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: Add message for common error about make check-system.Richard Sent
* doc/contributing.texi (Running the Test Suite): Mention that make clean-go may need to be run before running make check-system when previous builds were run with different work trees. Change-Id: I4b68d3a05f1425505816db969284487d725840d6 Signed-off-by: Maxim Cournoyer <maxim.cournoyer@gmail.com> Fixes: https://issues.guix.gnu.org/47573.
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-24doc: contributing: Mention 'guix git authenticate'.Simon Tournier
Follow up of 73b3f941d7d911a1b2bb2bf77d37cb3a12ed4291. * doc/contributing.texi (Applying for Commit Access): Update accordingly with the removal of 'make authenticate'. Change-Id: Id945c484f6265c76d4eb803369a7fbd9f797434f 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-24doc: Fix Reviewed-by format.Tomas Volf
The documentation does not have a space between `e' and `<', which is not how people use it, as can be seen from git log. So adjust the format to match the reality. * doc/contributing.texi (Reviewing the Work of Others): Fix format for Reviewed-by. Change-Id: Ib863536db72b885cf34927323cb4ebc52a8db2ed 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: Refer to mumi send-email in Submitting Patches.Arun Isaac
* doc/contributing.texi (Submitting Patches): Refer to mumi send-email. Change-Id: I009cdc306220ef63e6641fac69d3453ab169bfa2
2024-06-12doc: Add mumi CLI concept index entries.Arun Isaac
* doc/contributing.texi (Debbugs User Interfaces)[Command-line interface]: Add mumi CLI concept index entries. Change-Id: Ic2e67226c18e87a7360b938476a662aae76dd58e
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-03nls: Update translations.Florian Pelz
* po/doc/guix-cookbook.sv.po: New file. * po/doc/local.mk: Add 'sv' cookbook. * po/doc/po4a.cfg (po4a_langs): Add 'sv'. * doc/local.mk: Add 'sv' cookbook. * doc/htmlxref.cnf: Update URLs for cookbook. * doc/build.scm (%cookbook-languages): Add 'sv'. * doc/guix-cookbook.texi (Top): Mention 'sv' cookbook. Change-Id: Ibfeb7254f583f1c8827e8c2756bbb02880bcba46
2024-06-03build: Use the po4a command for the translation generation.gemmaro
* configure.ac (Documentation translation): Remove the po4a-translate command. This command has been replaced by the po4a command and are not used from anywhere. * doc/local.mk ($(srcdir)/%D%/guix.%.texi, $(srcdir)/%D%/guix-cookbook.%.texi) ($(srcdir)/%D%/contributing.%.texi): Use the po4a command instead of the po4a-translate for the translation generation. This eliminates the warning of po4a-translate; "po4a-translate is deprecated. The unified po4a(1) program is more convenient and less error prone." (PO4A_PARAMS): Remove the Texinfo format option. This option is specified in the configuration file (po/doc/po4a.cfg). (dummy_pot): Add a variable for the temporary POT file location. Change-Id: I542b934c3c03b8701e9f86823191224f8b0ccf81 Signed-off-by: Florian Pelz <pelzflorian@pelzflorian.de>
2024-06-03doc: cookbook: Fix direnv example.Florian Pelz
When replacing `guix environment' with `guix shell', I forgot to add a `--development' argument. Follow-up to 9c3a8a380bcfebdb77af61532e7bfec523d7bde8. * doc/guix-cookbook.texi (Environment management) [Guix environment via direnv]: Fix example. Change-Id: I0a0df33b3b547bfc3ada10c4648e593be6608070
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-29gnu: linux: Turn %default-extra-linux-options into a procedure.Maxim Cournoyer
This is to allow version-specific options to the list of defaults. * gnu/packages/linux.scm (%default-extra-linux-options): Transform to... (default-extra-linux-options): ... this procedure, which accepts a 'version' argument. (make-linux-libre, linux-libre-arm-generic, linux-libre-arm-generic-5.10) (linux-libre-arm-generic-5.4, linux-libre-arm64-generic) (linux-libre-arm64-generic-5.10, linux-libre-arm64-generic-5.4) (linux-libre-riscv64-generic, linux-libre-mips64el-fuloong2e) (linux-libre-with-bpf): Adjust accordingly. * doc/guix-cookbook.texi (Customizing the Kernel): Adjust accordingly. Change-Id: Ifd3be8b7ed8699bada224a938dbc84205366ff3d
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-25configure.ac: Set default value for the 'prefix' variable.Maxim Cournoyer
The Guix standard configuration uses a localstatedir of /var and a sysconfdir of /etc. To ease things for everyone, make the default values match that standard expected configuration. See <https://lists.gnu.org/archive/html/guix-devel/2024-05/msg00003.html> for a related discussion. * configure.ac: Default $prefix to '' unless already set. * doc/contributing.texi (Building from Git): Streamline doc. * doc/guix-cookbook.texi (Guix environment via direnv): Likewise. Reviewed-by: Ludovic Courtès <ludo@gnu.org> Change-Id: I23cd12b58a842d246fbc9fdc740311c573eb0212
2024-05-25maint: Suggest ‘guix git authenticate’ for initial authentication.Ludovic Courtès
The previous recommendation, running ‘make authenticate’, was insecure because it led users to run code from the very repository they want to authenticate: https://lists.gnu.org/archive/html/guix-devel/2024-04/msg00252.html * Makefile.am (commit_v1_0_0, channel_intro_commit) (channel_intro_signer, GUIX_GIT_KEYRING, authenticate): Remove. * Makefile.am (.git/hooks/%): New target, generalization of previous ‘.git/hooks/pre-push’ target. (nodist_noinst_DATA): Add ‘.git/hooks/post-merge’. * doc/contributing.texi (Building from Git): Suggest ‘guix git authenticate’ instead of ‘make authenticate’. * etc/git/post-merge: New file. * etc/git/pre-push: Run ‘guix git authenticate’ instead of ‘make authenticate’. Reviewed-by: Maxim Cournoyer <maxim.cournoyer@gmail.com> Reported-by: Skyler Ferris <skyvine@protonmail.com> Change-Id: Ia415aa8375013d0dd095e891116f6ce841d93efd
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>