aboutsummaryrefslogtreecommitdiff
path: root/doc
Commit message (Collapse)AuthorAge
* privilege: Add POSIX capabilities(7) support.Tobias Geerinckx-Rice2024-08-11
| | | | | | | | | | | | * gnu/system/privilege.scm (<privileged-program>): Add a field representing the program's POSIX capabilities. (privileged-program-capabilities): New public procedure. * doc/guix.texi (Privileged Programs): Document it. * gnu/build/activation.scm (activate-privileged-programs): Take a LIBCAP package argument providing setcap(8) to apply said capabilities. * gnu/services.scm (privileged-program->activation-gexp): Pass said package argument where supported. Include privileged-program-capabilities in the compatibility hack.
* system: Add privileged-programs to <operating-system>.Tobias Geerinckx-Rice2024-08-11
| | | | | | | | | | | | | * gnu/system.scm (<operating-system>): Add new privileged-programs field, that defaults to… (%default-privileged-programs): …this new variable, renamed from… (%setuid-programs): …this, which is now defined as the empty list. * doc/guix.texi (Setuid Programs): Rename this… (Privileged Programs): …to this. Adjust all refs. Update all mentions of ‘setuid’ (whether in prose, variable names, or code samples) to use the new ‘privilege[d]’ terminology instead. (operating-system Reference, X Window, Invoking guix system) (Service Reference): Adjust likewise.
* services: setuid-program: Populate /run/privileged/bin.Tobias Geerinckx-Rice2024-08-11
| | | | | | | | | | | | | | Create /run/setuid-programs compatibility symlinks so that we can migrate all users (both package and human) piecemeal at our leisure. Apart from being symlinks, this should be a user-invisible change. * gnu/build/activation.scm (%privileged-program-directory): New variable. [activate-setuid-programs]: Put privileged copies in %PRIVILEGED-PROGRAM-DIRECTORY, with compatibility symlinks to each in %SETUID-DIRECTORY. * gnu/services.scm (setuid-program-service-type): Update docstring. * doc/guix.texi (Setuid Programs): Update @file{} name accordingly.
* doc: Restructure the list of desktop services.Tobias Geerinckx-Rice2024-08-11
| | | | | | | | * doc/guix.texi (Desktop Services): Use a straight list for the list of service types, rather than hiding them in one growing paragraph of prose. Explain their purpose in general terms beneath it. Change-Id: I2408ccf38dd62323138854cc5aa46051d2a076ac
* doc: Rewrite obsolete list of limitations.Tobias Geerinckx-Rice2024-08-11
| | | | | | | * doc/guix.texi (Limitations): Now that KDE Plasma is available, rewrite the seemingly-exhaustive list to be more general. Change-Id: I41450302837c963d5f811211e5a498a04f938e55
* doc: Fix punctuation and style.Florian Pelz2024-08-16
| | | | | | | | | Follow-up to de714bcb46d61922e0efc10783ea23fb0202f583. * doc/guix.texi (Setting Up the Daemon): Fix typos. Reported-by: Ludovic Courtès <ludo@gnu.org> Change-Id: Id3e49f3b401e8b9ce2aa4c2588ae33cf25e2ca2d
* doc: Improve example for guix-for-channels.Tomas Volf2024-08-15
| | | | | | | | | | | The example was missing the (gnu packages package-management) import, so it did not work. While the module was mentioned below, I overlooked the sentence. So add it also into the example to make it more obvious. * doc/guix.texi (Customizing the System-Wide Guix): Add import to example. Change-Id: Ibc5b0be87d40531397660a3b0747f83b851b004b Signed-off-by: Florian Pelz <pelzflorian@pelzflorian.de>
* doc: Setting Up the Daemon: Give guidance to whom this section is useful.Florian Pelz2024-08-10
| | | | | | * doc/guix.texi (Setting Up the Daemon): Specify intended audience. Change-Id: I784c5f720aa87bddb6455e42181a1e9de5d7ec9a
* services: containerd: Provision separately from docker service.Oleg Pykhalov2024-08-04
| | | | | | | | | | | | | | | | | containerd can operate independently without relying on Docker for its configuration. * gnu/services/docker.scm (docker-configuration): Deprecate containerd field. (containerd-configuration, containerd-service-type): New variables. (docker-shepherd-service): Use containerd-configuration. Delete duplicated variable binding. Allow to configure environment variables. (docker-service-type): Delete extension with containerd-service-type. * gnu/tests/docker.scm (%docker-os, %oci-os): Add containerd service. (run-docker-test, run-docker-system-test, run-oci-container-test): Run containerd service. * doc/guix.texi (Miscellaneous Services): Document containerd-service-type. Change-Id: Ife0924e50a3e0aa2302d6592dae51ed894600004
* services: agate: Update options for compatibility with the current Agate ↵Rodion Goritskov2024-07-26
| | | | | | | | | | | | | | | | | | | | 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>
* doc: Add note about use sddm with qt5 theme.Z572 via Guix-patches via2024-07-20
| | | | | | | * 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>
* doc: Update note on Emacs packages.Liliana Marie Prikler2024-07-07
| | | | | * doc/guix.texi ("Emacs packages"): Expand note to talk about differences between native compilation upstream and as used in Guix.
* services: oci-container: Allow setting Shepherd actions in ↵Giacomo Leidi via Guix-patches via2024-07-05
| | | | | | | | | | | | | | 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>
* services: oci-container: Allow setting Shepherd respawn? in ↵Giacomo Leidi via Guix-patches via2024-07-05
| | | | | | | | | | | | | 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>
* services: oci-container: Allow setting Shepherd auto-start? in ↵Giacomo Leidi via Guix-patches via2024-07-05
| | | | | | | | | | | | | 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>
* services: oci-container: Allow setting Shepherd log-file in ↵Giacomo Leidi via Guix-patches via2024-07-05
| | | | | | | | | | | | 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
* doc: Minor changes to the OCI-backed Services documentation.Giacomo Leidi via Guix-patches via2024-07-05
| | | | | | * doc/guix.texi: Clarify the example and remove reduntant escapes. Change-Id: I38f5517ae46b391ba21ae5a94c6dcc272e245036
* services: guix: Default `channels' field to #f.Tomas Volf2024-06-26
| | | | | | | | | | | | 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>
* doc: Warn about extra-special-file usage in /etc.Tomas Volf2024-06-26
| | | | | | | | * 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>
* services: shepherd: Support “free-form” services.Ludovic Courtès2024-06-26
| | | | | | | | | | | | | | * 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
* doc: Introduce mumi before referring to it.Ludovic Courtès2024-06-26
| | | | | | | | | * 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
* services: web: Improve nginx formatting for extra-content.Richard Sent2024-06-26
| | | | | | | | | | | | 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>
* doc: Add message for common error about make check-system.Richard Sent2024-06-24
| | | | | | | | | | * 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.
* doc: Improve description of nginx's configuration.Tomas Volf2024-06-24
| | | | | | | | | * 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>
* doc: contributing: Mention 'guix git authenticate'.Simon Tournier2024-06-24
| | | | | | | | | | 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>
* gnu: grub: Update to 2.12.Ludovic Courtès2024-06-24
| | | | | | | | | | | | | | | | * 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>
* doc: Prepend ISC to DHCP client references.Richard Sent2024-06-24
| | | | | | | | | | 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>
* services: networking: Allow dhcp-client to use a config file.Richard Sent2024-06-24
| | | | | | | | | | | | * 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>
* doc: Fix Reviewed-by format.Tomas Volf2024-06-24
| | | | | | | | | | | | 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>
* services: radicale: Use define-configuration.Juliana Sims2024-06-23
| | | | | | | | | | | | | | | | | | | | | * 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>
* doc: Fix typo in Guix Home ServiceRichard Sent2024-06-22
| | | | | | | | * 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>
* services: dnsmasq: Add escape hatch.Sergey Trofimov2024-06-13
| | | | | | | | * 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
* doc: Use a symbol for Cuirass specification names.Ludovic Courtès2024-06-13
| | | | | | | * doc/guix.texi (Continuous Integration): Change ‘name’ field of ‘specification’ to be a symbol, as written in upstream Cuirass doc. Change-Id: I0a8cddfb8ab47f627a01459393aaf346028bb3f6
* doc: Refer to mumi send-email in Submitting Patches.Arun Isaac2024-06-12
| | | | | | * doc/contributing.texi (Submitting Patches): Refer to mumi send-email. Change-Id: I009cdc306220ef63e6641fac69d3453ab169bfa2
* doc: Add mumi CLI concept index entries.Arun Isaac2024-06-12
| | | | | | | * doc/contributing.texi (Debbugs User Interfaces)[Command-line interface]: Add mumi CLI concept index entries. Change-Id: Ic2e67226c18e87a7360b938476a662aae76dd58e
* doc: Document mumi am, compose and www subcommands.Arun Isaac2024-06-12
| | | | | | | | * 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
* doc: Update field name in gitile-configuration.Nguyễn Gia Phong2024-06-12
| | | | | | | | * 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>
* doc: Binary Installation: Add Parabola packages.Denis 'GNUtoo' Carikli2024-06-06
| | | | | | | | * 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>
* doc: Binary Installation: Mention Trisquel package.Denis 'GNUtoo' Carikli2024-06-06
| | | | | | | * doc/guix.texi (Binary Installation): Also mention Trisquel package. Change-Id: Iae6f77de43de2c6f387b99a10dcae5b9d82aaee1 Signed-off-by: Florian Pelz <pelzflorian@pelzflorian.de>
* doc: Advise system administrators to read and follow security notices.Florian Pelz2024-06-06
| | | | | | | * doc/guix.texi (Binary Installation): Prefix installation instructions with the advice. Change-Id: I088c7f00f4c3c8e32bdfd117ea934942930f7513
* services: base: Add optional delayed mount of file-systemsRichard Sent2024-06-04
| | | | | | | | | | | | | | | | | | | 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>
* nls: Update translations.Florian Pelz2024-06-03
| | | | | | | | | | | | * 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
* build: Use the po4a command for the translation generation.gemmaro2024-06-03
| | | | | | | | | | | | | | | | | * 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>
* doc: cookbook: Fix direnv example.Florian Pelz2024-06-03
| | | | | | | | | | | | 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
* services: nscd: ‘log-file’ defaults to #f.Ludovic Courtès2024-06-02
| | | | | | | * gnu/services/base.scm (<nscd-configuration>)[log-file]: Default to #f. * doc/guix.texi (Base Services): Clarify documentation. Change-Id: Ia75914fc2665db13bef688d53659083a615ebef4
* Revert "services: home: Use pairs instead of lists."Andrew Tropin2024-06-02
| | | | | | | | | 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
* services: home: Use pairs instead of lists.Andrew Tropin2024-06-02
| | | | | | | | * gnu/services/guix.scm: Use pairs instead of lists. * doc/guix.texi: Update accordingly. * gnu/tests/guix.scm: Update accordingly. Change-Id: I0b8d3fa5b214add89bdb84a11fa20d1b319435f0
* home: services: Add home-startx-command-service-type.Tomas Volf2024-05-30
| | | | | | | | | | | * 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>
* services: xorg: Add startx-command-service-type.Tomas Volf2024-05-30
| | | | | | | | | * 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>
* services: xorg: Add xorg-start-command-xinit procedure.Tomas Volf2024-05-30
| | | | | | | | | | | | | | | | | | 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>