Commit graph

2394 commits

Author SHA1 Message Date
Tobias Geerinckx-Rice
48cccf06ad
doc: Note different texlive-tiny & texline-union natures.
* doc/contributing.texi (Submitting Patches): Add ‘package’ and
‘procedure’.

Inspired-by: Jorge P. de Morais Neto
2020-12-14 19:11:03 +01:00
Ludovic Courtès
f06f569aa2
doc: Link to "Pattern Matching" in Guile.
* doc/contributing.texi (Data Types and Pattern Matching): Link to the
"Pattern Matching" node of the Guile manual.
2020-12-14 12:19:05 +01:00
Ludovic Courtès
69a0440a02
doc: Document 'advertise?' for 'guix-publish-configuration'.
* doc/guix.texi (Base Services): Document the 'advertise?' field of
'guix-publish-configuration'.
2020-12-09 14:13:33 +01:00
Julien Lepiller
ccc4d287b7
guix: opam: Add coq support in the importer.
* guix/import/opam.scm (get-opam-repository): Add support for coq
repositories.
(ocaml-name->guix-name): Properly name coq package.
* doc/guix.texi (Invoking guix import): Document it.
2020-12-08 16:53:07 +01:00
Mathieu Othacehe
770fb659a6
services: cuirass: Add queue-size option.
* gnu/services/cuirass.scm (<cuirass-configuration>): Add "queue-size" field.
(cuirass-shepherd-service): Honor it.
* doc/guix.texi (Continuous Integration): Document it.
2020-12-08 11:56:26 +01:00
宋文武
c46b969120
doc: Document about xfce4-panel plugins.
* doc/guix.texi (Desktop Services): Document that xfce4-panel plugin packages
should be added to the 'packages' field of OS.
2020-12-07 16:08:41 -05:00
Holger Peters
b3f21eb6bc
doc: Fix incorrect GUIX_PROFILE value for 'guix pull'.
* doc/guix.texi (Getting Started): Fix invalid GUIX_PROFILE value.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2020-12-07 12:48:25 +01:00
Mathieu Othacehe
e461d3b750
service: Add shepherd discover action.
* gnu/services/base.scm (shepherd-discover-action): New procedure,
(guix-shepherd-service)[<actions>]: add it,
[<start>]: honor it.
* doc/guix.texi (Invoking guix-daemon): Document it.
2020-12-07 10:39:21 +01:00
Christopher Baines
92f7c11af2
prometheus-node-exporter: Support extra options.
There are plenty of options supported that the Guix configuration record
doesn't help you with, so add this field to allow users to do their own thing.

* gnu/services/monitoring.scm (<prometheus-node-exporter-configuration>): Add
extra-options field.
(prometheus-node-exporter-shepherd-service): Handle the extra options.
* doc/guix.texi (Prometheus Node Exporter Service): Document this.
2020-12-07 09:08:33 +00:00
Christopher Baines
fd14385581
prometheus-node-exporter: Enable the textfile collector.
* gnu/services/monitoring.scm (<prometheus-node-exporter-configuration>): Add
textfile-directory.
(prometheus-node-exporter-textfile-directory,
prometheus-node-exporter-activation): New procedures.
(prometheus-node-exporter-shepherd-service): Pass
--collector.textfile.directoryto the service.
(prometheus-node-exporter-service-type): Extend the activation service type.
* doc/guix.texi (Prometheus Node Exporter Service): Document.
2020-12-07 09:08:20 +00:00
Christopher Baines
6eba27f7be
doc: Remove redundant node exporter configuration from the example.
* doc/guix.texi (Prometheus Node Exporter Service): Simplify the example.
2020-12-07 09:08:17 +00:00
Hugo Thiessard
a889e6a9bf
doc: Document Guix System F2FS root support.
* doc/guix.texi (Keyboard Layout and Networking and Partitioning): Add
F2FS to the footnote of Guix System's supported root file systems.

Signed-off-by: Tobias Geerinckx-Rice <me@tobias.gr>
2020-12-07 00:38:44 +01:00
Ludovic Courtès
7f13e8d862
doc: Add note on the importance of bootstrapping.
* doc/guix.texi (Bootstrapping): Remove distinction between "regular
users" and "hackers".  Explain the importance of the question.
2020-12-06 23:18:08 +01:00
Ludovic Courtès
443599999a
doc: Mention Guile-Semver dependency.
This is a followup to 269c1db41b.

* doc/guix.texi (Requirements): Mention Guile-Semver.
2020-12-04 16:59:26 +01:00
Simon Josefsson
1d4a2668e3
doc: Give references and examples for services-to-restart.
* doc/guix.texi (Unattended Upgrades): Give references and examples
for services-to-restart.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2020-12-03 23:18:30 +01:00
Maxime Devos
7776fc4c0f
doc: Correct spelling of 'discover?' .
* doc/guix.texi (Base Services): Correct spelling of 'discover?'.

Signed-off-by: Mathieu Othacehe <othacehe@gnu.org>
2020-12-03 20:33:58 +01:00
Ludovic Courtès
b5a6eddd8e
doc: Tweak wording of 'chicken-build-system' material.
* doc/guix.texi (Build Systems): Fix spelling of "CHICKEN".  Add xref to
its web site.  Tweak wording.
2020-12-03 16:18:44 +01:00
raingloom
64f032d73f
build-system: Add chicken-build-system.
* guix/build-system/chicken.scm: New file.
* guix/build/chicken-build-system.scm: New file.
* Makefile.am: Add them.
* doc/guix.texi: Document it.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2020-12-03 16:18:33 +01:00
Maxim Cournoyer
3462678bc3
doc: Document that source derivation builds can be checked.
It is a common mistake to modify an <origin> record that computes to a
fixed-output derivation, forgetting to update its hash field, only to find out
that a previously built source gets used instead.  While there doesn't seem to
be an obvious solution to this problem, we can at least document the fact that
sources can be checked the same as other builds.

* doc/guix.texi (Additional Build Options): Document that source derivation
builds can be verified using --check.
2020-11-29 22:38:53 -05:00
John Soo
58be9e0bf1
processes: Add '--format' and the "normalized" format.
* guix/scripts/processes.scm (lock->recutils): New procedure.
(daemon-session->recutils): Use it.
(daemon-sessions->recutils, session-key->recutils)
(session-scalars->normalized-record)
(child-process->normalized-record)
(daemon-sessions->normalized-record): New procedures.
(session-rec-type, lock-rec-type, child-process-rec-type)
(%available-formats): New variables.
(list-formats): New procedure.
(%options, show-help): Add '--format'.
(%default-options): New variable.
(guix-processes): Use 'parse-command-line' instead of 'args-fold*'.
Honor the 'format' value in OPTIONS.
* doc/guix.texi (Invoking guix processes): Document '--format'.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2020-11-29 23:55:57 +01:00
John Soo
e1c81203ca
processes: Put ChildProcess and ChildPID on separate lines.
* guix/scripts/processes.scm (daemon-session->recutils): Put child
process information in separate fields.
* doc/guix.texi (Invoking guix processes): Document change in output of
'guix processes'.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2020-11-29 23:55:57 +01:00
Oleg Pykhalov
3682638910
doc: Document zabbix-agent hostname change.
This commit follows 8518a3692c.

* doc/guix.texi
(Monitoring Services)[zabbix-agent]: Set hostname to empty string.
2020-11-29 18:02:36 +03:00
Mathieu Othacehe
79f9dee3c4
Use substitute servers on the local network.
* guix/scripts/discover.scm: New file.
* Makefile.am (MODULES): Add it.
* nix/nix-daemon/guix-daemon.cc (options): Add "discover" option,
(parse-opt): parse it,
(main): start "guix discover" process when the option is set.
* guix/scripts/substitute.scm (%local-substitute-urls): New variable,
(substitute-urls): add it.
* gnu/services/base.scm (<guix-configuration>): Add "discover?"
field,
(guix-shepherd-service): honor it.
* doc/guix.texi (Invoking guix-daemon): Document "discover" option,
(Base Services): ditto.
2020-11-29 15:08:26 +01:00
Mathieu Othacehe
276e494b2a
publish: Add advertising support.
* guix/scripts/publish.scm (%options): Add "--advertise" option.
(show-help): Document it.
(service-name): New procedure,
(publish-service-type): new variable.
(run-publish-server): Add "advertise?" and "port" parameters. Use them to publish
the server using Avahi.
(guix-publish): Pass the "advertise?" option to "run-publish-server".
* gnu/services/base.scm (<guix-publish-configuration>): Add "advertise?"
field.
(guix-publish-shepherd-service): Honor it.
2020-11-29 15:08:26 +01:00
Mathieu Othacehe
375cc7dea2
Add Avahi support.
* guix/avahi.scm: New file.
* Makefile.am (MODULES): Add it.
* configure.ac: Add Guile-Avahi dependency.
* doc/guix.texi (Requirements): Document it.
* gnu/packages/package-management.scm (guix)[native-inputs]: Add
"guile-avahi",
[propagated-inputs]: ditto.
* guix/self.scm (specification->package): Add guile-avahi.
(compiled-guix): Ditto.
2020-11-29 15:08:26 +01:00
Tobias Geerinckx-Rice
5e93118448
doc: Fix another typo.
* doc/guix.texi (Database Services): Remove a duplicate ‘on’ from the
memcached section.
2020-11-28 22:55:28 +01:00
Marius Bakke
4dadb49779
Merge branch 'staging' 2020-11-28 22:39:12 +01:00
Marius Bakke
fe5c9051cc
doc: Fix typo.
* doc/guix.texi (Database Services): Replace comma with full stop for
Memcached documentation.
2020-11-28 22:36:59 +01:00
Marius Bakke
e20388ad7f
services: MySQL: Upgrade database schemas automatically.
* gnu/services/databases.scm (<mysql-configuration>): Add AUTO-UPGRADE? field.
(mysql-upgrade-wrapper, mysql-upgrade-shepherd-service,
mysql-shepherd-services): New variables.
(mysql-service-type): Use MYSQL-SHEPHERD-SERVICES instead of
MYSQL-SHEPHERD-SERVICE.
* doc/guix.texi (Database Services): Document the AUTO-UPGRADE? field of
MYSQL-SERVICE-TYPE.
* gnu/tests/databases.scm (run-mysql-test): Test that mysql_upgrade has run.
2020-11-28 19:51:40 +01:00
Marius Bakke
927bf98e0e
services: MySQL: Make the socket configurable.
* gnu/services/databases.scm (<mysql-configuration>): Add SOCKET field.
(mysql-configuration-file): Adjust accordingly.
* doc/guix.texi (Database Services): Likewise.
2020-11-28 19:51:40 +01:00
Marius Bakke
27d7cdbf87
services: MySQL: Bind to localhost only by default.
* gnu/services/databases.scm (<mysql-configuration>): Add BIND-ADDRESS field.
(mysql-configuration-file): Adjust accordingly.
* doc/guix.texi (Database Services): Document it.
2020-11-28 19:51:40 +01:00
Marius Bakke
89b704a456
services: MySQL: Deprecate 'mysql-service'.
* gnu/services/databases.scm (mysql-service): Define in terms of DEFINE-DEPRECATED.
* gnu/tests/databases.scm (%mysql-os): Adjust accordingly.
* doc/guix.texi (Database Services): Adjust the MariaDB/MySQL section to
document MYSQL-SERVICE-TYPE instead of MYSQL-SERVICE.  While at it, document
the EXTRA-CONTENT field.
2020-11-28 19:51:40 +01:00
Ludovic Courtès
b229803a78
doc: Update mcron example.
This is a followup to 0468455e7d, which
added mcron to %BASE-SERVICES.

* doc/guix.texi (Scheduled Job Execution): Use 'simple-service'.
2020-11-28 00:06:14 +01:00
Ludovic Courtès
bb15471e73
doc: Remove lzlib from the requirements.
This is a followup to 4c0c65acfa.

* doc/guix.texi (Requirements): Remove lzlib.
2020-11-28 00:06:14 +01:00
Marius Bakke
24c86ad0c0
Merge branch 'master' into staging 2020-11-26 23:59:28 +01:00
Tobias Geerinckx-Rice
3c881facce
doc: Fix typo.
* doc/guix.texi (Version Control Services): Fix ‘trough’ typo.

Reported by guixy on #guix.
2020-11-26 23:32:29 +01:00
Marius Bakke
bff94a5a53
Merge branch 'master' into staging 2020-11-26 01:08:35 +01:00
Ludovic Courtès
c350a99bea
doc: Tweak LVM-related info.
* doc/guix.texi (Limitations): Remove LVM support.
(Mapped Devices): Add link the to LVM web site.  Tweak wording.
2020-11-26 00:05:39 +01:00
Mikhail Tsykalov
a9a2fdaabc
mapped-devices: Add 'lvm-device-mapping'.
* gnu/system/mapped-devices.scm (lvm-device-mapping, open-lvm-device,
close-lvm-device): New variables.

* gnu/tests/install.scm (%lvm-separate-home-os,
%lvm-separate-home-os-source, %lvm-separate-home-installation-script,
%test-lvm-separate-home-os): New variables.

* gnu/system/linux-initrd.scm (raw-initrd): Add (srfi srfi-1) to initrd expression.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2020-11-26 00:05:39 +01:00
Mikhail Tsykalov
788df2ecd6
mapped-devices: Allow target to be list of strings.
* gnu/system/mapped-devices.scm (<mapped-device>): Rename constructor to
%mapped-device.
[target]: Remove field.
[targets]: New field. Adjust users.
(mapped-device-compatibility-helper, mapped-device): New macros.
(mapped-device-target): New deprecated procedure.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2020-11-26 00:05:39 +01:00
Oleg Pykhalov
984124173b
doc: Fix a typo in WebSSH configuration documentation.
* doc/guix.texi (Networking Services): Fix a typo in webssh-configuration.
2020-11-24 07:43:43 +03:00
Marius Bakke
a485a98ca8
Merge branch 'master' into staging 2020-11-22 23:36:09 +01:00
Tobias Geerinckx-Rice
13180f6acc
services: cups: Add Splix by default.
* gnu/services/cups.scm (cups-configuration): Add splix to the default extensions.
* doc/guix.texi (Printing Services): Document it.
2020-11-21 23:00:06 +01:00
Tobias Geerinckx-Rice
0b57c1b09e
gnu: Rename escpr to epson-inkjet-printer-escpr.
‘escpr’ is nice and short, but everyone else calls this package
‘epson-inkjet-printer-escpr’.  More importantly, so does upstream.

* gnu/packages/cups.scm (escpr, epson-inkjet-printer-escpr,): Rename
escpr to epson-inkjet-printer-escpr, redefining escpr as
deprecated-package.  Adjust all users.
2020-11-21 22:59:47 +01:00
Marius Bakke
35ed83beae
Merge branch 'master' into staging 2020-11-19 00:04:32 +01:00
Julien Lepiller
5221df3414
gnu: vpn: Make ca, key and cert optional.
* gnu/services/vpn.scm (openvpn-client-configuration)
(openvpn-server-configuration): Make ca, key an cert fields optional.
* doc/guix.texi (VPN Services): Document the change.
2020-11-18 15:05:41 +01:00
Danny Milosavljevic
8490fa0253
services: cups: Add some extensions by default.
* gnu/services/cups.scm (cups-configuration): Add some extensions by default.
doc/guix.texi (Printing Services): Document the default value.
2020-11-18 10:00:11 +01:00
Maxim Cournoyer
11d37090f9
doc: Add a backslash escape to the disk-image example.
* doc/guix.texi (Invoking guix system): Add a backslash escape.
2020-11-17 21:43:22 -05:00
Maxim Cournoyer
129b9b16d9
Merge remote-tracking branch 'origin/version-1.2.0' into master
Conflicts:
	gnu/packages/bioinformatics.scm

The python-pysam package fixed in master was kept instead of the update done
in the version-1.2.0 branch.
2020-11-17 18:00:28 -05:00
Maxim Cournoyer
41f27bf870
guix: system: Make disk-image root file system non-volatile by default.
And add a new '--volatile' option to have it volatile otherwise.

* guix/scripts/system.scm (%options)[volatile-root?]: New boolean option.
(%default-options): Set its default value to #f.
(show-help): Add help doc.
* guix/scripts/system.scm (perform-action): Propagate option...
(system-derivation-for-action): ...here.  Use it to set the volatile-root?
field of the image object passed to SYSTEM-IMAGE.
* doc/guix.texi (Invoking guix system): Document it.
2020-11-17 15:20:03 -05:00
Maxim Cournoyer
ac96f2c836
doc: Detail which bootloader get used with disk-image or vm-image.
* doc/guix.texi (Invoking guix system): Extend doc.
2020-11-17 15:20:03 -05:00
Marius Bakke
4e5e05d409
Merge branch 'master' into staging 2020-11-15 23:45:34 +01:00
Daniel Brooks
0fd87768e4
doc: Add a note about SELinux relabeling after upgrades to guix-daemon.
* doc/guix.texi (SELinux Support): Add note about upgrades.

Signed-off-by: Marius Bakke <marius@gnu.org>
2020-11-15 23:09:46 +01:00
Matthew Kraai
16144199c3
doc: Remove superfluous comma.
* doc/guix.texi (Managing Software the Guix Way): Remove comma.

Signed-off-by: Leo Famulari <leo@famulari.name>
2020-11-14 12:00:21 -05:00
Holger Peters
289b20ef62
doc: Document hg-fetch.
* doc/guix.texi (origin Reference): Add documentation for hg-fetch.

Signed-off-by: Christopher Baines <mail@cbaines.net>
2020-11-14 10:27:00 +00:00
Christopher Baines
e365f8b26c
doc: Fix Guix Build Coordinator agent configuration defaults.
* doc/guix.texi (Guix Build Coordinator): Fix some
guix-build-coordinator-agent-configuration defaults.
2020-11-14 09:51:17 +00:00
Maxim Cournoyer
3de898b43c
maint: update-guix-package: Optionally add sources to store.
Following discussions in <https://issues.guix.gnu.org/43893>, keeping a copy
of the updated package source is desirable when generating a release.

* build-aux/update-guix-package.scm (version-controlled?): Remove variable.
(call-with-temporary-git-worktree): Renamed from
'with-temporary-git-worktree'.  Update doc.  Do not change directory
implicitly.  Define as a procedure, not a syntax.
(keep-source-in-store): New procedure.
(main): Adjust to use with call-with-temporary-git-worktree.  Add the sources
to the store when GUIX_ALLOW_ME_TO_USE_PRIVATE_COMMIT is set.  Exit gracefully
when FIND-ORIGIN-REMOTE returns #f.
(%savannah-guix-git-repo-push-url-regexp): Adjust match for a potential colon
separator.
* Makefile.am (GUIX_ALLOW_ME_TO_USE_PRIVATE_COMMIT): Adjust.
* .dir-locals.el (scheme-mode): Remove entry for with-temporary-git-worktree.
* doc/contributing.texi (Updating the Guix Package): Update doc.

Co-authored-by: Ludovic Courtès <ludo@gnu.org>
2020-11-12 09:23:27 -05:00
Mark H Weaver
e3ae313478
gnu: mingetty-shepherd-service: Make 'clear-on-logout' configurable.
Also change the default configuration to clear on logout, which is the
upstream default.

* gnu/services/base.scm (<mingetty-configuration>): Add 'clear-on-logout?'
field.
(mingetty-shepherd-service): Pass the "--noclear" option to mingetty only if
'clear-on-logout?' is #false.
* doc/guix.texi (Base Services): Document the 'clear-on-logout?' field.
2020-11-11 00:21:22 -05:00
Marius Bakke
32787d6524
Merge branch 'master' into staging
Conflicts:
	gnu/local.mk
	gnu/packages/gdb.scm
	gnu/packages/lisp-xyz.scm
	gnu/packages/web-browsers.scm
2020-11-07 21:33:32 +01:00
Tobias Geerinckx-Rice
83dee0e5b2
doc: Fix Zabbix ‘db-secret-file’ documentation.
* doc/guix.texi (Monitoring Services): Clarify ‘db-secret-file’'s (lack
of) structure and gexp support.
2020-11-07 13:40:46 +01:00
raingloom
fe1cd098d2
services: Add yggdrasil-service-type.
* gnu/services/networking.scm (yggdrasil-configuration)
(yggdrasil-configuration?, yggdrasil-configuration-package)
(yggdrasil-configuration-auto-conf, yggdrasil-configuration-log-level)
(yggdrasil-configuration-log-to): New procedures.
(yggdrasil-service-type): New variable.
* doc/guix.texi: Document it.
* gnu/system/examples/yggdrasil.tmpl: Provide example.

Signed-off-by: Julien Lepiller <julien@lepiller.eu>
2020-11-05 18:45:40 +01:00
Ludovic Courtès
1566cb05cd
doc: Illustrate procedures that return packages.
* doc/guix.texi (Defining Package Variants): Illustrate procedures that
return packages.
2020-11-03 11:58:01 +01:00
Ludovic Courtès
dbf572e007
doc: Use '@lisp' for 'options->transformation' example.
* doc/guix.texi (Defining Package Variants): Use @lisp for
'options->transformation' example.
2020-11-03 11:58:01 +01:00
Miguel Ángel Arruga Vivas
1077d54f6e
doc: Fix typo.
* doc/guix.texi (Invoking guix publish)<cache-bypass-threshold>: The unit
suffixes the numeric value.
2020-11-02 20:29:03 +01:00
Maxim Cournoyer
794928a906
doc: Complete sentence in earlyoom-configuration doc.
* doc/guix.texi (Linux Services): Complete sentence in earlyoom-configuration
doc.

Reported-by: Julien Lepiller <julien@lepiller.eu>
2020-11-02 11:03:33 -05:00
Julien Lepiller
2d05f1fc39
doc: Fix typo.
* doc/guix.texi (DNS Services): Fix typo.
2020-11-01 19:51:48 +01:00
Julien Lepiller
34f7c5b61a
doc: Fix typo.
* doc/guix.texi (Sound Services): Fix typo.
2020-11-01 16:57:32 +01:00
Miguel Ángel Arruga Vivas
a57b0c9eda
doc: Add missing period at the end of the sentence. 2020-11-01 01:38:10 +01:00
Ludovic Courtès
95460da83b
doc: Add "Defining Package Variants" section.
* doc/guix.texi (Defining Packages): Move documentation of
'package-input-rewriting' & co. to...
(Defining Package Variants): ... here.  New node.  Also document
'inherit' and 'options->transformation'.
2020-10-31 23:16:43 +01:00
Ludovic Courtès
2b2ab7796a
services: guix-publish: Add 'cache-bypass-threshold' field.
This is a followup to ecaa102a58.

* gnu/services/base.scm (<guix-publish-configuration>)[cache-bypass-threshold]:
New field.
(guix-publish-shepherd-service): Honor it.
2020-10-30 12:31:18 +01:00
Ludovic Courtès
81c3dd9cad
services: swap: Allow for UUIDs and file system labels.
* gnu/services/base.scm (swap-service-type)[device-lookup, device-name]:
New variables.
Add 'modules' field to 'shepherd-service'.  In 'start' and 'stop', use
'device-lookup' to resolve UUIDs and labels.
* doc/guix.texi (operating-system Reference): Adjust accordingly.
2020-10-30 01:14:21 +01:00
zimoun
58db2e6877
scripts: lint: Add '--exclude' option.
* guix/scripts/lint.scm (%options, parse-options): Add '--exclude' option.
(option-checker): New helper function.
* doc/guix.texi (Invoking guix lint): Document it.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2020-10-30 01:14:20 +01:00
zimoun
80c7f02468
scripts: lint: Fix '--no-network' option.
* guix/scripts/lint.scm: (show-help): Add '--no-network' option message.
(%options, parse-options): Fix argument order.
* doc/guix.texi (Invoking guix lint): Document it.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2020-10-30 01:14:20 +01:00
Tobias Geerinckx-Rice
83c60bb062
doc: Fix claimed archive timestamps.
Reported by Leo Famulari <leo@famulari.name>.

* doc/guix.texi (Binary Installation): Use a correct timestamp of 1
instead of an incorrect one of 0.
2020-10-28 19:26:25 +01:00
Ludovic Courtès
ecaa102a58
publish: Add '--cache-bypass-threshold'.
* guix/scripts/publish.scm (show-help, %options): Add
'--cache-bypass-threshold'.
(low-compression): New procedure.
(cache-bypass-threshold): New parameter.
(bypass-cache?): New procedure.
(render-narinfo/cached): Call 'render-narinfo' when 'bypass-cache?'
returns true.
(render-nar/cached): Call 'render-nar' when 'bypass-cache?' returns
true.
(guix-publish): Parameterize 'cache-bypass-threshold'.
* tests/publish.scm ("with cache", "with cache, lzip + gzip")
("with cache, uncompressed"): Pass '--cache-bypass-threshold=0'.
("with cache, vanishing item"): Expect 200 for RESPONSE.
("with cache, cache bypass"): New test.
2020-10-28 16:24:47 +01:00
Christopher Baines
0105b8624d
doc: Update the PostgreSQL extension packages example.
* doc/guix.texi (PostgreSQL): Update the extension packages example.
2020-10-28 13:01:48 +00:00
Christopher Baines
e2f16ea1cf
doc: Use @code rather than @var for data type items.
In the couple of cases where it's inconsistent.

* doc/guix.texi (PostgreSQL, Sound Services): Replace @var with @code within
data type sections.
2020-10-28 12:59:56 +00:00
Lulu
729d4ba025
doc: Fix various minor typos.
* doc/guix.texi (Top): Add end of line period to menu entry in the node listing.
(Invoking guix time-machine): Remove duplicate word.
(Invoking guix environment): As above.
(PAM Mount Service): As above.
(Running Guix in a Virtual Machine): Remove erroneous hyphen and duplicate word.

Signed-off-by: Leo Famulari <leo@famulari.name>
2020-10-27 19:01:22 -04:00
Alexandru-Sergiu Marton
2ade5bdeb8
services: Add gmnisrv web service.
* gnu/services/web.scm (<gmnisrv-configuration>): New record type.
(%default-gmnisrv-config-file): New variable.
(%gmnisrv-accounts, %gmnisrv-activation): New variables.
(gmnisrv-shepherd-service): New procedure.
(gmnisrv-service-type): New variable.
* doc/guix.texi (Web Services): Document it.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2020-10-27 18:00:28 +01:00
Ludovic Courtès
aa7edc9449
doc: Fix xref translation macro.
* doc/local.mk (xref_command): Wrap loop body in 'if [ -n "$$e" ]'.
This avoids shell syntax errors when producing
doc/guix-cookbook.de.texi, which for some reason gets an empty 'e' at
one point.  Quote the first argument to 'head'.
2020-10-27 00:40:24 +01:00
Christopher Baines
a95057ccee
doc: Document the postgresql-config-file.
* doc/guix.texi (PostgreSQL): Document the postgresql-config-file record.
2020-10-25 10:54:14 +00:00
Ludovic Courtès
c6ef627c97
doc: Add "Getting Substitutes from Other Servers" section.
* doc/guix.texi (Getting Substitutes from Other Servers): New node.
(Invoking guix-daemon): Add cross-reference.
(Substitute Server Authorization): Clarify that this is unnecessary on
Guix System.
(Invoking guix publish): Add cross-reference.
2020-10-25 01:06:10 +02:00
Ludovic Courtès
3b6e4e5fd0
services: guix: Make /etc/guix/acl really declarative by default.
Fixes <https://bugs.gnu.org/39819>.
Reported by Maxim Cournoyer <maxim.cournoyer@gmail.com>.

* gnu/services/base.scm (substitute-key-authorization): Symlink
DEFAULT-ACL to /etc/guix/acl unconditionally.  Add code to optionally
back up /etc/guix/acl if it was possibly modified by hand.
* doc/guix.texi (Base Services): Clarify the effect of setting
'authorize-keys?' to true.  Mention the backup.  Give an example showing
how to authorize substitutes from another server.
2020-10-25 01:06:10 +02:00
Miguel Ángel Arruga Vivas
ef6596a20c
build: Add GUIX_GIT_KEYRING variable for make authenticate.
* Makefile.am (GUIX_GIT_KEYRING): New variable.
(authenticate): Use GUIX_GIT_KEYRING to select the keyring branch
reference.
* doc/contributing.texi (Building from Git): Add an example about the
use of GUIX_GIT_KEYRING.
2020-10-24 17:38:58 +02:00
Ludovic Courtès
59bb1ae3a9
git: Require Guile-Git 0.3.0 or later.
* guix/git.scm (auth-supported?): Remove.
(clone*): Inline code that was dependent on AUTH-SUPPORTED?.
(update-cached-checkout): Likewise.
(resolve-reference): Remove check for 'object-lookup-prefix' and use it
unconditionally.
(load-git-submodules): Remove.
(update-submodules): Use 'repository-submodules', 'submodule-lookup',
etc. unconditionally.
(update-cached-checkout): Use 'repository-close!' unconditionally.
* m4/guix.m4 (GUIX_CHECK_GUILE_GIT): New macro.
* configure.ac: Use it and error out when it fails.
* doc/guix.texi (Requirements): Bump to Guile-Git 0.3.0.
2020-10-22 17:10:25 +02:00
Ricardo Wurmus
3ddc47bc07
doc: Move documentation of singularity-service-type.
Fixes <https://bugs.gnu.org/44126>.

* doc/guix.texi: Move documentation of singularity-service-type from
"Auditd Service" heading to "Docker Service" heading.
2020-10-21 23:32:01 +02:00
Ludovic Courtès
720fce6dae
doc: Capitalize "Hurd" in 'operating-system' reference.
* doc/guix.texi (operating-system Reference): Capitalize "Hurd".
2020-10-21 19:19:34 +02:00
Ludovic Courtès
2c9f6ff2ae
doc: Add an entry for the 'keyboard-layout' procedure.
* doc/guix.texi (Keyboard Layout): Add @deffn entry for
'keyboard-layout'.
2020-10-21 19:19:34 +02:00
Ludovic Courtès
004a9455f9
doc: Fix typo in 'avahi-service-type' description.
* doc/guix.texi (Networking Services): Change "zero-configuration" to
"avahi-configuration".
2020-10-21 19:19:34 +02:00
Ludovic Courtès
481d2fbb91
doc: Fix typo in 'git-fetch' description.
* doc/guix.texi (origin Reference): Replace "git-download" with
"git-fetch" in one sentence.
2020-10-21 19:19:33 +02:00
Ludovic Courtès
8fe7c89f0c
doc: Cookbook links to /manual/devel, not /manual.
Since the Cookbook is built from the 'master' branch, it should point to
the manual from that same branch.

* doc/build.scm (guix-mono-node-indexes, guix-split-node-indexes): Link
to /manual/devel when %MANUAL is not "guix".
2020-10-21 19:19:33 +02:00
Christopher Baines
bdcf4d88d5
services: databases: Don't specify a default postgresql version.
Currently, if the postgresql package major version changes, this is going to
break the service upon upgrade, because PostgreSQL will reject the data files
from the differing major version of the service.

Because it's important to either keep running a particular major version, or
intentionally upgrade, I think the configuration would be better with no
default. I think this is also going to be helpful when trying to assist users
upgrading PostgreSQL.

* gnu/services/databases.scm (<postgresql-configuration>): Remove default for
postgresql.
(postgresql-service-type): Remove the default value.
* gnu/tests/databases.scm (%postgresql-os): Update accordingly.
* gnu/tests/guix.scm (%guix-data-service-os): Update accordingly.
* gnu/tests/monitoring.scm (%zabbix-os): Update accordingly.
* gnu/tests/web.scm (patchwork-os): Update accordingly.
* doc/guix.texi (PostgreSQL): Update accordingly.
2020-10-20 22:39:43 +01:00
Christopher Baines
a698df72d3
services: databases: Deprecate the postgresql-service procedure.
Using the service type directly is a better approach, making it easier to
configure the service.

* gnu/services/databases.scm (postgresql-service): Deprecate this procedure.
* doc/guix.texi (PostgreSQL): Update the documentation for the use of (service
postgresql-service-type).
2020-10-20 22:39:43 +01:00
Christopher Baines
93576e4475
doc: Add subheadings in to the Databases section.
To make it clearer where the relevant documentation for a particular service
starts and ends.

* doc/guix.texi (Database Services): Add subheadings.
2020-10-20 22:39:43 +01:00
Ludovic Courtès
6701f64f73
guix build: Move package transformation options behind '--help-transform'.
This change declutters the '--help' output.

* guix/scripts/build.scm (show-build-options-help)
(%standard-build-options): Add '--help-transform'.
(show-transformation-options-help): Make private.
(show-help): Remove call to 'show-transformation-options-help'.
* guix/scripts/build.scm (show-help): Likewise.
* guix/scripts/environment.scm (show-help): Likewise.
* guix/scripts/graph.scm (show-help): Likewise.
* guix/scripts/install.scm (show-help): Likewise.
* guix/scripts/pack.scm (show-help): Likewise.
* guix/scripts/package.scm (show-help): Likewise.
* guix/scripts/upgrade.scm (show-help): Likewise.
* doc/guix.texi (Package Transformation Options): Mention '--help-transform'.
2020-10-20 16:30:16 +02:00
Ludovic Courtès
6aeda81602
guix build: Add '--with-debug-info'.
* guix/scripts/build.scm (transform-package-with-debug-info): New
procedure.
(%transformations): Add 'with-debug-info'.
(%transformation-options, show-transformation-options-help): Add
'--with-debug-info'.
* tests/scripts-build.scm ("options->transformation, with-debug-info"):
New test.
* doc/guix.texi (Package Transformation Options): Document
'--with-debug-info'.
(Installing Debugging Files): Introduce sections.  Remove bit about
eventual "opt-out" since this is not happening.  Document
'--with-debug-info' under "Rebuilding with Debugging Info".
2020-10-20 16:30:16 +02:00
Ludovic Courtès
b8085fccf2
doc: Replace @example with @lisp in "Build Phases".
* doc/guix.texi (Build Phases): Use @lisp for second example.
2020-10-20 16:30:15 +02:00
Ludovic Courtès
93c251818d
doc: More uses of @lisp instead of @example.
* doc/guix.texi (G-Expressions): Use @lisp for 'let-system' example.
* doc/contributing.texi (Synopses and Descriptions): Use @lisp for
second example.
2020-10-20 01:07:46 +02:00
Ludovic Courtès
ebe6e03949
doc: Fix misuses of @var in "Defining Packages".
* doc/guix.texi (Defining Packages): Use @code instead of @var where
appropriate.
2020-10-20 01:07:46 +02:00
Ludovic Courtès
5513d621e9
doc: Add "Build Phases" section.
* doc/guix.texi (Build Phases): New section.
(Build Systems): Remove 'modify-phases' example and add cross-reference
to "Build Phases".
(Build Utilities)[Build Phases]: Simplify intro and link to "Build
Phases".
(G-Expressions): Add index entries for "code staging" and add
cross-reference to "Build Phases".
2020-10-20 01:07:46 +02:00