Commit graph

2838 commits

Author SHA1 Message Date
Liliana Marie Prikler 131acaa28d
doc: Clarify guix shell's DWIM behaviour.
* doc/guix.texi ("Invoking guix shell"): Document the exact behaviour, that is
which flags go together with which file names.
2022-05-17 21:08:56 +02:00
Ludovic Courtès 4fdd091cf3
doc: Fix typos in the "Channels" chapter.
* doc/guix.texi (Using a Custom Guix Channel)
(Replicating Guix): Fix typos.
2022-05-16 15:48:08 +02:00
Maxime Devos 89a2eb25c3
search-paths: Define $SSL_CERT_DIR and $SSL_CERT_FILE.
For the ‘why’, see the docstring next to $SSL_CERT_DIR.  In later commits,
packages will be changed to use these variables and the variables will be
added to more packages.

* guix/search-paths.scm ($SSL_CERT_DIR, $SSL_CERT_FILE): New variables.
* doc/guix.texi (Search Paths): Document them.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2022-05-13 17:15:37 +02:00
Ludovic Courtès c99c3d11cd
doc: Add "Writing Manifests" node.
* doc/guix.texi (Invoking guix package): Remove explanation of
'specifications->manifest' and 'package->development-manifest'.  Link to
"Writing Manifests".
(Inferiors): Likewise.
(Invoking guix shell): Add anchor and link to 'package->development-manifest'.
(Invoking guix pack): Likewise.
(Writing Manifests): New section.
(Using TeX and LaTeX): Link to "Writing Manifests".
2022-05-13 17:04:22 +02:00
Tobias Geerinckx-Rice 5fdc955615
doc: Avoid leading ‘But’.
* doc/guix.texi (Manual Installation): End sentence later.
2022-05-08 02:00:00 +02:00
Christopher Baines e32cc011bb
services: nar-herder: Allow specifying the log level.
* gnu/services/guix.scm (nar-herder-configuration-log-level): New procedure.
(nar-herder-shepherd-services): Pass the log-level to the nar-herder process.
* doc/guix.texi (Nar Herder): Document configuring the log-level.
2022-04-22 15:31:42 +01:00
Ludovic Courtès 5f74169e8e
daemon: Support systemd-style socket activation.
* nix/nix-daemon/guix-daemon.cc (SD_LISTEN_FDS_START): New macro.
(systemd_activation_sockets): New function.
(main): Use it.  Remove obsolete 'printMsg' call.
* doc/guix.texi (Invoking guix-daemon): Document socket activation.
2022-04-14 14:48:20 +02:00
Ludovic Courtès b9233cb9a8
publish: Support systemd-style socket activation.
* guix/scripts/publish.scm (systemd-socket): New procedure.
(guix-publish): Add 'style' variable.  Adjust startup message depending
on whether STYLE is 'systemd.
* doc/guix.texi (Invoking guix publish): Mention socket activation.
2022-04-14 14:48:20 +02:00
Liliana Marie Prikler 42679e3f81
services: Replace murmur-service-type with mumble-server-service-type.
* gnu/services/telephony.scm (murmur-configuration, make-murmur-configuration)
(murmur-configuration?, murmur-configuration-package)
(murmur-configuration-user, murmur-configuration-group)
(murmur-configuration-port, murmur-configuration-welcome-text)
(murmur-configuration-server-password)
(murmur-configuration-max-users)
(murmur-configuration-max-user-bandwidth)
(murmur-configuration-database-file)
(murmur-configuration-log-file, murmur-configuration-pid-file)
(murmur-configuration-autoban-attempts)
(murmur-configuration-autoban-timeframe)
(murmur-configuration-autoban-time)
(murmur-configuration-opus-threshold)
(murmur-configuration-channel-nesting-limit)
(murmur-configuration-channelname-regex)
(murmur-configuration-username-regex)
(murmur-configuration-test-message-length)
(murmur-configuration-image-message-length)
(murmur-configuration-cert-required?)
(murmur-configuration-remember-channel?)
(murmur-configuration-allow-html?)
(murmur-configuration-allow-ping?)
(murmur-configuration-bonjour?)
(murmur-configuration-send-version?)
(murmur-configuration-log-days)
(murmur-configuration-obfuscate-ips?)
(murmur-configuration-ssl-cert murmur-configuration-ssl-key)
(murmur-configuration-ssl-dh-params murmur-configuration-ssl-ciphers)
(murmur-configuration-public-registration)
(murmur-configuration-file)
(murmur-public-registration-configuration)
(make-murmur-public-registration-configuration)
(murmur-public-registration-configuration?)
(murmur-public-registration-configuration-name)
(murmur-public-registration-configuration-url)
(murmur-public-registration-configuration-password)
(murmur-public-registration-configuration-hostname)
(murmur-service-type): Add deprecation alias and rename to ...
(mumble-server-configuration, make-mumble-server-configuration)
(mumble-server-configuration?, mumble-server-configuration-package)
(mumble-server-configuration-user, mumble-server-configuration-group)
(mumble-server-configuration-port, mumble-server-configuration-welcome-text)
(mumble-server-configuration-server-password)
(mumble-server-configuration-max-users)
(mumble-server-configuration-max-user-bandwidth)
(mumble-server-configuration-database-file)
(mumble-server-configuration-log-file, mumble-server-configuration-pid-file)
(mumble-server-configuration-autoban-attempts)
(mumble-server-configuration-autoban-timeframe)
(mumble-server-configuration-autoban-time)
(mumble-server-configuration-opus-threshold)
(mumble-server-configuration-channel-nesting-limit)
(mumble-server-configuration-channelname-regex)
(mumble-server-configuration-username-regex)
(mumble-server-configuration-test-message-length)
(mumble-server-configuration-image-message-length)
(mumble-server-configuration-cert-required?)
(mumble-server-configuration-remember-channel?)
(mumble-server-configuration-allow-html?)
(mumble-server-configuration-allow-ping?)
(mumble-server-configuration-bonjour?)
(mumble-server-configuration-send-version?)
(mumble-server-configuration-log-days)
(mumble-server-configuration-obfuscate-ips?)
(mumble-server-configuration-ssl-cert mumble-server-configuration-ssl-key)
(mumble-server-configuration-ssl-dh-params) (mumble-server-configuration-ssl-ciphers)
(mumble-server-configuration-public-registration)
(mumble-server-configuration-file)
(mumble-server-public-registration-configuration)
(make-mumble-server-public-registration-configuration)
(mumble-server-public-registration-configuration?)
(mumble-server-public-registration-configuration-name)
(mumble-server-public-registration-configuration-url)
(mumble-server-public-registration-configuration-password)
(mumble-server-public-registration-configuration-hostname)
(mumble-server-service-type): ... these.
* doc/guix.texi ("Murmur (VoIP server)"): Rename to ...
("Mumble server"): ... this.  Adjust documentation accordingly.
2022-04-12 20:32:32 +02:00
Luis Felipe e1c040b7b3
doc: package Reference: Mention syntax of package-description.
* doc/guix.texi (package Reference) <description>: Mention that the
string is in Texinfo syntax.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2022-04-10 00:17:41 +02:00
jgart cec2ec4440
doc: guix: Add missing article "a".
* doc/guix.texi (Essential Home Services): Add missing article "a".

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2022-04-10 00:17:40 +02:00
Ludovic Courtès b38e053513
doc: Build an empty index if the manual is missing.
That way, the "sk" index for 'guix-manual' is empty, because
'guix-manual' lacks an "sk" translation.

* doc/build.scm (html-manual-identifier-index)[build](html-files):
Gracefully handle 'scandir' returning #f.
2022-04-08 23:59:48 +02:00
Ludovic Courtès 0d0e2165ea
doc: Allow different translations for 'guix-cookbook' and 'guix-manual'.
Previously, 'guix-manual-text-domain' could be passed the cookbook
language list as its second argument.  Thus, it started failing when the
set of cookbook languages was no longer a subset of the manual
languages, starting with commit
93bfd4d9c7, which removed "sk" from
'guix-manual' but kept it for 'guix-cookbook'.

* doc/build.scm (%manual-languages, %cookbook-languages): New
variables.
(%languages): Use them.
(guix-manual-text-domain): Give LANGUAGES a valid default value.
(localization-helper-module): Remove optional argument to
'guix-manual-text-domain'.
2022-04-08 22:56:02 +02:00
Ludovic Courtès 868da34d54
doc: Fix cookbook URLs in htmlxref.cnf.
Reported by Greg Hogan <code@greghogan.com>.

* doc/htmlxref.cnf (GUIX_ROOT): New variable.
(GUIX, GUIX_COOKBOOK): Adjust.
2022-04-08 19:59:25 +02:00
Ludovic Courtès 6e747c3d50
doc: cookbook: Fix cross-reference to SICP.
Reported by Greg Hogan <code@greghogan.com>.

* doc/guix-cookbook.texi (A Scheme Crash Course): Fix xref to SICP.
2022-04-08 19:55:42 +02:00
Ludovic Courtès 63a11f92d1
doc: cookbook: Fix cross-reference to the manual.
Reported by Greg Hogan <code@greghogan.com>.

* doc/guix-cookbook.texi (Extended example): Fix node name in xref to
"package Reference".
2022-04-08 19:55:37 +02:00
Ludovic Courtès 808b9e8504
services: openssh: Start as an inetd service.
* gnu/services/ssh.scm (openssh-shepherd-service): Use
'make-inetd-constructor' when it is defined.
(<openssh-configuration>)[max-connections]: New field.
* gnu/tests/ssh.scm (run-ssh-test)["sshd PID"]: Adjust to cope with
PID-FILE being #f.
* gnu/tests/ssh.scm (%test-openssh): Pass #f as the 'pid-file'
argument.
* doc/guix.texi (Networking Services): Document 'max-connections'.
2022-04-07 00:08:56 +02:00
Aleksandr Vityazev 1e0cd871b8
doc: Update the sample yggdrasil-private.conf.
* doc/guix.texi (Networking Services): Update the sample yggdrasil-private.conf.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2022-04-05 20:41:39 +02:00
Ludovic Courtès c42b7baf13
shell: Add '--export-manifest'.
* guix/scripts/shell.scm (show-help, %options): Add '--export-manifest'.
(manifest-entry-version-prefix, manifest->code*)
(export-manifest): New procedures.
(guix-shell): Honor '--export-manifest'.
* tests/guix-shell-export-manifest.sh: New file.
* Makefile.am (SH_TESTS): Add it.
* doc/guix.texi (Invoking guix shell): Document '--export-manifest'.
(Invoking guix environment): Link to it.
(Invoking guix pack): Likewise.
2022-04-04 22:58:04 +02:00
Ludovic Courtès e692dc632c
services: Add 'log-cleanup' service to '%base-services' for build logs.
* gnu/services/base.scm (%base-services): Add 'log-cleanup-service-type'
instance.
* doc/guix.texi (Log Rotation): Add example and mention '%base-services'.
2022-04-04 22:58:03 +02:00
Ludovic Courtès 3b9b3b4931
services: Add 'log-cleanup-service-type'.
* gnu/services/admin.scm (<log-cleanup-configuration>): New record
type.
(log-cleanup-program, log-cleanup-mcron-jobs): New procedures.
(log-cleanup-service-type): New variable.
* doc/guix.texi (Log Rotation): Document it.
2022-04-04 22:58:03 +02:00
Julien Lepiller 93bfd4d9c7
nls: Enforce translation thresholds.
* po/doc/guix-cookbook.es.po: Remove file.
* po/doc/guix-cookbook.fa.po: Remove file.
* po/doc/guix-cookbook.fi.po: Remove file.
* po/doc/guix-cookbook.pt_BR.po: Remove file.
* po/doc/guix-cookbook.ru.po: Remove file.
* po/doc/guix-cookbook.uk.po: Remove file.
* po/doc/guix-cookbook.zh_Hans.po: Remove file.
* po/doc/guix-manual.fa.po: Remove file.
* po/doc/guix-manual.fi.po: Remove file.
* po/doc/guix-manual.it.po: Remove file.
* po/doc/guix-manual.ko.po: Remove file.
* po/doc/guix-manual.sk.po: Remove file.
* po/doc/local.mk: Remove them.
* doc/local.mk: Remove them.
2022-04-02 18:14:43 +02:00
Julien Lepiller 6386c011b2
doc: Document inclusion requirements for new translations.
* doc/contributing.texi (Translating Guix)[Conditions for Inclusion]:
New section.
2022-04-02 18:12:48 +02:00
Remco van 't Veer e91c9edb20
services: dnsmasq: Add more options.
* gnu/services/dns.scm (<dnsmasq-configuration>): Add
forward-private-reverse-lookup?, strict-order? and cpe-id options.
(dnsmasq-shepherd-service): Pass added options to dnsmasq and use
match-record instead of match-lambda.
* doc/guix.texi (Guix Services): Document options added to dnsmasq.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2022-03-24 12:45:48 +01:00
Jelle Licht 10d865aa92
services: thermald: Add 'adaptive?' field.
* gnu/services/pm.scm (<thermald-configuration>): Add 'adaptive?' field.
(thermald-shepherd-service): Use it to pass --adaptive to thermald.
* doc/guix.texi (Power Management Services): Document the 'adaptive?' field of
'thermald-configuration'.
2022-03-20 16:40:22 +01:00
Ludovic Courtès 094a2cfbe4
guix home: Add 'container' command.
* guix/scripts/home.scm (show-help, %options): Add '--network',
'--share', and '--expose'.
(not-config?, user-shell, spawn-home-container): New procedures.
(%default-system-profile): New variable.
(perform-action): Add #:file-system-mappings, #:container-command,
and #:network?; honor them.
(process-action): Adjust accordingly.
(guix-home)[parse-sub-command]: Add "container".
[parse-args]: New procedure.
Use it instead of 'parse-command-line'.
* tests/guix-home.sh: Add tests.
* doc/guix.texi (Declaring the Home Environment): Mention 'guix home
container' as a way to test configuration.
(Invoking guix home): Document it.
2022-03-19 18:51:09 +01:00
EuAndreh 465259be78
doc: Fix wrong variable name.
* doc/guix.texi (Mail services): use correct variable name.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2022-03-18 23:51:19 +01:00
Ludovic Courtès 27c273ec89
doc: cookbook: Update Tor onion service name.
* doc/guix-cookbook.texi: New variable.
(Getting substitutes from Tor): Use it.
2022-03-18 23:51:19 +01:00
angryrectangle 3a91c92547
home: services: Fix bash aliases without guix-defaults.
* gnu/home/services/shells.scm: Fix bash aliases not being added if
  guix-defaults? was #f. Also fix inaccuracy in documentation about placement
  of defaults.
* doc/guix.texi (Shells Home Services): Adjust accordingly.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2022-03-18 16:03:34 +01:00
Ludovic Courtès 25261cbf96
guix home: Implement the 'extension-graph' and 'shepherd-graph' actions.
Until now these two actions were silently ignored.

* guix/scripts/home.scm (show-help, %options): Add "--graph-backend".
(%default-options): Add 'graph-backend' key.
(export-extension-graph, export-shepherd-graph): New procedures.
(perform-action): Add #:graph-backend parameter.  Add cases for the
'extension-graph' and 'shepherd-graph' actions.
(process-action): Pass #:graph-backend to 'perform-action'.
* guix/scripts/system.scm (service-node-type)
(shepherd-service-node-type): Export
* tests/guix-home.sh: Add tests.
* doc/guix.texi (Invoking guix home): Document it.
2022-03-18 16:03:33 +01:00
Florian Pelz 101ba64904
doc: Fix inappropriate escapes.
* doc/guix.texi (Shells Home Services): Change \" to ".
2022-03-13 14:38:20 +01:00
Ludovic Courtès 0691ab6779
services: openssh: Add 'generate-host-keys?' field.
* gnu/services/ssh.scm (<openssh-configuration>)[generate-host-keys?]:
New field.
(openssh-activation): Honor it.
* doc/guix.texi (Networking Services): Document it.
2022-03-10 23:46:50 +01:00
Ludovic Courtès 5e34e873af
services: guix: Add 'generate-substitute-key?' field.
* gnu/services/base.scm (<guix-configuration>)[generate-substitute-key?]:
New field.
(guix-activation): Honor it.
* doc/guix.texi (Base Services): Document it.
2022-03-10 23:46:50 +01:00
Demis Balbach 878578c0fa
services: bluetooth: Add missing config parameters.
* doc/guix.texi (Desktop Services): Document 'bluetooth-service-type'
and 'bluetooth-configuration'.
* gnu/services/desktop.scm (<bluetooth-configuration>): Add many fields.
(bluetooth-configuration-file): Handle them.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2022-03-09 23:38:18 +01:00
Ludovic Courtès be84fb701b
doc: Publish the Slovak translation of the cookbook.
* doc/build.scm (%languages): Add "sk" for "guix-cookbook" (it's
currently at 57%).
2022-03-02 19:26:16 +01:00
Ludovic Courtès f0efa6afc5
doc: Add "Using TeX and LaTeX" chapter.
* doc/guix.texi (Using TeX and LaTeX): New node.
2022-03-02 19:26:16 +01:00
Julien Lepiller 8c92d85e06
nls: Update translations.
* po/doc/guix-cookbook.uk.po: New file.
* po/doc/local.mk: Add uk cookbook.
* doc/local.mk: Add uk cookbook.
* po/guix/fa.po: New file.
* po/guix/uk.po: New file.
* po/guix/LINGUAS: Add fa and uk.
2022-03-01 22:17:18 +01:00
Maxim Cournoyer 6d9d616113
initrd: Honor rootfstype and rootflags command-line parameters.
* gnu/build/linux-boot.scm (boot-system): Honor rootfstype and rootflags
arguments.  Update doc.  Error out in case there is insufficient information
with regard to the root file system.
Restore the behavior of inferring the root device from the root file system
from the operating system in case the root argument is not provided.
* doc/guix.texi (Initial RAM Disk): Document the new command-line parameters.
2022-03-01 10:30:18 -05:00
Maxim Cournoyer 0dc019e19a
initrd: Use non-hyphenated kernel command-line parameter names.
This is to make it less surprising, given the common convention sets forth by
the kernel Linux command-line parameters.

* gnu/build/linux-boot.scm (boot-system): Rename '--load', '--repl', '--root'
and '--system' to 'gnu.load', 'gnu.repl', 'root' and 'gnu.system',
respectively.  Adjust doc.
(find-long-option): Adjust doc.
* gnu/installer/parted.scm (installer-root-partition-path): Adjust accordingly.
* gnu/system.scm (bootable-kernel-arguments): Add a VERSION argument and
update doc.  Use VERSION to conditionally return old style vs new style initrd
arguments.
(%boot-parameters-version): Increment to 1.
(operating-system-boot-parameters): Adjust doc.
(operating-system-boot-parameters-file): Likewise.
* gnu/system/linux-initrd.scm (raw-initrd, base-initrd): Likewise.
* doc/guix.texi: Adjust doc.
* gnu/build/activation.scm (boot-time-system): Adjust accordingly.
* gnu/build/hurd-boot.scm (boot-hurd-system): Likewise.
* gnu/packages/commencement.scm (%final-inputs-riscv64): Adjust comment.
2022-03-01 10:30:17 -05:00
Maxim Cournoyer 61a847187d
gnu: glibc-utf8-locales: Hide the package.
This package has a long history of confusing users, due to containing only a
small, arbitrary subset of UTF-8 locales.

* gnu/packages/base.scm (glibc-utf8-locales): Define as a hidden package.
* doc/guix.texi (Application Setup): Do not mention glibc-utf8-locales.
Instead, provide an example for defining a custom locales package.
2022-02-27 20:21:02 -05:00
Ludovic Courtès bc8bea1739
pull: '--news' no longer shows package lists.
* guix/scripts/pull.scm (display-channel-news): Return #t when news were
displayed.
(display-news): Add #:profile-news? parameter and honor it.  Print
something there were no news.
(process-query): For 'display-news', call 'display-channel-news'
directly.
* doc/guix.texi (Invoking guix pull): Adjust accordingly.
2022-02-27 18:06:14 +01:00
Maxim Cournoyer 60cb647a28
services: pulseaudio: Add an extra-script-files configuration field.
* gnu/services/sound.scm (<pulseaudio-configuration>)
[extra-script-files]: Add field.
(extra-script-files->file-union): New procedure.
(append-include-directive): Likewise.
(pulseaudio-etc): Use them.
* doc/guix.texi: Document the new 'extra-script-files- configuration field.
2022-02-26 09:03:01 -05:00
Danny Milosavljevic ed17082d94
services: agetty: Add shepherd-requirement.
* gnu/services/base.scm (<agetty-configuration>): Add shepherd-requirement.
* doc/guix.texi (agetty-configuration): Document it.
2022-02-25 17:13:18 +01:00
John Kehayias 50311f338f
doc: Fix 'setuid-program' example.
%setuid-programs was previously moved to be in the list sexp instead of just
the append one. This causes an "invalid G-expression input" error.

Error reported by: Kolev on #guix.

* doc/guix.texi (Setuid Programs): Move %setuid-programs out to the append
sexp.

Signed-off-by: Maxim Cournoyer <maxim.cournoyer@gmail.com>
2022-02-23 23:14:23 -05:00
Simon Streit c0bc08d82c
doc: Document virtlogd package variable.
* doc/guix.texi (Virtualization Services): Document virtlogd package
variable.

Signed-off-by: Efraim Flashner <efraim@flashner.co.il>
2022-02-23 12:47:30 +02:00
Ludovic Courtès 9724da9abc
doc: Typographical tweaks.
* doc/guix.texi (Build Utilities): Remove trailing #t from phases.
Use @lisp for 'wrap-program' examples.
2022-02-18 14:14:38 +01:00
Ludovic Courtès de65fd92d5
doc: Document 'wrap-program' and 'wrap-script'.
* doc/guix.texi (Build Utilities)[Wrappers]: New subsection.
2022-02-16 16:49:26 +01:00
Ludovic Courtès 8d472e9314
doc: Move build commands to @example for clarity.
* doc/contributing.texi (Building from Git): Tweak so that all the
commands appear in @example boxes.  Show --localstatedir=/var instead of
--localstatedir=@var{directory}.
2022-02-15 10:29:09 +01:00
Josselin Poiret cfa6fdc54c
doc: Clarify the Swap Space examples, and include an helper example.
* doc/guix.texi (Swap Space): The examples referred to variables
defined outside of the snippets, and so were not very informative for
people without much Guile knowledge.  Instead, refer to mapped-devices
for the first, and use the new helper
file-systme-mount-point-predicate for the second.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2022-02-15 10:14:18 +01:00
Ludovic Courtès b9df2e2b4d
pull: '--list-generations' lists packages only with '--details'.
* guix/scripts/pull.scm (show-help, %options): Add "--details".
(process-query): Honor it.
* doc/guix.texi (Invoking guix pull): Document it.
2022-02-14 15:52:36 +01:00