Commit graph

2950 commits

Author SHA1 Message Date
methuselah-0
3802bb0ba0
services: mysql: Add extra-environment as configuration option.
* gnu/services/databases.scm (mysql-configuration): Add extra-environment
(mysql-service): Use #:log-file and #:environment-variables
* doc/guix.texi: Document it.

Signed-off-by: Leo Prikler <leo.prikler@student.tugraz.at>
2021-04-27 20:45:35 +02:00
Maxim Cournoyer
ef63a4fa3b
doc: Remove extraneous spaces from the net-options default value snippet.
Adapting the snippet corresponding to the default value of the net-options
field of the hurd-vm-configuration record shown in the manual would easily
lead to a broken childhurd service, due to the presence of extraneous spaces
in the option string.

* doc/guix.texi (Virtualization Services)[hurd-vm-configuration]
<net-options>: Use string-append to properly form the option string.
2021-04-26 23:43:06 -04:00
Leo Famulari
4de688738c
doc: Clarify the utility of the development branches.
* doc/contributing.texi (Submitting Patches): Clarify the utility of the
'staging' and 'core-updates' branches.
2021-04-26 16:10:53 -04:00
Julien Lepiller
1897a6efa7
doc: Document translation process.
doc/contributing.texi (Translating Guix): New section.
doc/guix.texi (Top): Add a reference to the new section.
2021-04-25 16:00:44 +02:00
Julien Lepiller
f06685a985
doc: Fix cross-reference URL to translated manual.
* doc/htmlxref.cnf: Fix translated manual URL.
2021-04-25 14:36:33 +02:00
Ludovic Courtès
c59cc2383d
import: Remove Nix importer.
This importer has suffered from bitrot and no longer works with current
Nix and Nixpkgs.  See <https://bugs.gnu.org/32339> and
<https://bugs.gnu.org/36255>.

* guix/import/snix.scm, guix/scripts/import/nix.scm,
tests/snix.scm: Remove.
* Makefile.am (MODULES, SCM_TESTS): Remove them.
* guix/scripts/import.scm (importers): Remove "nix".
* build-aux/test-env.in: Remove NIXPKGS variable.
* configure.ac: Remove '--with-nixpkgs' option.
* doc/guix.texi (Invoking guix import): Remove bit about "guix import
nix".
* etc/completion/fish/guix.fish: Likewise.
2021-04-25 14:34:09 +02:00
B. Wilson
2c93df3d11
services: Add a service for rasdaemon.
* gnu/services/linux.scm (rasdaemon-configuration, rasdaemon-configuration?,
rasdaemon-configuration-record?, rasdaemon-service-type): New variables.
* doc/guix.texi (Linux Services): Document it.

Signed-off-by: Leo Famulari <leo@famulari.name>
2021-04-24 12:30:01 -04:00
Julien Lepiller
1ebd086286
doc: Fix cross-reference URL to translated manual.
* doc/htmlxref.cnf: Fix translated manual URL.
2021-04-24 16:46:22 +02:00
Christopher Baines
311e4b005b
services: guix-build-coordinator: Fix queue builds default config.
Use the default client port rather than the default agent communication port
for the queue builds script.

* gnu/services/guix.scm (<guix-build-coordinator-queue-builds-configuration>):
Change coordinator default.
2021-04-23 15:05:38 +01:00
Christopher Baines
e2ab6fb0dd
services: guix-build-coordinator: Add max-1min-load-average option.
To the agent configuration.

* gnu/services/guix.scm (<guix-build-coordinator-agent-configuration>): New
field, max-1min-load-average.
(guix-build-coordinator-agent-configuration-max-1min-load-average): New
procedure.
(guix-build-coordinator-agent-shepherd-services): If set, include the
max-1min-load-average in the agent arguments.
2021-04-23 11:03:23 +01:00
Leo Prikler
78d7d8bbce
doc: Update TRANSLATED_INFO.
This fixes issues with missing sources when the infos are built.

* doc/local.mk (TRANSLATED_INFO): Add missing documents.
2021-04-22 23:40:21 +02:00
Leo Famulari
46852000c9
doc: Clarify further the distinction between the web-based manuals.
As discussed on #guix IRC, several of us struggle to reliably choose the
right option based on the old labels:

https://logs.guix.gnu.org/guix/2021-04-20.log#182137

* doc/build.scm (html-manual-indexes): Try to distinguish between the
two options more clearly.
2021-04-20 12:48:32 -04:00
Guillaume Le Vaillant
3313f61e18
services: wireguard: Add keep-alive support.
* gnu/services/vpn.scm (<wireguard-peer>): Add 'keep-alive' field.
  (wireguard-configuration-file): Use it.
* doc/guix.texi (VPN Services): Document it.
2021-04-20 14:32:53 +02:00
Ludovic Courtès
d95168321f
import: Remove Nix importer.
This importer has suffered from bitrot and no longer works with current
Nix and Nixpkgs.  See <https://bugs.gnu.org/32339> and
<https://bugs.gnu.org/36255>.

* guix/import/snix.scm, guix/scripts/import/nix.scm,
tests/snix.scm: Remove.
* Makefile.am (MODULES, SCM_TESTS): Remove them.
* guix/scripts/import.scm (importers): Remove "nix".
* build-aux/test-env.in: Remove NIXPKGS variable.
* configure.ac: Remove '--with-nixpkgs' option.
* doc/guix.texi (Invoking guix import): Remove bit about "guix import
nix".
* etc/completion/fish/guix.fish: Likewise.
2021-04-20 12:13:16 +02:00
Julien Lepiller
fef2f08bc6
doc: Build the French HTML cookbook.
* doc/build.scm (%languages): Add 'fr' cookbook translation.
2021-04-18 16:50:18 +02:00
Julien Lepiller
8830930e2b
nls: Add Chinese (Traditional) translation.
* po/doc/guix-cookbook.zh_Hans.po: New file.
* doc/local.mk (info_TEXINFOS): Add it.
* po/doc/local.mk (DOC_COOKBOOK_PO_FILES): Add it.
2021-04-18 13:18:29 +02:00
Julien Lepiller
0f355124af
nls: Add Korean translation.
* po/doc/guix-cookbook.ko.po: New file.
* po/doc/guix-manual.ko.po: New file.
* doc/local.mk (info_TEXINFOS): Add them.
* po/doc/local.mk (DOC_PO_FILES, DOC_COOKBOOK_PO_FILES): Add them.
* po/guix/ko.po: New file.
* po/guix/LINGUAS: Add 'ko'.
* po/packages/ko.po: New file.
* po/packages/LINGUAS: Add 'ko'.
2021-04-18 13:18:22 +02:00
Julien Lepiller
d2d6c20fee
nls: Add Italian translation.
* po/doc/guix-manual.it.po: New file.
* po/doc/local.mk (DOC_PO_FILES): Add it.
* doc/local.mk (info_TEXINFOS): Add it.
* po/guix/it.po: New file.
* po/guix/LINGUAS: Add 'it'.
2021-04-18 13:18:20 +02:00
Julien Lepiller
43fb84da67
nls: Add Persian translation.
* po/packages/fa.po: New file.
* po/packages/LINGUAS: Add 'fa'.
* po/doc/guix-cookbook.fa.po: New file.
* po/doc/guix-manual.fa.po: New file.
* po/doc/local.mk (DOC_PO_FILES, DOC_COOKBOOK_PO_FILES): Add them.
* doc/local.mk (info_TEXINFOS): Add them.
2021-04-18 13:18:17 +02:00
Julien Lepiller
77c6c0aa57
nls: Add Slovak translation.
* po/packages/sk.po: New file.
* po/packages/LINGUAS: Add 'sk'.
* po/doc/guix-manual.sk.po: New file.
* doc/local.mk (info_TEXINFOS): Add it.
* po/doc/local.mk (DOC_PO_FILES): Add it.
2021-04-18 13:18:13 +02:00
Julien Lepiller
c3eaff8a21
nls: Add Portuguese (Brazil) translation of the manual. 2021-04-18 13:18:08 +02:00
Julien Lepiller
58c5911652
nls: Add French translation of the cookbook. 2021-04-18 13:17:31 +02:00
Julien Lepiller
0571edc179
doc: Fix pxref translation issue.
* doc/local.mk (xref_command): Change regexp to match properly.
2021-04-18 13:17:09 +02:00
Efraim Flashner
fcc39864db
Merge remote-tracking branch 'origin/master' into core-updates
Conflicts:
	gnu/local.mk
	gnu/packages/boost.scm
	gnu/packages/chez.scm
	gnu/packages/compression.scm
	gnu/packages/crates-io.scm
	gnu/packages/docbook.scm
	gnu/packages/engineering.scm
	gnu/packages/gcc.scm
	gnu/packages/gl.scm
	gnu/packages/gtk.scm
	gnu/packages/nettle.scm
	gnu/packages/python-check.scm
	gnu/packages/python-xyz.scm
	gnu/packages/radio.scm
	gnu/packages/rust.scm
	gnu/packages/sqlite.scm
	guix/build-system/node.scm
2021-04-16 14:39:48 +03:00
Ludovic Courtès
fab8ab7617
git: Honor proxy settings when fetching submodules.
Fixes <https://bugs.gnu.org/44593>.

* guix/git.scm (update-submodules): Add #:fetch-options and honor it.
(update-cached-checkout): Pass #:fetch-options to 'update-submodules'.
* doc/guix.texi (Requirements): Adjust comment about Guile-Git.
2021-04-14 22:51:38 +02:00
Leo Prikler
4dff6ecde8
Revert "services: mysql: Add extra-environment as configuration option."
This reverts commit f3626119d7.
This commit inadvertently broke a string freeze.  Let's be nice to our
translators and not do that.
2021-04-14 00:59:52 +02:00
methuselah-0
f3626119d7
services: mysql: Add extra-environment as configuration option.
* gnu/services/databases.scm (mysql-configuration): Add extra-environment
(mysql-service): Use #:log-file and #:environment-variables
* doc/guix.texi: Document it.

Signed-off-by: Leo Prikler <leo.prikler@student.tugraz.at>
2021-04-13 18:47:32 +02:00
Christopher Baines
c311147bd1
services: postgresql: Change service default socket directory.
Fixes <https://bugs.gnu.org/46737>.

PostgreSQL running with a different socket directory to the default one in the
package itself breaks some services, this commit restores the previous
behaviour where PostgreSQL by default will run with a socket directory that
matches the default used by PostgreSQL packaged for Guix.

Switching to a different default value can happen, but only alongside changing
the PostgreSQL package.

* gnu/services/databases.scm (<postgresql-config-file>)[socket-directory]:
Change default to #false.
* doc/guix.texi (Database Services): Update documentation, and specify a
different value for disabling connections via sockets.
* gnu/tests/guix.scm (%guix-data-service-os): Use default PostgreSQL
behaviour.
* gnu/tests/monitoring.scm (%zabbix-os): Likewise.
* gnu/tests/web.scm (patchwork-os): Likewise.

Signed-off-by: Leo Famulari <leo@famulari.name>
2021-04-12 19:12:46 -04:00
Ludovic Courtès
d14f21389c
doc: Document 'gnu-build-system' keyword parameters.
* doc/guix.texi (Build Systems): Document keyword parameters of
'gnu-build-system'.
2021-04-12 18:44:09 +02:00
Ludovic Courtès
eb613eff58
doc: Move list of build phases to "Build Phases".
Before this change, the 'gnu-build-system' phases were listed in the
"Build Systems" section, and then summarized in the "Build Phases"
section.  This moves everything to "Build Phases".

* doc/guix.texi (Build Systems): Move phase table to...
(Build Phases): ... here.  Rearrange surrounding text.
2021-04-12 18:44:09 +02:00
Maxime Devos
2978832b92
services: Add ipfs-service-type
* gnu/services/networking.scm (ipfs-service-type)
  (%ipfs-home-mapping, %ipfs-environment)
  (%ipfs-accounts, %ipfs-home): New variables.
  (ipfs-configuration, ipfs-configuration?)
  (ipfs-configuration-package, ipfs-configuration-gateway)
  (ipfs-configuration-api, ipfs-shepherd-service)
  (ipfs-binary, %ipfs-activation): New procedures.
* doc/guix.texi (Networking Services): Document it.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2021-04-12 18:42:22 +02:00
Ricardo Wurmus
a247f5c753
services: Support DELETE in MODIFY-SERVICES macro.
* gnu/services.scm (%modify-service): Add clause for DELETE syntax.
(modify-services): Use FILTER-MAP; adjust docstring.
* doc/guix.texi (System Services): Mention alternative syntax.
(X Window): Use MODIFY-SERVICES syntax.
2021-04-12 17:49:07 +02:00
Oleg Pykhalov
7dfbfb281f
doc: Fix connect to the VM over SSH example.
* doc/guix.texi (Running Guix in a VM): Add host which connect to in
SSH connection example.
2021-04-11 08:49:01 +03:00
Tobias Geerinckx-Rice
24bcf0bad8
doc: Fix typos.
* doc/guix.texi (SELinux Support): Fix typo.
(Build Systems): Likewise.
(DNS Services): Likewise.
(Networking Services): Likewise.
(Guix Services): Likewise.
(Reduced Binary Seed Bootstrap): Likewise.
(Documentation): Likewise.
2021-04-10 14:11:30 +02:00
Maxim Cournoyer
83f8b6d32c
import: go: Append version to symbol name in the pinned version mode.
This allows importing packages with complicated version specific dependency
chains without the package symbol names colliding.

* doc/guix.texi (Invoking guix import): Document the --pin-versions option.
Mention that a specific version can be imported.  Remove the experimental
warning.
* guix/import/go.scm (go-module->guix-package-name)[version]: Add optional
argument.  Rewrite the character translation in terms of string-map.
(go-module->guix-package): Conditionally use dependencies whose symbol include
their version, based no the value of the PIN-VERSIONS? argument.
* guix/import/utils.scm (package->definition): Add a new case where the full
version string is appended to the package symbol.
* guix/scripts/import.scm (guix-import): Correctly print forms starting
with '(define-public [...]'.
* guix/scripts/import/go.scm (guix-import-go): Conditionally include the
version in the package symbols defined.
2021-04-09 23:02:37 -04:00
Leo Famulari
b685337c94
doc: Quote a URL to avoid misinterpretation by the shell.
Otherwise, the shell tries to perform pattern-matching based on the "?"
character.

Reported by nij in #guix.

* doc/guix.texi (Binary Installation): Add quotes around OPENPGP-SIGNING-KEY-URL.
2021-04-09 20:52:24 -04:00
Christopher Baines
eda4bb4f16
services: Add Laminar.
* gnu/services/ci.scm: New file.
* gnu/tests/ci.scm: New file.
* doc/guix.texi (Laminar): Document the Laminar service.
2021-04-09 11:59:58 +01:00
Ludovic Courtès
b92cfc322d
gnu-maintenance: Add 'sourceforge' updater.
This updater currently covers 2.4% of the packages.

* guix/gnu-maintenance.scm (latest-sourceforge-release): New procedure.
(%sourceforge-updater): New variable.
* doc/guix.texi (Invoking guix refresh): Document it.
2021-04-06 23:59:46 +02:00
zimoun
beaf701d65
doc: Use the shell dollar substitution.
See:
https://unix.stackexchange.com/questions/126927/have-backticks-i-e-cmd-in-sh-shells-been-deprecated

* doc/guix.texi: Replace the shell backquote deprecated substitution by the
dollar one.
2021-04-05 13:19:22 +02:00
zimoun
56eedd4f93
doc: Reorder "Channels with Substitutes".
Ordering consistency introduced by 12871cc8db.

* doc/guix.texi (Channels): Move section "Channels with Substitutes".
Update the master menu.
2021-04-05 13:19:22 +02:00
Leo Famulari
5b97804e87
doc: Remind developers to build Guix.
The previous instructions were correct, but we got too many bug reports
with a root cause of "did not build Guix yet".

Other parts of the manual already instruct `make && make check`, so this
makes the treatment of building Guix more consistent, too.

* doc/contributing.texi (Building from Git): Instruct the user to run
`make` when building Guix.
2021-04-04 13:34:30 -04:00
Ludovic Courtès
58beda0121
services: guix-publish: Add zstd compression by default.
That way, the default config with (advertises? #t) and without a cache
will offer zstd-compressed substitutes, which should lead to much higher
throughput than gzip.

* gnu/services/base.scm (default-compression): When
'guix-publish-configuration-cache' returns true, use higher level
compression ratios.  Add "zstd".
* doc/guix.texi (Base Services): Mention zstd.
2021-04-03 22:08:33 +02:00
Xinglu Chen
bc1148480d
doc: Fix typo.
* doc/guix.texi (Inferiors): Use past tense.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2021-04-01 14:58:54 +02:00
Tobias Geerinckx-Rice via Bug reports for GNU Guix
1b1a61f86a
doc: Discourage ambiguous package names.
* doc/contributing.texi (Package Naming): Explicitly mention
single-character and otherwise ambiguous names.
2021-04-01 14:35:59 +02:00
qblade
aa03d32eb1
services: kmscon: Add font-engine and font-size fields.
* gnu/services/base.scm (<kmscon-configuration>): Add font-engine and
font-size fields.
(kmscon-service-type): Honor them.
* doc/guix.texi (Base Services): Document them.
2021-04-01 13:40:09 +02:00
Leo Famulari
94a463e0a5
doc: Fix a typo in the Julia build system section.
* doc/guix.texi (julia-build-system): Fix typo.
2021-03-31 14:21:15 -04:00
Ludovic Courtès
e45ef9a648
status: Don't display download URLs for '--verbosity=1'.
With this change, each substitute occupies a single line of
output (instead of two) when using '-v1', the default for 'guix package'
& co.

* guix/status.scm (print-build-event): Add #:print-urls? and honor it.
(print-build-event/quiet): Pass #:print-urls? #f.
(print-build-event/quiet-with-urls): New procedure.
(logger-for-level): Add case for LEVEL 2.
* doc/guix.texi (Common Build Options): Adjust '--verbosity'
documentation.
2021-03-31 15:57:46 +02:00
Chris Marusich
e52ec6c64a
doc: Document powerpc64le-linux support.
* doc/guix.texi (GNU Distribution): Document support for powerpc64le-linux as
a "technology preview."
2021-03-30 23:00:57 -07:00
Ludovic Courtès
0d8cea4f24
doc: "Invoking guix refresh" links to '--with-latest'.
* doc/guix.texi (Invoking guix refresh): Reword intro and Link to
'--with-latest'.
2021-03-26 00:04:05 +01:00
Ludovic Courtès
3cb1136780
doc: Explain how to pass 'guix refresh' the packages found in your profile.
Suggested by Xinglu Chen <public@yoctocell.xyz>.

* doc/guix.texi (Invoking guix refresh): Mention how to update packages
found in one's profile.
2021-03-26 00:04:05 +01:00
Ludovic Courtès
3b8bd63aa2
doc: Move 'guix refresh --list-updaters' reference to the right place.
* doc/guix.texi (Invoking guix refresh): Move '--list-updaters' right
after '--type'.
2021-03-26 00:04:05 +01:00
Leo Famulari
27744ac895
doc: Fix typo in qemu-binfmt-service example.
* doc/guix.texi (Virtualization Services): Add missing parentheses.
2021-03-24 18:51:38 -04:00
Efraim Flashner
2aab587f84
Merge remote-tracking branch 'origin/master' into core-updates 2021-03-24 20:50:44 +02:00
Mathieu Othacehe
90d166e510
doc: cuirass: Update documentation.
* doc/guix.texi (Continuous Integration): Update Cuirass documentation.
2021-03-23 20:30:49 +01:00
Mathieu Othacehe
8ac7fae8b0
doc: Remove Simple Cuirass section.
This is no longer needed as the Cuirass specification mechanism has been
rewritten.

* doc/guix.texi (Continuous Integration): Remove Simple Cuirass section.
2021-03-23 16:47:47 +01:00
nixo
a06db9c1ee
gnu: Add julia-jllwrappers.
* gnu/packages/julia-xyz.scm (julia-jllwrappers): New variable.
* doc/guix.texi (julia-build-system): Document how to use jllwrappers to use
  to guix binary packages.

Co-authored-by: Ludovic Courtès <ludo@gnu.org>
2021-03-20 22:29:14 +01:00
nixo
e64ff72a14
doc: Fix typo in julia-build-system.
* doc/guix.texi (julia-build-system): replace argument wrongly named
  julia-file-name with the correct julia-package-name.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2021-03-20 22:29:14 +01:00
Ludovic Courtès
52e64b21be
doc: Fix syntax of '.guix-channel' dependency example.
Reported by ison <ison@airmail.cc>.

* doc/guix.texi (Declaring Channel Dependencies): Remove quote in
'dependencies' example.
2021-03-20 22:29:13 +01:00
Maxim Cournoyer
25db3b2f8b
doc: Remove the guile-lib/htmlprag-fixed package.
This hotfix package is no longer necessary as the ability to parameterize the
way htmlprag tokenizes HTML was added in guile-lib 0.2.7.

* doc/build.scm (guile-lib/htmlprag-fixed): Remove variable.
(html-manual-identifier-index): Replace guile-lib/htmlprag-fixed by guile-lib,
and make set the %strict-tokenizer? parameter to #t.
(syntax-highlighted-html): Likewise.
2021-03-20 15:55:18 -04:00
Ludovic Courtès
b93d7daeaf
doc: Add 'shepherd-service' example.
* doc/guix.texi (Shepherd Services): Add example.
2021-03-19 21:44:36 +01:00
Leo Famulari
9ade2b720a
doc: Document the guidelines for removing inactive committers.
For more context, see the discussion in <https://bugs.gnu.org/47111>.

* doc/contributing.texi (Commit Access): Add paragraph about removing
inactive committers.
2021-03-18 16:09:11 -04:00
Leo Famulari
898489f48e
services: Enable "protected hardlinks" and "protected symlinks" by default.
References:

https://sysctl-explorer.net/fs/protected_hardlinks/
https://sysctl-explorer.net/fs/protected_symlinks/

* gnu/services/sysctl.scm (%default-sysctl-settings): New public variable.
(<sysctl-configuration>): Use %default-sysctl-settings as the default value.
* gnu/services/base.scm (%base-services): Add sysctl-service-type.
* doc/guix.texi (Miscellaneous Services): Document the new defaults.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2021-03-18 12:17:33 +01:00
Ludovic Courtès
f526105210
doc: Tweak "Invoking guix refresh" node.
* doc/guix.texi (Invoking guix refresh): Update output in '--recursive'
example.  Use @xref, not @ref, at the beginning of a sentence.
2021-03-17 23:10:19 +01:00
Ludovic Courtès
af9af2180e
gnu-maintenance: Add 'generic-html' updater.
This brings total updater coverage, as reported by 'guix refresh
--list-updaters', from 78% to 88.3%.  Among many other things, it covers
freedesktop.org packages.

* guix/gnu-maintenance.scm (html-updatable-package?)
(latest-html-updatable-release): New procedures.
(%generic-html-updater): New variable.
* doc/guix.texi (Invoking guix refresh): Document it.
2021-03-17 12:03:24 +01:00
Ludovic Courtès
71f6acd28d
gnu-maintenance: Use (htmlprag) for 'latest-html-release'.
* guix/gnu-maintenance.scm (html->sxml): Remove.  Autoload (htmlprag)
instead.
* doc/guix.texi (Requirements): Mention 'guix refresh' for the Guile-Lib
dependency.
2021-03-17 12:03:24 +01:00
Ludovic Courtès
0571aa7abf
doc: Define the term "profile".
Fixes <https://bugs.gnu.org/46803>.
Reported by Luis Felipe <luis.felipe.la@protonmail.com>.

* doc/guix.texi (Getting Started): Introduce the term "profile".
(Invoking guix package): Likewise.
2021-03-17 12:03:23 +01:00
Léo Le Bouter
097cf21d1d
gnu: Remove MongoDB.
mongodb 3.4.10 has unpatched CVEs and mongodb 3.4.24 has some files in the
release tarball under the SSPL, therefore we cannot provide mongodb while
upholding to good security standards.

It turns out feff80cec3 was right since while
the main license file wasnt altered to SSPL, some files in the tree contain
SSPL headers.

* gnu/packages/databases.scm (go-gopkg.in-mgo.v2): Remove.
* gnu/packages/databases.scm (mongo-tools): Remove.
* doc/guix.texi (mongodb-service-type): Remove.
* gnu/tests/databases.scm (%test-mongodb, %mongodb-os, run-mongodb-test):
Remove.
* gnu/services/databases.scm (mongodb-configuration, mongodb-configuration?,
mongodb-configuration-mongodb, mongodb-configuration-config-file,
mongodb-configuration-data-directory, mongodb-service-type,
%default-mongodb-configuration-file, %mongodb-accounts, mongodb-activation,
mongodb-shepherd-service): Remove.
* gnu/packages/databases.scm (mongodb): Remove.
2021-03-16 11:05:24 +01:00
Maxim Cournoyer
77c2f4e206
services/qemu-binfmt: Use the F flag and the static output of QEMU.
Fixes <https://issues.guix.gnu.org/36117>.

Before this change, the 'binfmt_misc' entries registered for QEMU would not be
usable in container contexts outside of guix-daemon (without manually bind
mounting file names).

For example:

$ docker run --rm arm32v7/debian true
standard_init_linux.go:207: exec user process caused "no such file or directory"

After this change, any container can make use of the QEMU binfmt_misc
registrations, as their corresponding QEMU static binaries are fully
pre-loaded by the kernel.

* gnu/services/virtualization.scm (<qemu-platform>): Define using
'define-record-type*'.
[flags]: New field, which defaults to "F" (fix binary).
(%i386, %i486, %alpha, %arm, %armeb, %sparc, %sparc32plus, %ppc, %ppc64)
(%ppc64le, %m68k, %mips, %mipsel, %mipsn32, %mipsn32el, %mips64, %mips64el)
(%riscv32, %riscv64, %sh4, %sh4eb, %s390x, %aarch64, %hppa): Adjust.
(qemu-binfmt-guix-chroot): Remove variable.
(qemu-binfmt-service-type): Remove the qemu-binfmt-guix-chroot extension.
* gnu/services/qemu-binfmt (qemu-platform->binfmt):  Use the static output of
QEMU.
* doc/contributing.texi (Submitting Patches): Update doc.
* doc/guix.texi (Virtualization Services): Update doc.
2021-03-15 18:00:35 -04:00
Efraim Flashner
4d00185d66
build-system/cargo: Propagate crates across builds.
* guix/build-system/cargo.scm (cargo-build): Add cargo-package-flags,
install-source flags.
* guix/build/cargo-build-system.scm (unpack-rust-crates, package): New
procedures.
(install): Also install crate sources.
(%standard-phases): Add new phases.
* doc/guix.texi (Packaging-guidelines)[Rust Crates]: Adjust to changes
in the cargo-build-system.
2021-03-14 19:52:44 +02:00
Ludovic Courtès
a04aef2430
utils: Use Guile-zlib for gzip compression and decompression.
Fixes <https://bugs.gnu.org/46967>.

* guix/utils.scm (decompressed-port): Call 'make-zlib-input-port'
instead of invoking %GZIP.
(compressed-output-port): Call 'make-zlib-output-port' instead of
invoking %GZIP.
* doc/guix.texi (Requirements): Require Guile-zlib >= 0.1.0.
2021-03-12 15:59:46 +01:00
Katherine Cox-Buday
02e2e093e8
import: Add Go importer.
This patch adds a 'guix import go' command.

* doc/guix.texi (Requirements): Mention Guile-Lib dependency.
(Invoking guix import): Document 'guix import go'.
* gnu/packages/package-management.scm (guix)[inputs, propagated-inputs]:
Add GUILE-LIB.
* guix/self.scm (compiled-guix)[guile-lib]: New variable.
[dependencies]: Add it.
(specification->package): Add "guile-lib".
* guix/build-system/go.scm (go-version->git-ref): New procedure.
* guix/import/go.scm, guix/scripts/import/go.scm, tests/go.scm: New files.
* guix/scripts/import.scm: Declare subcommand guix import go
* po/guix/POTFILES.in: Add 'guix/scripts/import/go.scm'.
* Makefile.am (MODULES): Add 'guix/import/go.scm' and
'guix/scripts/import/go.scm'.
(SCM_TESTS): Add 'tests/go.scm'.

Co-Authored-By: Helio Machado <0x2b3bfa0@gmail.com>
Co-Authored-By: Francois Joulaud <francois.joulaud@radiofrance.com>
Co-Authored-By: Maxim Cournoyer <maxim.cournoyer@gmail.com>
Co-Authored-by: Ludovic Courtès <ludo@gnu.org>
2021-03-10 18:01:48 +01:00
Tobias Geerinckx-Rice
1dfc08f7ad
doc: Fix grammar.
* doc/contributing.texi (Package Naming): Fix grammar.
2021-03-10 01:16:07 +01:00
Edgar Vincent
b3a36ab55b
doc: Fix a grammatical error in the system installation guide.
* doc/guix.texi (After System Installation): Fix grammar.

Signed-off-by: Leo Famulari <leo@famulari.name>
2021-03-06 13:43:41 -05:00
Christopher Baines
a8448da0f4
Merge branch 'master' into core-updates 2021-03-06 00:18:30 +00:00
Ludovic Courtès
c19304d2d2
doc: Refer to the right node for '--keep-failed'.
* doc/guix.texi (Invoking guix-daemon, Debugging Build Failures): Refer
to "Common Build Options" for '--keep-failed'.
2021-03-05 12:49:27 +01:00
Christopher Baines
c6c48494e3
services: guix-build-coordinator: Add dynamic auth with file record.
* gnu/services/guix.scm (guix-build-coordinator-agent-dynamic-auth-with-file,
guix-build-coordinator-agent-dynamic-auth-with-filen?,
guix-build-coordinator-agent-dynamic-auth-with-file-agent-name,
guix-build-coordinator-agent-dynamic-auth-with-file-token-file): New procedures.
(guix-build-coordinator-agent-shepherd-services): Handle new dynamic auth with
file record.
* doc/guix.texi (Guix Build Coordinator): Document the new dynamic auth with
file record.
2021-03-05 09:29:58 +00:00
Christopher Baines
8a7b4ce093
services: guix-build-coordinator: Add dynamic auth record.
* gnu/services/guix.scm (guix-build-coordinator-agent-dynamic-auth,
guix-build-coordinator-agent-dynamic-auth?,
guix-build-coordinator-agent-dynamic-auth-agent-name,
guix-build-coordinator-agent-dynamic-auth-token): New procedures.
(guix-build-coordinator-agent-shepherd-services): Handle new dynamic auth
record.
* doc/guix.texi (Guix Build Coordinator): Document the new dynamic auth
record.
2021-02-28 21:56:34 +00:00
Christopher Baines
7556130c2f
services: guix-build-coordinator: Rework authentication config.
A new authentication approach has been added to the coordinator, so to better
represent the options, this commit changes the configuration to accept
different records, each for different authentication approaches.

* gnu/services/guix.scm (guix-build-coordinator-agent-configuration-uuid,
guix-build-coordinator-agent-configuration-password,
guix-build-coordinator-agent-configuration-password-file): Removed
procedures.
(guix-build-coordinator-agent-password-auth,
guix-build-coordinator-agent-password-auth?,
guix-build-coordinator-agent-password-auth-uuid,
guix-build-coordinator-agent-password-auth-password,
guix-build-coordinator-agent-password-file-auth,
guix-build-coordinator-agent-password-file-auth?,
guix-build-coordinator-agent-password-file-auth-uuid,
guix-build-coordinator-agent-password-file-auth-password-file): New
procedures.
(guix-build-coordinator-agent-shepherd-services): Adjust to handle the
authentication field and it's possible record values.
* doc/guix.texi (Guix Build Coordinator): Update documentation.
2021-02-28 21:56:33 +00:00
Gurjeet Singh
801932f4db
doc: Fix typo.
* doc/guix.texi (Reduced Binary Seed Bootstrap): Fix typo.

Signed-off-by: Nicolas Goaziou <mail@nicolasgoaziou.fr>
2021-02-25 10:36:04 +01:00
raid5atemyhomework
0a0b0148e5
doc: Expand sane-service-type documentation.
* doc/guix.texi (sane-service-type): Move from between documentation
about geoclue, expand slightly.
(sane-backends-minimal): New description.
(sane-backends): New description, new example.

Signed-off-by: Nicolas Goaziou <mail@nicolasgoaziou.fr>
2021-02-23 15:41:46 +01:00
Mathieu Othacehe
bebcf97600
services: cuirass: Improve simple-cuirass-services.
Instead of returning multiple services in simple-cuirass-services, rely on the
instantiate-missing-services procedure to instantiate postgresql and
postgresql-role-service-type when missing.

Turn simple-cuirass-services procedure into
simple-cuirass-configuration->specs, that takes a simple-cuirass-configuration
record and returns a Cuirass specification.

Suggested-by: Ludovic Courtès <ludo@gnu.org>

* gnu/services/cuirass.scm (%default-cuirass-config): Remove it.
(simple-cuirass-services): Rename it to ...
(simple-cuirass-configuration->specs): ... this procedure.
* gnu/tests/cuirass.scm (cuirass-services): Remove postgresql and
postgresql-role services that are automatically instantiated.
(simple-cuirass-service): New variable.
(%cuirass-simple-test): Adapt it to use simple-cuirass-configuration->specs
instead of simple-cuirass-services.
* doc/guix.texi (Simple Cuirass): Update it.
2021-02-23 09:45:09 +01:00
Mathieu Othacehe
2cc169f8f9
doc: Fix build.
This is a follow-up of b309a28678.

* doc/guix.texi (Tor): Fix build.
2021-02-22 16:32:05 +01:00
Christopher Lemmer Webber
b309a28678
services: tor: Add control-socket? option.
* doc/guix.texi (Networking Services): Document new `control-socket?'
option for `tor-configuration`.
* gnu/services/networking.scm (<tor-configuration>):
(tor-configuration->torrc):
2021-02-22 10:03:02 -05:00
Nicolas Goaziou
3375e06bc1
doc: Fix typography.
* doc/guix.texi (Continuous Integration): Use @pxref appropriately.  Remove
`quote' from code examples.
2021-02-20 10:11:19 +01:00
Mathieu Othacehe
e9bf511082
services: cuirass: Add "simple-cuirass-services".
* gnu/services/cuirass.scm (<build-manifest>,
<simple-cuirass-configuration>): New records.
(build-manifest, build-manifest?, simple-cuirass-configuration,
simple-cuirass-configuration?, simple-cuirass-services): New procedures.
(%default-cuirass-config): New variable.
* gnu/tests/cuirass.scm (%cuirass-simple-test): New variable.
* doc/guix.texi (Continuous Integration): Document it.
2021-02-19 20:10:09 +01:00
Maxim Cournoyer
28a2c9c9e1
doc: Add an example of how the open file descriptors limit can be raised.
* doc/guix.texi (Base Services)[pam-limits-service]: Add an example and
explanation of how the 'nofile', or open file descriptors value, can be
configured.
2021-02-19 10:01:02 -05:00
Mathieu Othacehe
ee2a5da80a
scripts: system: Remove 'vm-image' command.
Remove the 'vm-image' command that has been superseded by the 'image'
command.

* gnu/system/vm.scm (system-qemu-image): Remove it.
* guix/scripts/system.scm (system-derivation-for-action): Mark 'vm-image'
command as deprecated and use the image API to produce the VM image.
(perform-action, show-help): Adapt accordingly.
* tests/guix-system.sh: Ditto.
* doc/guix.texi (Invoking guix system,
Running Guix in a VM): Ditto.
* etc/completion/fish/guix.fish: Ditto.
* etc/completion/zsh/_guix: Ditto.
2021-02-17 10:52:28 +01:00
Mathieu Othacehe
43b2e440c3
services: wireguard: New service.
* gnu/services/vpn.scm (wireguard-peer, wireguard-configuration): New records.
(wireguard-service-type): New variable.
* doc/guix.texi (VPN Services): Document it.
2021-02-17 10:32:15 +01:00
Alexandru-Sergiu Marton
2b5a81dfd3
services: Add Agate Gemini service.
* gnu/services/web.scm (<agate-configuration>): New record type.
(agate-accounts, agate-shepherd-service): New procedures.
(agate-service-type): New variable.
* doc/guix.texi (Web Services): Document it.

Signed-off-by: Nicolas Goaziou <mail@nicolasgoaziou.fr>
2021-02-15 13:35:04 +01:00
Lee
2b529a376a
doc: Explain how to exit and clean up a Guix environment.
* doc/guix.texi (Invoking guix environment): Explain how to exit and clean up
a Guix environment.

The current documentation doesn't explain how to exit an environment or how to
remove the packages after exiting.

Signed-off-by: Nicolas Goaziou <mail@nicolasgoaziou.fr>
2021-02-15 12:06:13 +01:00
Leo Famulari
58853df8f6
doc: Try again to the improve the branching workflow.
This is a followup to commit 175bea0ca4.

* doc/contributing.texi (Submitting Patches): Distill the workflow to
its essence.
2021-02-13 13:19:15 -05:00
宋文武
b72444a4cc
doc: Fix for 'guix pull'.
Fixes a regression introduced in db6b9d2f4b.

* doc/guix.texi (File-Sharing Services): Remove space after '@pxref'.
2021-02-12 17:31:47 +08:00
Simon South
db6b9d2f4b
services: Add transmission-daemon service.
* gnu/services/file-sharing.scm: New file.
* gnu/local.mk (GNU_SYSTEM_MODULES): Add it.
* po/packages/POTFILES.in: Add it.
* tests/services/file-sharing.scm: New file.
* Makefile.am (SCM_TESTS): Add it.
* doc/guix.texi (File-Sharing Services): New section.

Signed-off-by: 宋文武 <iyzsong@member.fsf.org>
2021-02-12 15:11:36 +08:00
Leo Famulari
175bea0ca4
doc: Try to improve the branching workflow.
* doc/contributing.texi (Submitting Patches): Introduce the use of "-frozen"
branch names.
2021-02-11 16:13:39 -05:00
Danny Milosavljevic
abd318ff4b
Merge branch 'master' into core-updates 2021-02-11 19:12:36 +01:00
Leo Prikler
e1bdab4f0f
build-system: Add renpy-build-system.
* guix/build/renpy-build-system.scm: New file.
* guix/build-system/renpy.scm: New file.
* Makefile.am (MODULES): Add them here.
* doc/guix.texi (Build Systems): Document renpy-build-system.
2021-02-07 15:17:55 +01:00
Christopher Baines
e740cc6140
Merge branch 'master' into core-updates 2021-02-03 09:57:35 +00:00
Ben Sturmfels
0319f9fac2
services: postgresql: Update documented socket directory to match code.
This is a follow-up of 6c0679215f.

* doc/guix.texi (Database Services): Update it.

Signed-off-by: Mathieu Othacehe <othacehe@gnu.org>
2021-02-02 09:27:44 +01:00
Maxim Cournoyer
5e652e94a9
build: Add a --show-duration option to the SCM test-driver.
* build-aux/test-driver.scm (script-version): Update.
(show-help): Document it.
(%options): Add the 'show-duration' option.
(test-runner-gnu): Pass as a new argument.
[test-cases-start-time]: New inner variable.
[test-on-test-begin-gnu]: New hook, used to record the start time.
[test-on-test-end-gnu]: Conditionally print elapsed time.  Record it as the
optional metadata in the test result file (.trs).
* doc/guix.texi (Running the Test Suite): Document it.
2021-02-02 00:28:49 -05:00
Oleg Pykhalov
847c816ddd
doc: Explain how to set custom Shepherd package.
* doc/guix.texi (Shepherd Services): Give example on how to set custom
Shepherd package.
2021-02-01 21:49:43 +03:00
Maxim Cournoyer
f2b2280108
gnu: meson-for-build: Remove package.
The meson-for-build package doesn't carry any special patch anymore; it
appears to be obsolete.

* gnu/packages/build-tools.scm (meson-for-build): Remove variable.
* guix/build-system/meson.scm (default-meson): Use meson.
* doc/guix.texi (Build Systems): Update doc.
2021-02-01 11:54:04 -05:00
Maxim Cournoyer
fa5673b013
doc: Update references to PYTHONPATH and some examples.
The PYTHONPATH variable is replaced by GUIX_PYTHONPATH.  Refresh the packages
used or shown in some of the examples.
2021-02-01 11:54:00 -05:00
Ludovic Courtès
aedbc5ff32
guix package: Add '--export-channels'.
* guix/channels.scm (sexp->channel): Export.
* guix/describe.scm: Use (guix channels).
(manifest-entry-provenance): New procedure.
* guix/scripts/package.scm (channel=?, export-channels): New
procedures.
(show-help, %options): Add '--export-channels'.
(process-query): Honor it.
* build-aux/build-self.scm (build-program)[select?]: Exclude (guix
channels) to account for the (guix describe) change above.
* doc/guix.texi (Invoking guix package): Document it.
2021-02-01 17:32:35 +01:00
Ludovic Courtès
9fd7b050e2
guix package: Add '--export-manifest'.
* guix/scripts/package.scm (export-manifest): New procedure.
(show-help, %options): Add '--export-manifest'.
(process-query): Honor it.
* guix/build/profiles.scm (build-profile): Mention it.
* tests/guix-package.sh: Test it.
* doc/guix.texi (Invoking guix package): Document it.
2021-02-01 17:32:35 +01:00
Maxim Cournoyer
93a628c4e4
build: test-driver.scm: Add a new '--errors-only' option.
* build-aux/test-driver.scm (show-help): Add the help text for the
new '--errors-only' option.
(%options): Add the errors-only option.
(test-runner-gnu): Add the errors-only? parameter and update doc.  Move the
logging of the test data after the test has completed, so a choice can be made
whether to keep it or discard it based on the value of the test result.
(main): Pass the errors-only? option to the driver.
* doc/guix.texi (Running the Test Suite): Document the new option.
2021-01-31 22:28:46 -05:00
Maxim Cournoyer
a1ea2acb37
build: test-driver.scm: Add test cases filtering options.
* build-aux/test-driver.scm (show-help): Add help text for the new --select
and --exclude options.
(%options): Add the new select and exclude options.
(test-runner-gnu): Pass them to the test runner.  Update doc.
(test-match-name*, test-match-name*/negated, %test-match-all): New variables.
(main): Compute the test specifier based on the values of the new options and
apply it to the current test runner when running the test file.
* doc/guix.texi (Running the Test Suite): Document the new options.
2021-01-31 22:28:37 -05:00
Mathieu Othacehe
041a9466ea
guix: channels: Introduce "channel-with-substitutes-available".
* guix/channels.scm (find-latest-commit-with-substitutes,
channel-with-substitutes-available): New procedures.
* guix/scripts/pull.scm (guix-pull): Move "channel-list" call inside the
%current-system parameter scope.
* doc/guix.texi (Channels with substitutes): New section.
2021-01-31 18:36:42 +01:00
Maxime Devos
95f72dcd7a
services: shepherd: Allow custom 'shepherd' package.
* gnu/services/shepherd.scm (<shepherd-configuration>): New record.
(shepherd-boot-gexp, shepherd-root-service-type): Use it.
(scm->go, shepherd-configuration-file): Allow passing custom
shepherd package.
* gnu/system.scm (operating-system-shepherd-service-names): Use the new
record.
* guix/scripts/system.scm (export-shepherd-graph): Adjust accordingly.
* doc/guix.texi (Shepherd Services). Document it.

Co-authored-by: Ludovic Courtès <ludo@gnu.org>
2021-01-30 15:36:57 +01:00
nixo
ba093a6d27
build-system/julia: Don't rely on file name to set module name.
* guix/build/julia-build-system.scm (project.toml->name): New procedure.
  (precompile, check, julia-build): Accept new key argument #:julia-package-name.
* guix/build-system/julia.scm (julia-build): ... add it.
* doc/guix.texi (julia-build-system): Update julia-package-name accordingly.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2021-01-30 15:36:56 +01:00
nixo
a23b384f3f
build-system/julia: Enable tests.
* guix/build-system/julia.scm (julia-build): Set tests? default to #t.
* guix/build/julia-build-system.scm (check): Respect tests? and fix julia
  invocation.
  (%standard-phases): Add check phase after install.
* doc/guix.texi (julia-build-system): Update accordingly.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2021-01-30 15:36:56 +01:00
Hartmut Goebel
784048c27b
doc: Update guidance about Rust package naming.
* doc/contributing.texi (Rust Crates): Explain versions suffix based on
  packages version and Crate "caret" versioning.
2021-01-29 22:51:23 +01:00
Maxim Cournoyer
82f5f6b14c
gnu: Replace all uses of texlive-union by texlive-updmap.cfg.
* doc/build.scm (pdf-manual) Replace texlive-union by texlive-updmap.cfg.
* gnu/packages/algebra.scm (pari-gp): Likewise.
* gnu/packages/bioinformatics.scm (discrover, velvet): Likewise.
* gnu/packages/chez.scm (chez-scheme, chez-web, chez-sockets): Likewise.
* gnu/packages/docbook.scm (dblatex): Likewise.
* gnu/packages/emacs-xyz.scm (emacs-auctex): Likewise.
* gnu/packages/engineering.scm (fastcap): Likewise.
* gnu/packages/guile-xyz.scm (emacsy, guile-cv): Likewise.
* gnu/packages/lisp.scm (sbcl): Likewise.
* gnu/packages/maths.scm (octave, hypre): Likewise.
* gnu/packages/music.scm (lilypond): Likewise.
* gnu/packages/plotutils.scm (asymptote): Likewise.
* gnu/packages/python-xyz.scm (python-numpy-documentation)
(python-matplotlib-documentation, python-ipython-documentation)
(python-pypandoc): Likewise.
* gnu/packages/radio.scm (gnuradio, libosmo-dsp): Likewise.
* gnu/packages/scheme.scm (mit-scheme): Likewise.
* gnu/packages/statistics.scm (r-with-tests): Likewise.
* gnu/packages/tex.scm (simple-texlive-package)
(texlive-xmltex, texlive-tiny, texlive-jadetex, teximpatient, lyx): Likewise.
2021-01-29 13:35:47 -05:00
Joshua Branson
4a48014733
doc: Fix mapped devices example in the manual.
Reported by Raghav Gururajan <rg@raghavgururajan.name> and Mikhail Tsykalov
<tsymsh@gmail.com>.

* doc/guix.texi (Mapped Devices): Replace target with targets.

Signed-off-by: Leo Famulari <leo@famulari.name>
2021-01-28 17:21:17 -05:00
Mathieu Othacehe
ec145a2ff9
services: postgresql: Add postgresql-role-service-type.
* gnu/services/databases.scm (postgresql-role,
postgresql-role?, postgresql-role-name,
postgresql-role-permissions, postgresql-role-create-database?,
postgresql-role-configuration, postgresql-role-configuration?,
postgresql-role-configuration-host, postgresql-role-configuration-roles,
postgresql-role-service-type): New procedures.
* gnu/tests/databases.scm: Test it.
* doc/guix.texi: Document it.
2021-01-28 12:57:27 +01:00
Mathieu Othacehe
fe4b882350
services: postgresql: Add log directory support.
* gnu/services/databases.scm (postgresql-configuration-log-directory): New
procedure.
(<postgresql-configuration>)[log-directory]: New field.
(postgresql-activation): Create the log directory.
(postgresql-shepherd-service): Honor it.
* gnu/tests/databases.scm (%postgresql-log-directory): New variable.
(log-file): New test case.
* doc/guix.texi (Database Services): Document it.
2021-01-28 12:57:26 +01:00
Mathieu Othacehe
6c0679215f
services: postgresql: Add socket directory support.
* gnu/services/databases.scm (postgresql-config-file-socket-directory): New
procedure.
(<postgresql-config-file>)[socket-directory]: New field.
(postgresql-config-file-compiler): Honor it.
(postgresql-activation): Create the socket directory if needed.
* doc/guix.texi (Database Services): Document it.
* gnu/tests/guix.scm (%guix-data-service-os): Adapt it.
* gnu/tests/monitoring.scm (%zabbix-os): Ditto.
* gnu/tests/web.scm (patchwork-os): Ditto.

Signed-off-by: Mathieu Othacehe <othacehe@gnu.org>
2021-01-28 12:57:26 +01:00
Mathieu Othacehe
a38d0b0137
services: postgresql: Use Guile datatypes.
* gnu/services/databases.scm (postgresql-config-file-compiler): Support Guile
datatypes in the "extra-config" field.
* gnu/tests/databases.scm (%postgresql-os): Test it.
* doc/guix.texi (Database Services): Document it.
2021-01-28 12:57:26 +01:00
Ludovic Courtès
4de829a223
doc: Clarify that package transformations are preserved across upgrades.
Reported by pineapples on #guix.

This is a followup to 8e1907a724.

* doc/guix.texi (Invoking guix package): Remove sentence that says that
package transformations are lost upon upgrading and explicitly say the
opposite.
2021-01-24 21:44:55 +01:00
Nicolas Goaziou
55e097e26f
doc: Properly close sentences ending with an upper-case letter.
* doc/guix.texi (Application Setup):
(USB Stick and DVD Installation):
(Proxy Settings):
(Primary URL):
(origin Reference):
(Build Systems):
(The Store):
(Package Transformation Options):
(Invoking guix lint):
(Invoking guix graph):
(operating-system Reference):
(X Window):
(Desktop Services):
(Database Services):
(Mail Services):
(Messaging Services):
(Monitoring Services):
(LDAP Services):
(Certificate Services):
(DNS Services):
(VPN Services):
(Power Management Services):
(Virtualization Services):
(Version Control Services):
(Name Service Switch):
(Bootloader Configuration):
(Running Guix in a VM):
(Separate Debug Info): Use "@." to indicate to Texinfo the sentence does end
with a capital letter.
2021-01-21 20:57:43 +01:00
Joshua Branson
07ef129db3
doc: cookbook: Add "Guix System Image API" section.
* doc/guix-cookbook.texi (Guix System Image API): New section.

Signed-off-by: Mathieu Othacehe <othacehe@gnu.org>
2021-01-21 14:40:36 +01:00
Julien Lepiller
2a9784ffa2
doc: Replace TP with Weblate mentions.
* doc/contributing.texi: Replace link to TP with a link to Weblate.
* doc/guix.texi: Replace link to TP with a link to Weblate.
* doc/guix-cookbook.texi: Replace link to TP with a link to Weblate.
2021-01-20 16:16:45 +01:00
Ludovic Courtès
9ab817b2a4
transformations: Add '--with-latest'.
* guix/upstream.scm (upstream-source-compiler): New procedure.
(%updaters): Set! it.
* guix/transformations.scm (transform-package-latest): New procedure.
(%transformations): Add 'with-latest'.
(%transformation-options, show-transformation-options-help/detailed):
Add '--with-latest'.
* tests/transformations.scm ("options->transformation, with-latest"):
New test.
* doc/guix.texi (Package Transformation Options): Document it.
2021-01-19 17:45:39 +01:00
Mathieu Othacehe
e74baa1245
system: Rename 'disk-image' command 'image'.
* guix/scripts/system.scm (system-derivation-for-action): Rename 'disk-image'
command 'image'. Warn when using the now deprecated 'disk-image' command.
(show-help): Adapt accordingly.
(guix-system): Ditto.
* tests/guix-system.sh: Ditto.
* gnu/system/examples/bare-hurd.tmpl: Ditto.
* doc/guix.texi (Building the Installation Image,
Building the Installation Image for ARM Boards,
Invoking guix pack,
Invoking guix system): Adapt documentation.
2021-01-19 17:16:56 +01:00
Joshua C. Randall
cb68ae668a
doc: Fix typo.
Fixes <http://bugs.gnu.org/35004>.

* doc/guix.texi (Invoking guix package): Fix typo.

Signed-off-by: Mathieu Othacehe <othacehe@gnu.org>
2021-01-19 11:57:16 +01:00
Mathieu Othacehe
2f497d94e7
image: Rename "raw" image-type to "efi-raw".
* gnu/system/image.scm (raw-image-type): Rename to "efi-raw-image-type".
* guix/scripts/system.scm (%default-options): Adapt accordingly.
* doc/guix.texi: Ditto.

Signed-off-by: Mathieu Othacehe <othacehe@gnu.org>
2021-01-17 11:04:25 +01:00
Simon South
181f290aa2
services: openntpd: Remove support for deprecated "-s" option.
* gnu/services/networking.scm (openntpd-configuration): Remove
"allow-large-adjustment?" field.
(openntpd-shepherd-service): Remove use of "allow-large-adjustment?"
configuration field and "-s" daemon option.
* tests/networking.scm (%openntpd-conf-sample): Remove
"allow-large-adjustment?" field.
* doc/guix.texi (Networking Services)[openntpd-service-type]: Remove
"allow-large-adjustment?" field from sample configuration.
[openntpd-configuration]: Remove description of "allow-large-adjustment?"
field.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2021-01-16 23:30:59 +01:00
Stefan
d4f5ea502d
services: qemu-binfmt: 'guix-support?' defaults to #t.
* gnu/services/virtualization.scm (qemu-binfmt-service-type)[guix-support?]:
Change the default from #f to #t.
* doc/guix.texi (Transparent Emulation with QEMU): Change the default of
‘guix-support?’ from #f to #t.  Describe the implication of setting it to #f.

Co-authored-by: Ludovic Courtès <ludo@gnu.org>
2021-01-16 22:38:17 +01:00
Maxim Cournoyer
01f0707207
Merge branch 'staging' into 'core-updates'.
Conflicts:

	gnu/local.mk
	gnu/packages/cmake.scm
	gnu/packages/curl.scm
	gnu/packages/gl.scm
	gnu/packages/glib.scm
	gnu/packages/guile.scm
	gnu/packages/node.scm
	gnu/packages/openldap.scm
	gnu/packages/package-management.scm
	gnu/packages/python-xyz.scm
	gnu/packages/python.scm
	gnu/packages/tls.scm
	gnu/packages/vpn.scm
	gnu/packages/xorg.scm
2021-01-13 23:45:53 -05:00
Ludovic Courtès
e28d2cdd75
doc: Mention optional dependency on Guile-zstd.
* doc/guix.texi (Requirements): Add Guile-zstd.
2021-01-13 22:24:19 +01:00
Ludovic Courtès
d288a4de7d
publish: Add support for zstd compression.
* guix/scripts/publish.scm (compress-nar)[write-compressed-file]: New
procedure.
Use it for 'gzip' and 'lzip'.  Add 'zstd.
(nar-response-port, string->compression-type): Add case for 'zstd'.
* tests/publish.scm (zstd-supported?): New procedure.
("/nar/zstd/*"): New test.
* doc/guix.texi (Invoking guix publish): Document zstd compression.
(Base Services): Add cross-reference to the above node.
2021-01-13 22:24:19 +01:00
Florian Pelz
89dbcac107
doc: Remove trace of ci.guix.info.
* doc/guix.texi (Invoking guix weather): Use default substitute server
in example.
2021-01-12 16:46:25 +00:00
Oleg Pykhalov
4e511fcfce
services: Add keepalived service.
* gnu/services/networking.scm (<keepalived-configuration>): New record.
(keepalived-shepherd-service): New procedure.
(keepalived-service-type): New variable.
* doc/guix.texi (Networking Services): Document this.
2021-01-12 14:40:36 +03:00
Oleg Pykhalov
79ba12a1db
services: Add syncthing service.
* gnu/services/syncthing.scm: New file.
* gnu/local.mk: Add this.
* doc/guix.texi: Document this.
2021-01-12 14:40:36 +03:00
Nicolas Goaziou
2c87a25d01
doc: DNS Services: Fix typography.
* doc/guix.texi (DNS Services): Use appropriate Texinfo markup and capitalization.
2021-01-12 10:55:41 +01:00
Nicolas Goaziou
c0255739fc
doc: Use two spaces after full stop.
* doc/guix.texi:
(GNU Distribution):
(Invoking guix-daemon):
(Invoking guix pull):
(Invoking guix time-machine):
(Specifying Additional Channels):
(Build Systems):
(Invoking guix refresh):
(Invoking guix processes):
(Mapped Devices):
(Base Services):
(Networking Services):
(Mail Services):
(Telephony Services):
(Monitoring Services):
(Web Services):
(DNS Services):
(Continuous Integration):
(Audio Services):
(Virtualization Services):
(Version Control Services):
(Guix Services):
(Miscellaneous Services):
(Initial RAM Disk):
(Bootloader Configuration):
(Invoking guix deploy): Use two spaces after full stop, as required by Texinfo
syntax.
2021-01-12 10:48:39 +01:00
Tobias Geerinckx-Rice
f45ccea487
doc: Add missing cups-filters default extension.
* doc/guix.texi (Printing Services): Add cups-filters to the documented
list of default cups-configuration extensions.
2021-01-10 23:38:49 +01:00
Tobias Geerinckx-Rice
2a4fdb4194
services: cups: Add brlaser extension by default.
* gnu/services/cups.scm (cups-configuration): Add brlaser to the default
extensions.
* doc/guix.texi (Printing Services): Document it.
2021-01-10 23:38:49 +01:00
Morgan Smith
8480c65bb7
doc: Link to "Keyboard Layout" in "operating-system Reference"
* doc/guix.texi (operating-system Reference): Link to the
"Keyboard Layout" node.

Signed-off-by: Mathieu Othacehe <othacehe@gnu.org>
2021-01-06 11:20:35 +01:00
Ludovic Courtès
6c3690fc57
guix system: Add '--graph-backend'.
* guix/scripts/system.scm (lookup-backend): New procedure.
(export-extension-graph, export-shepherd-graph): Add #:backend parameter
and honor it.
(show-help, %options): Add "--graph-backend".
(%default-options): Add 'graph-backend'.
(process-action): Pass #:backend to 'export-extension-graph' and
'export-shepherd-graph'.
* doc/guix.texi (Invoking guix system): Document '--graph-backend'.
2021-01-04 23:54:15 +01:00
Rovanion Luckey
ad911c8321
doc: Running Guix Before It Is Installed: mention ./bootstrap
* doc/contributing.texi (Running Guix Before It Is Installed): Instruct
user to run ./bootstrap before ./configure.

Signed-off-by: Jakub Kądziołka <kuba@kadziolka.net>
2021-01-03 23:35:29 +01:00
Jonathan Brielmaier
b4db113641
services: Add radicale-service-type.
* gnu/services/mail.scm (radicale-configuration)
(radicale-configuration?): New procedures.
(%default-radicale-config-file)
(radicale-service-type): New variables.
* doc/guix.texi: Document it.
2020-12-27 19:32:09 +01:00
Ludovic Courtès
e38d90d497
transformations: Add '--with-patch'.
Suggested by Philippe Swartvagher <philippe.swartvagher@inria.fr>.

* guix/transformations.scm (transform-package-patches): New procedure.
(%transformations): Add it as 'with-patch'.
(%transformation-options, show-transformation-options-help/detailed):
Add '--with-patch'.
* tests/transformations.scm ("options->transformation, with-patch"): New
test.
* doc/guix.texi (Package Transformation Options): Document it.
2020-12-27 17:23:40 +01:00
Ludovic Courtès
7624ebbae3
ssh: Use 'guix repl' instead of 'guile'.
This simplifies setup of build machines: no need to install Guile in
addition to Guix, no need to set 'GUILE_LOAD_PATH' & co., leading to
fewer failure modes.

* guix/ssh.scm (remote-run): New procedure.
(remote-daemon-channel): Use it instead of 'open-remote-pipe*'.
(store-import-channel)[import]: Remove check for module availability.
Add call to 'primitive-exit'.
Use 'remote-run' instead of 'open-remote-pipe'.
(store-export-channel)[export]: Remove check for module availability.
Add calls to 'primitive-exit'.
Use 'remote-run' instead of 'open-remote-pipe'.
(handle-import/export-channel-error): Remove 'module-error' clause.
(report-module-error): Remove.
* guix/scripts/offload.scm (assert-node-has-guix): Replace call to
'report-module-error' by 'leave'.
* doc/guix.texi (Daemon Offload Setup): Remove mention of Guile.
2020-12-23 16:03:32 +01:00
Pierre Neidhardt
af67e8d0b1
doc: cookbook: Fix "fiction-less" typo.
* doc/guix-cookbook.texi (Guix Profiles in Practice): Change "friction-less"
to "frictionless".
2020-12-23 11:45:06 +01:00
Ricardo Wurmus
5f5e3873d7
import/cran: Add input style "specification".
* guix/import/cran.scm (%input-style): New parameter.
(format-inputs): Use it.
* guix/scripts/import/cran.scm (guix-import-cran): Set the %input-style
parameter.
 (%options): Add "--style" option.
* doc/guix.texi (Invoking guix import): Document it.
2020-12-22 14:18:34 +01:00
Nicolas Goaziou
eea7cc3185
doc: Emacs Packages: Fix typos.
* doc/contributing.texi (Emacs Packages): Fix typo. Also remove spurious white
space, and unnecessary quote.
2020-12-17 10:01:47 +01:00
Maxim Cournoyer
15fba3b13d
doc: Add Emacs packaging guidelines.
* doc/contributing.texi (Emacs Packages): New subsection.
2020-12-17 00:51:49 -05:00
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
Christopher Baines
ff01206345
Merge remote-tracking branch 'origin/master' into core-updates 2020-11-29 17:34:18 +00: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
Ludovic Courtès
55d095c653
utils: Add #:keep-permissions? parameter to 'copy-recursively'.
* guix/build/utils.scm (copy-recursively): Add #:keep-permissions? and
honor it.
* doc/guix.texi (Build Utilities): Adjust accordingly.
2020-11-19 22:36:03 +01:00
Ludovic Courtès
edbd8f3f7e
utils: Add #:copy-file parameter to 'copy-recursively'.
* guix/build/utils.scm (copy-recursively): Add #:copy-file and honor it.
* doc/guix.texi (Build Utilities): Adjust accordingly.
2020-11-19 22:36:03 +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
Ludovic Courtès
39befb6261
doc: Document 'url-fetch', 'git-fetch', and 'git-reference'.
* doc/guix.texi (origin Reference): Rewrite initial paragraph.  Properly
document 'method' and its protocol.  Document 'url-fetch', 'git-fetch',
and 'git-reference' separately.
2020-10-20 01:07:46 +02:00
Reza Alizadeh Majd
764d896668
services: Add LXQt desktop service.
* gnu/services/desktop.scm (lxqt-desktop-service-type): New variable.
(<lxqt-desktop-configuration>): New record type.
(lxqt-desktop-configuration?): New procedure.
* doc/guix.texi (Desktop Services): Document this.

Co-authored-by: Oleg Pykhalov <go.wigust@gmail.com>
2020-10-20 00:21:45 +03:00
Maxim Cournoyer
5800d2aae2
maint: update-guix-package: Prevent accidentally breaking guix pull.
Fixes <https://issues.guix.gnu.org/43893>.

This changes the 'update-guix-package' tool so that it:

1. Always uses a clean checkout to compute the hash of the updated 'guix'
package.
2. Ensures the commit used in the updated 'guix' package definition has already
been pushed upstream.

* build-aux/update-guix-package.scm (%savannah-guix-git-repo-push-url): New
variable.
(with-input-pipe-to-string, with-temporary-git-worktree): New syntaxes.
(find-origin-remote, git-add-worktree): New procedures.
(commit-already-pushed?): New predicate.
(main): Check the commit used has already been pushed upstream and compute the
hash from a clean checkout.
* doc/contributing.texi (Updating the Guix Package): Document it.
* .dir-locals.el (scheme-mode): Fix indentation of with-temporary-git-worktree.
2020-10-19 14:02:53 -04:00
Maxim Cournoyer
5e2140511c
Merge branch 'staging'
Conflicts:
	gnu/packages/admin.scm
	gnu/packages/commencement.scm
	gnu/packages/gdb.scm
	gnu/packages/llvm.scm
	gnu/packages/package-management.scm
	gnu/packages/tls.scm
2020-10-19 13:11:40 -04:00
Ludovic Courtès
d66a4eac44
doc: Produce stylable HTML for @deftp, @deffn, etc.
'makeinfo --help' uses <strong> and <em> for those entries.  Replace
that with CSS classes.

* doc/build.scm (html-manual-identifier-index)[build]: Adjust to handle
rewritten forms of <dt> entries.
* doc/build.scm (syntax-highlighted-html)[build][syntax-highlight]:
Handle <dt> forms and replace them.
[highlight-definition, space?]: New procedures.
2020-10-19 13:28:38 +02:00
Marius Bakke
1a8f7a0f58
Merge branch 'master' into staging 2020-10-19 00:17:48 +02:00
Aniket Patil
62fc3e375c
doc: Fix typo.
* doc/guix.texi (Invoking guix import): Fix typo.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2020-10-17 22:40:18 +02:00
Ludovic Courtès
f54149062e
doc: cookbook: Balance parens in custom kernel examples.
* doc/guix-cookbook.texi (Customizing the Kernel): Add missing paren in
example.  Remove extra parens in other example.
2020-10-17 22:40:18 +02:00
Ludovic Courtès
97ce30cc1b
doc: Generate cross-references in code snippets to the Guile manual.
Occurrences of 'list', 'cons', etc. in code snippets now link to the
relevant section of the Guile manual.

* doc/build.scm (guile-manual, %guile-manual-base-url)
(guile-mono-node-indexes, guile-split-node-indexes): New variables.
(for-all-languages, merge-index-alists): New procedures.
<top level>: Rename 'mono-node-indexes' and 'split-node-indexes' to
'guix-mono-node-indexes' and 'guix-split-node-indexes' respectively.
Add 'mono-node-indexes' and 'split-node-indexes' defined as calls to
'merge-index-alists'.
2020-10-17 22:40:17 +02:00
Ludovic Courtès
db1d445357
doc: Allow code snippets in the cookbook to link to the manual.
Until now, only code snippets in the manual itself would contain links
to identifier definitions.  Now snippets in the cookbook also link to
definitions in the manual.

* doc/build.scm (html-manual): Add #:mono-node-indexes and #:multi-node-indexes
and pass it to 'syntax-highlighted-html'.
(pdf+html-manual): Likewise, and pass it to 'html-manual'.
<top level>: Factorize 'version' and 'source'.  Define 'guix-manual',
'mono-node-indexes', and 'split-node-indexes'.  Pass #:mono-node-indexes
and #:split-node-indexes to 'pdf+html-manual'.
2020-10-17 22:40:17 +02:00
Ludovic Courtès
0f7d0743ed
doc: Move manual index creation to a separate derivation.
* doc/build.scm (normalize-language-code, html-manual-identifier-index):
New procedures.
(syntax-highlighted-html): Add #:mono-node-indexes and #:split-node-indexes.
[build](underscore-decode, anchor-id->key, collect-anchors): Remove.
(language+node-anchors, mono-node-anchors, multi-node-anchors): New
variables.
Use them.
2020-10-17 22:40:17 +02:00
Ludovic Courtès
3cd1a7ac51
doc: Remove 'build.scm' from the source of the manual.
That way we no longer have to rebuild the whole manual when fiddling
with 'build.scm'.

* doc/build.scm <top level>: Define 'select?' and pass it to
'pdf+html-manual'.
2020-10-17 22:40:17 +02:00
Miguel Ángel Arruga Vivas
c2a382e510
doc: Fixes for Texinfo metainfo.
* doc/guix.texi (guix-pack)[GUIX_EXECUTION_ENGINE]: Use @env
instead of @code.
(zram-device-service-type): Use @code instead of @var for constant or
symbolic values.
(rshiny-service-type): Use @env instead of @code for R_LIBS_USER.
2020-10-17 15:32:53 +02:00
Miguel Ángel Arruga Vivas
3483e6444d
doc: Fix minor typos.
* doc/guix.texi (cargo-build-system): Fix install phase description.
(julia-build-system): Fix typo and add information from check.
(pulseaudio-configuration): Remove duplicated words.
(knot-acl-configuration)[id]: Fix typo.
(mpd-output)[extra-options]: Likewise.
(libvirt-configuration) [listen-tls?]: Add missing subject.
[listen-tcp?]: Add missing subject and period.
[tls-port, tcp-port, log-filters]: Add missing period.
(hurd-vm-configuration)[netoptions]: Fix typo in example.
(ganeti-watcher-service-type): Fix typo.
(grub-theme)[gfxmode]: Remove see before @pxref.
2020-10-17 15:32:49 +02:00
Ludovic Courtès
c0001b8bfc
doc: cookbook: Clarify what keywords are.
* doc/guix-cookbook.texi (A Scheme Crash Course): Clarify what keywords
are.
2020-10-15 23:51:04 +02:00
Ludovic Courtès
699f1de721
doc: Improve "Build Utilities".
* doc/guix.texi (Build Utilities): Fix typos.  Provide the correct
syntax for 'substitute*'.  Add a 'modify-phases' example.
2020-10-15 23:51:04 +02:00
Ludovic Courtès
61263e1ba3
doc: Add "Build Utilities" section.
* doc/guix.texi (Build Utilities): New section.
(Defining Packages): Refer to it.
(Build Systems): Likewise.
* doc/guix-cookbook.texi (Extended example): Likewise.
2020-10-15 18:50:22 +02:00
Ludovic Courtès
48720afb32
doc: cookbook: Use @code for the identifiers of utility functions.
* doc/guix-cookbook.texi (Utility functions): Use @code instead of @asis.
2020-10-15 18:50:22 +02:00
Ludovic Courtès
3451368345
doc: cookbook: More "#true" and "#false".
* doc/guix-cookbook.texi (Extended example)
(Customizing the Kernel, Running Guix on a Linode Server): Use #true and #false.
2020-10-15 18:50:22 +02:00
Ludovic Courtès
51f34e21c6
doc: cookbook: Use @var for meta-syntactic variables.
* doc/guix-cookbook.texi (Extended example): Use @var for meta-syntactic
variables in 'modify-phases' description.
2020-10-15 18:50:22 +02:00
Ludovic Courtès
7802988201
doc: cookbook: Fix 'let' form in example.
* doc/guix-cookbook.texi (Extended example): Fix 'let' form in example.
2020-10-15 18:50:22 +02:00
Mathieu Othacehe
b4369430e3
doc: Fix typo.
* doc/guix.texi (Guix Build Coordinator): Fix typo.
2020-10-15 14:16:19 +02:00
Oleg Pykhalov
00014f7692
services: nginx: Add lua module.
* gnu/services/web.scm (<nginx-configuration>)
[lua-package-path, lua-package-cpath]: New record types.
* gnu/services/web.scm (default-nginx-config): Use them.
* doc/guix.texi (Web Services): Document this.
* doc/guix-cookbook.texi (System Configuration): Document this.
2020-10-14 23:41:26 +03:00
Ludovic Courtès
cd958802f2
doc: cookbook: Mention "#true" and "#false".
* doc/guix-cookbook.texi (A Scheme Crash Course): Mention "#true" and
"#false".
(Extended example): Likewise.
2020-10-14 15:22:56 +02:00
Ludovic Courtès
d96e739f08
doc: Mention "i586-gnu" as supported and experimental.
* doc/guix.texi (GNU Distribution): Mention "i586-gnu".
2020-10-14 15:22:55 +02:00
Ludovic Courtès
4b0a1543e1
doc: Avoid orphan node.
Commit 4b5a6fbc9b turned "Transparent
Emulation with QEMU" into a node, but that was an orphan node, with no
up/next/previous links.

* doc/guix.texi (Virtualization Services): Capitalize subsection title.
(Transparent Emulation with QEMU): Remove "@node" and add "@anchor".
(Daemon Offload Setup): Adjust cross-reference accordingly.
2020-10-14 15:22:55 +02:00
Marius Bakke
f7175626ff
Merge branch 'master' into staging 2020-10-13 23:39:27 +02:00
Ludovic Courtès
abd7a47461
guix build: Add '--with-c-toolchain'.
* guix/scripts/build.scm (package-dependents/spec)
(package-toolchain-rewriting, transform-package-toolchain): New procedures.
(%transformations): Add it.
(%transformation-options, show-transformation-options-help): Add
'--with-c-toolchain'.
* tests/scripts-build.scm (depends-on-toolchain?): New procedure.
("options->transformation, with-c-toolchain")
("options->transformation, with-c-toolchain twice")
New test.
("options->transformation, with-c-toolchain, no effect"): New tests.
* doc/guix.texi (Package Transformation Options): Document it.
2020-10-12 18:23:47 +02:00
Ludovic Courtès
46135ce4ce
packages: Add 'package-with-c-toolchain'.
* guix/build-system.scm (build-system-with-c-toolchain): New procedure.
* guix/packages.scm (package-with-c-toolchain): New procedure.
* tests/packages.scm ("package-with-c-toolchain"): New test.
* doc/guix.texi (package Reference): Document 'package-with-c-toolchain'.
(Build Systems): Mention it.
2020-10-12 18:23:47 +02:00
Maxim Cournoyer
5918cb5341
doc: Sync the client and daemon --rounds options documentation.
Fixes <https://issues.guix.gnu.org/40867>.

* doc/guix.texi (Common Build Options): Suggest using '--keep-failed' to keep
differing build results in the store rather than 'guix archive'.

Reported-by: Jonathan Brielmaier <jonathan.brielmaier@web.de>
2020-10-09 16:57:14 -04:00
Efraim Flashner
9c1b8390ba
doc: Document missing openssh configure option.
* doc/guix.texi (Networking Services): Document configuration option to
specify the openssh package for the openssh-service-type.
2020-10-09 16:46:24 +03:00
Maxim Cournoyer
efbf5fdd01
offload: Improve load normalization and configurability.
Fixes <https://issues.guix.gnu.org/43773>.

The computed normalized load was previously obtained by dividing the load
average as found in /proc/loadavg by the number of parallel builds defined for
a build machine.

This normalized load didn't allow to compare machines with different number of
cores, as the load average reported by /proc/loadavg can be as high as the
number of cores; thus comparing that value to a fixed threshold of 2.0 would
mean machines with multiple cores were more likely to be flagged as overloaded
compared to single core machines.

This can be fixed by normalizing using the available number of cores instead
of the number of parallel jobs.

* guix/scripts/offload.scm (<build-machine>)[overload-threshold]: New field.
(node-load): Modify to return a normalized load value between 0 and 1, taking
into account the number of cores available.
(normalized-load): Remove procedure.
(report-load): New procedure.
(choose-build-machine): Adjust to use the modified 'node-load' and the new
'report-load' and 'build-machine-overload-threshold' procedures.
(check-machine-status): Adjust.
* doc/guix.texi (Daemon Offload Setup): Document the offload scheduler and the
new 'overload-threshold' field.
2020-10-08 10:57:12 -04:00
Ludovic Courtès
9022861dc0
doc: Clarify that guix-daemon doesn't have to be launched from the checkout.
Suggested by Emmanuel Agullo.

* doc/contributing.texi (Running Guix Before It Is Installed): Move the
"./pre-inst-env guix-daemon" snippet at the bottom.  Make it clear that
it's necessary only when hacking on guix-daemon or when guix-daemon is
not already running.
2020-10-08 12:26:56 +02:00
Ludovic Courtès
6f406e5d15
doc: Developers don't need to run "make install" in Guix.
Suggested by Emmanuel Agullo.

* doc/contributing.texi (Building from Git): Mention that running "make
install" is unnecessary.
2020-10-08 12:26:56 +02:00
Ludovic Courtès
e463ee4c7b
doc: Improve choice of options in service examples.
* doc/guix.texi (Using the Configuration System): In example, set
'substitute-urls' rather than 'use-substitutes?', and set 'auto-login'
for 'mingetty-configuration'.
(Service Types and Services): In example, show 'extra-options' rather
than 'use-substitutes?'.
2020-10-08 12:26:56 +02:00
Danny Milosavljevic
34d1c0a03b
services: dnsmasq: Add TFTP configuration fields.
* gnu/services/dns.scm (<dnsmasq-configuration>): Add TFTP configuration
fields.
(dnsmasq-shepherd-service): Use them.
* doc/guix.texi (DNS Services): Document them.
2020-10-06 08:13:39 +02:00
Christopher Baines
c14714cbbf
services: guix: Add guix-build-coordinator-queue-builds-service-type.
* gnu/services/guix.scm (<guix-build-coordinator-queue-builds-configuration>):
New record type.
(guix-build-coordinator-queue-builds-configuration,
guix-build-coordinator-queue-builds-configuration?,
guix-build-coordinator-queue-builds-configuration-package,
guix-build-coordinator-queue-builds-configuration-user,
guix-build-coordinator-queue-builds-coordinator,
guix-build-coordinator-queue-builds-configuration-systems,
guix-build-coordinator-queue-builds-configuration-system-and-targets,
guix-build-coordinator-queue-builds-configuration-guix-data-service,
guix-build-coordinator-queue-builds-configuration-processed-commits-file,
guix-build-coordinator-queue-builds-shepherd-services,
guix-build-coordinator-queue-builds-activation,
guix-build-coordinator-queue-builds-account): New procedures.
(guix-build-coordinator-queue-builds-service-type): New variable.
* doc/guix.texi (Guix Services): Document it.
2020-10-05 18:10:48 +01:00
Christopher Baines
98ab323a24
services: guix: Add guix-build-coordinator-agent-service-type.
* gnu/services/guix.scm (<guix-build-coordinator-agent-configuration>): New
record type.
(guix-build-coordinator-agent-configuration,
guix-build-coordinator-agent-configuration?,
guix-build-coordinator-agent-configuration-package,
guix-build-coordinator-agent-configuration-user,
guix-build-coordinator-agent-configuration-coordinator,
guix-build-coordinator-agent-configuration-uuid),
guix-build-coordinator-agent-configuration-password,
guix-build-coordinator-agent-configuration-password-file,
guix-build-coordinator-agent-configuration-systems,
guix-build-coordinator-agent-configuration-max-parallel-builds,
guix-build-coordinator-agent-configuration-derivation-substitute-urls,
guix-build-coordinator-agent-configuration-non-derivation-substitute-urls,
guix-build-coordinator-agent-shepherd-services,
guix-build-coordinator-agent-activation,
guix-build-coordinator-agent-account): New procedures.
(guix-build-coordinator-agent-service-type): New variable.
* doc/guix.texi (Guix Services): Document it.
2020-10-05 18:10:48 +01:00
Christopher Baines
15955e9b54
services: guix: Add guix-build-coordinator-service-type.
* gnu/services/guix.scm (<guix-build-coordinator-configuration>): New record
type.
(guix-build-coordinator-configuration, guix-build-coordinator-configuration?,
guix-build-coordinator-configuration-package,
guix-build-coordinator-configuration-user,
guix-build-coordinator-configuration-group,
guix-build-coordinator-configuration-datastore-uri-string,
guix-build-coordinator-configuration-agent-communication-uri-string,
guix-build-coordinator-configuration-client-communication-uri-string,
guix-build-coordinator-configuration-allocation-strategy,
guix-build-coordinator-configuration-hooks,
guix-build-coordinator-configuration-guile,
make-guix-build-coordinator-start-script,
guix-build-coordinator-shepherd-services, guix-build-coordinator-activation,
guix-build-coordinator-account): New procedures.
(guix-build-coordinator-service-type): New variable.
* gnu/tests/guix.scm (%test-guix-build-coordinator): New variable.
* doc/guix.texi (Guix Services): Document it.
2020-10-05 18:10:48 +01:00
Guillaume Le Vaillant
87c079d9b5
Merge branch 'master' into staging 2020-10-05 14:17:25 +02:00
Ludovic Courtès
8e1907a724
guix package: Re-apply package transformation when upgrading.
* guix/scripts/package.scm (transaction-upgrade-entry)[upgrade]: Add
'transform' parameter.  Pass PKG through it.  Use
'manifest-entry-with-transformations'.
Call 'options->transformation' to get the transformation procedure.
* tests/guix-package.sh: Add 'guix package -u' test.
* tests/packages.scm ("transaction-upgrade-entry, transformation options preserved"):
New test.
* doc/guix.texi (Invoking guix package): Mention that transformations
are preserved across upgrades.
(Package Transformation Options): Likewise.
2020-10-02 23:28:09 +02:00
Florian Pelz
3c01fcc1bb
doc: Explain why '--without-tests' may fail with modified 'check' phase.
* doc/guix.texi (Package Transformation Options): Explain.
2020-10-02 20:03:55 +00:00
Oleg Pykhalov
da6aec32cf
gnu: Add webssh service.
* gnu/services/ssh.scm:
(<webssh-configuration>): New record type.
(%webssh-configuration-nginx, webssh-service-type): New variables.
(webssh-account, webssh-activation, webssh-shepherd-service): New procedures.
* doc/guix.texi: Document this.
2020-10-01 10:15:29 +03:00
Mathieu Othacehe
313f492657
scripts: system: Add support for image-type.
* guix/scripts/system.scm (list-image-types): New procedure,
(%options): add "image-type" and "list-image-types" options, remove
"file-system-type" option,
(show-help): adapt accordingly,
(%default-options): also adapt, and set the default "image-type" to "raw",
(perform-action): add image-type argument and remove file-system-type argument,
(process-action):  adapt perform-action call,
(system-derivation-for-action): remove base-image
argument, add image-type argument, and use it to create the image passed to
"system-image".
* tests/guix-system.sh: Adapt accordingly and add a test for
"--list-image-types" command.
* doc/guix.texi (Building the Installation Image,
Invoking guix system): Adapt accordingly.

Signed-off-by: Mathieu Othacehe <othacehe@gnu.org>
2020-09-30 10:47:59 +02:00
Ludovic Courtès
37283f9f3e
services: hurd-vm: Initialize the guest's SSH/Guix keys at activation time.
* gnu/services/virtualization.scm (initialize-hurd-vm-substitutes)
(hurd-vm-activation): New procedures.
(hurd-vm-service-type)[extensions]: Add ACTIVATION-SERVICE-TYPE
extension.
* doc/guix.texi (Transparent Emulation with QEMU): Mention GNU/Hurd.
(The Hurd in a Virtual Machine): Explain which files are automatically
installed and mention offloading.
2020-09-29 21:56:27 +02:00
Ludovic Courtès
d367a7f3d0
services: guix: Generate key pair if needed during activation.
* gnu/services/base.scm (guix-activation): Invoke "guix archive
--generate-key".
* doc/guix.texi (Invoking guix archive)
(Invoking guix deploy): Mention that 'guix-service-type' takes care of
generating the key pair.
2020-09-29 21:56:27 +02:00
Tobias Geerinckx-Rice
4c698cd512
services: Add elogind ‘handle-lid-switch-external-power’.
* gnu/services/desktop.scm <elogind-configuration>: Add an
handle-lid-switch-external-power field, mapping to the
HandleLidSwitchExternalPower logind.conf setting.
* doc/guix.texi (Desktop Services): ‘Document’ it.
2020-09-28 16:00:49 +02:00
Ludovic Courtès
09ffacd455
doc: Clarify how to choose a user account shell.
* doc/guix.texi (User Accounts): Add example with custom shell and
custom home directory.  Add examples of shell gexps.
2020-09-28 11:43:47 +02:00
Ludovic Courtès
8e2d5a0c0d
doc: Move channel @cindex within their nodes.
* doc/guix.texi (Channels): Move @cindex at the beginning of the node
they refer to from the end of the previous node.
2020-09-27 22:42:40 +02:00
Ludovic Courtès
3b7bd8cc90
doc: Move "Primary URL" after "Specifying Channel Authorizations".
* doc/guix.texi (Primary URL): Move after "Specifying Channel
Authorizations" since the audience is channel authors who've already
taken care of authorizations.
2020-09-27 22:39:49 +02:00
zimoun
12871cc8db
doc: Promote "Channels" as chapter and reorder.
The sectioning becomes:

1.  Specifying Additional Channels     (was 3.)
2.  Using a Custom Guix Channel        (was 2.)
3.  Replicating Guix                   (was 9.)
4.  Channel Authentication             (was 1.)
5.  Primary URL                        (was 7.)
6.  Creating a Channel                 (reworded)
7.  Package Modules in a Sub-directory (was 5.)
8.  Declaring Channel Dependencies     (was 4.)
9.  Specifying Channel Authorizations  (was 6.)
10. Writing Channel News               (was 8.)

* doc/guix.texi (Channels): Move section to chapter.
Reorder the chapter.
Minor tweaks to keep uniformity.
Update the master menu.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2020-09-27 22:35:03 +02:00
zimoun
fa18db48ae
doc: Update the master menu.
* doc/guix.texi: Update the master menu.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2020-09-27 22:34:55 +02:00
Ludovic Courtès
8819551c8d
packages: 'package-input-rewriting' has a #:deep? parameter.
* guix/packages.scm (package-input-rewriting): Add #:deep? and pass it
to 'package-mapping'.
[replacement-property]: New variable.
[rewrite]: Check it.
[cut?]: New procedure.
* tests/packages.scm ("package-input-rewriting"): Pass #:deep? #f and
ensure implicit inputs were not rewritten.  Avoid 'eq?' comparisons.
("package-input-rewriting, deep"): New test.
* gnu/packages/guile.scm (package-for-guile-2.0, package-for-guile-3.0):
Pass #:deep? #f.
2020-09-27 21:41:15 +02:00
Ludovic Courtès
2bf6f962b9
packages: 'package-input-rewriting/spec' can rewrite implicit dependencies.
With this change, '--with-input', '--with-graft', etc. also apply to
implicit dependencies.  Thus, it's now possible to do:

  guix build python-itsdangerous --with-input=python-wrapper=python@2

or:

  guix build hello --with-graft=glibc=glibc@2.29

Additionally, before, implicit inputs were not rewritten, which could
lead to duplicates in the output of 'bag-transitive-inputs' (packages
that are not 'eq?' but lead to the same derivation).  This in turn would
lead to unnecessary rebuilds when using '--with-input' & co.  This
change fixes it by ensuring even implicit inputs are rewritten.

Fixes <https://bugs.gnu.org/42156>.

* guix/packages.scm (package-input-rewriting/spec): Add #:deep?
defaulting to #true, and pass it to 'package-mapping'.
[replacement-property]: New variable.
[rewrite]: Check that property and set it on the result of PROC.
[cut?]: New procedure.
* tests/packages.scm ("package-input-rewriting/spec"): Ensure implicit
inputs were unchanged.
("package-input-rewriting/spec, partial match"): Pass #:deep? #f.
("package-input-rewriting/spec, deep")
("package-input-rewriting/spec, no duplicates"): New tests.
(package/inherit): Move before use.
* tests/guix-build.sh: Add tests.
* tests/scripts-build.scm ("options->transformation, with-graft"):
Compare dependencies by package name or derivation file name.
* doc/guix.texi (Defining Packages): Adjust accordingly.
2020-09-27 21:41:08 +02:00
Ludovic Courtès
ff39361c80
packages: 'package-mapping' can recurse on implicit inputs.
* guix/packages.scm (build-system-with-package-mapping): New procedure.
(package-mapping): Add #:deep? and honor it.
* tests/packages.scm ("package-mapping"): Compare the direct inputs of
the bag of P0 and that of P1.
("package-mapping, deep"): New test.
2020-09-27 21:41:05 +02:00
Ludovic Courtès
f458cfbcc5
guix build: Add '--without-tests'.
* guix/scripts/build.scm (transform-package-tests): New procedure.
(%transformations, %transformation-options)
show-transformation-options-help): Add it.
* tests/scripts-build.scm ("options->transformation, without-tests"):
New test.
* doc/guix.texi (Package Transformation Options): Document it.
2020-09-27 21:32:09 +02:00
Stefan
740fd97ebe
doc: Document new bootloader grub-efi-netboot-bootloader.
* doc/guix.texi (Bootloader Configuration)[bootloader]: Add
grub-efi-netboot-bootloader.
[target]: Document TFTP root directory for grub-efi-netboot-bootloader.

Signed-off-by: Danny Milosavljevic <dannym@scratchpost.org>
2020-09-27 13:39:28 +02:00
Ludovic Courtès
a0d4aa2457
doc: Use @var for meta-syntactic variables.
* doc/guix.texi (Transparent Emulation with QEMU): Use @var instead of
angle brackets for meta-syntactic variables.
2020-09-25 23:26:22 +02:00
Ludovic Courtès
e71d7b5e23
doc: Remove "--hda" from non-volatile childhurd example.
Reported by Andreas Enge.

* doc/guix.texi (Transparent Emulation with QEMU): Remove "--hda" in
'image' example.
2020-09-25 23:26:22 +02:00
Ludovic Courtès
13a2272d1a
doc: Explain how to connect to a childhurd.
* doc/guix.texi (The Hurd in a Virtual Machine): Add instructions for
VNC and SSH access.  Mention childhurd secrets and /etc/childhurd.
2020-09-25 23:26:22 +02:00
André Batista
fd67774d27
doc: Fix outdated info and add missing space.
* doc/guix.texi (Messaging Services): Fix outdated info and add
missing space.

Signed-off-by: Mathieu Othacehe <othacehe@gnu.org>
2020-09-25 14:07:06 +02:00
Marius Bakke
d48b17adb9
services: WPA Supplicant: Conditionally depend on D-Bus.
Fixes <https://bugs.gnu.org/43567>.
Reported by calcium <calcium@disroot.org>.

* gnu/services/networking.scm (<wpa-supplicant-configuration>)[requirement]:
Remove 'dbus-system.
(wpa-supplicant-shepherd-service)[requirement]: Add 'dbus-system when DBUS? is true.
* doc/guix.texi (Networking Services)[wpa-supplicant-service-type]: Adjust
accordingly.
2020-09-24 20:18:20 +02:00
Guillaume Le Vaillant
de96ed11ef
doc: Update documentation for asdf-build-system.
* doc/guix.texi (Build Systems): Adapt the documentation of asd-build-system
  to the replacement of '#:asd-file' and '#:asd-system-name' by '#:asd-files'
  and '#:asd-systems'. Remove paragraph about one package per ASDF system.
2020-09-24 19:11:33 +02:00
Mathieu Othacehe
80e26d7429
services: cuirass: Add web SQL queries logging support.
* gnu/services/cuirass.scm (<cuirass-configuration>)[web-queries-log-file]:
New field.
(cuirass-shepherd-service): Honor it.
(cuirass-log-rotations): If defined, add the web queries log file to the log
rotation.
2020-09-24 11:28:59 +02:00
Mathieu Othacehe
92e507c963
services: cuirass: Add SQL queries logging support.
* gnu/services/cuirass.scm (<cuirass-configuration>)[queries-log-file]: New
field.
(cuirass-shepherd-service): Honor it.
(cuirass-log-rotations): If defined, add the queries log file to the log
rotation.
2020-09-24 10:47:22 +02:00
Ludovic Courtès
9b65281de5
environment: '--link-profile' uses ~/.guix-profile for environment variables.
Before this patch, we had:

  $ guix environment -CP --ad-hoc coreutils
  [env]$ echo $PATH
  /gnu/store/…-profile/bin
  [env]$ echo $GUIX_ENVIRONMENT
  /gnu/store/…-profile

After this patch:

  $ guix environment -CP --ad-hoc coreutils
  [env]$ echo $PATH
  /home/ludo/.guix-profile/bin
  [env]$ echo $GUIX_ENVIRONMENT
  /home/ludo/.guix-profile

* guix/scripts/environment.scm (launch-environment/container): When
LINK-PROFILE? is true, pass ~/.guix-profile as the second argument to
'launch-environment'.
* tests/guix-environment-container.sh: Adjust test accordingly.
* doc/guix.texi (Invoking guix environment): Update accordingly.
2020-09-21 23:05:38 +02:00
Greg Hogan
aa9ba865de
doc: Fix broken hyperlinks in the contribution instructions.
* doc/contributing.texi (Packaging Guidelines, Submitting Patches):
Change URLs from relative to absolute links.
2020-09-18 14:33:17 -04:00
Florian Pelz
125fc37e5f
doc: Clarify what propagated inputs are.
Fixes <https://bugs.gnu.org/26170>.

* doc/guix.texi (package Reference)[package-propagated-inputs]: Clarify.
2020-09-18 09:03:38 +00:00
Oleg Pykhalov
f6dfe42129
services: docker: Fix service definition.
This commit follows a404716d41.

* gnu/services/docker.scm
(docker-configuration)[docker-cli]: New record field.
(docker-service-type): Use this.
* doc/guix.texi (Miscellaneous Services)[Docker Service]: Document this.
2020-09-15 01:10:55 +03:00
Maxim Cournoyer
fa8fe90edb
Merge remote-tracking branch 'origin/master' into core-updates 2020-09-14 16:17:19 -04:00
Efraim Flashner
ef7381f463
doc: Fix docker configuration options.
* doc/guix.texi (Docker Service): Fix typo in enable-proxy? default.
2020-09-14 17:21:12 +03:00
Timotej Lazar
11a962e653
services: certbot: Support registration without email.
* gnu/services/certbot.scm (certbot-configuration): Add default for the
email option.
(certbot-command): Pass email for registration only when specified.
* doc/guix.texi (Certificate Services): "mandatory"→"optional" email.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2020-09-13 23:34:23 +02:00
Maxim Cournoyer
71e746cc63
doc: Document the use of snippets vs phases.
* doc/contributing.texi (Snippets versus phases): New section.
2020-09-12 02:01:35 -04:00
Tobias Geerinckx-Rice
d9d88c2ff0
Revert "services: dovecot: Use modules via symlink to system profile."
This reverts commit bcfe0f0c1e for now.

It breaks most current use(r)s of the Dovecot service and needs to be
combined with an extra modules configuration field of some kind.

See <https://issues.guix.gnu.org/43347>.
2020-09-11 22:38:08 +02:00
Ludovic Courtès
7a68d3ccad
doc: Distinguish the "nar bundle" format from "nar".
* doc/guix.texi (Invoking guix archive): Introduce the term "nar bundle"
and clarify what the output of "guix archive --export" really is.
* guix/nar.scm (restore-one-item, restore-file-set): Use the term "nar
bundle" in docstrings.
2020-09-11 17:53:58 +02:00
Jelle Licht
bba0533115
services: php-fpm: Add 'php-ini-file' configuration.
* gnu/services/web.scm: (<php-fpm-configuration>)[php-ini-file]: New record field.
(php-fpm-shepherd-service): Use it.
* doc/guix.texi (Web Services): Document it.
2020-09-10 09:46:03 +02:00
Alexey Abramov
bcfe0f0c1e
services: dovecot: Use modules via symlink to system profile.
* gnu/services/mail.scm (%dovecot-activation): Link the location with multiple
plugins (dovecot-pigeonhole, etc), to a place where dovecot can find them.
* gnu/services/mail.scm (dovecot-configuration): Use the symlink.

Signed-off-by: Tobias Geerinckx-Rice <me@tobias.gr>
2020-09-09 20:37:07 +02:00
Joshua Branson
191e79dab2
doc: cookbook: Adding a section "Running Guix on a Linode Server"
* doc/guix-cookbook.texi (Running Guix on a Linode Server):
I added a section that explains how to run guix on a linode server.
Thanks Chris Webber!

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2020-09-09 09:28:12 +02:00
Ludovic Courtès
4678767a16
doc: Tweak .texi to avoid po4a-translate infinite loop.
* doc/guix.texi (Requirements): Keep @uref on one line as splitting it
would lead po4a-translate to enter an infinite loop.
2020-09-08 09:12:18 +02:00
Ludovic Courtès
b5eb901ab5
Remove (guix json) and require Guile-JSON 4.3.0+.
This is a followup to 4071879c86.

* guix/json.scm: Remove.
* Makefile.am (MODULES): Adjust accordingly.
* m4/guix.m4 (GUIX_CHECK_GUILE_JSON): Check for 'define-json-mapping'.
* doc/guix.texi (Requirements): Require Guile-JSON 4.3.0+.
* guix/ci.scm, guix/cve.scm, guix/import/cpan.scm,
guix/import/crate.scm, guix/swh.scm: Remove (guix json) import.
* guix/import/gem.scm, guix/import/pypi.scm: Likewise, and import (json).
* guix/self.scm (specification->package): Switch to GUILE-JSON-4.
* guix/git-download.scm (git-fetch): Likewise.
2020-09-08 00:47:35 +02:00
Ludovic Courtès
2fc8337a14
doc: Document 'file-system-label' and 'uuid'.
* doc/guix.texi (File Systems): Document 'file-system-label' and 'uuid'.
2020-09-04 11:29:51 +02:00
Ludovic Courtès
fe409700d8
doc: Syntax highlighting now handles @var within @lisp.
* doc/build.scm (syntax-highlighted-html)[build](concatenate-pieces):
Handle @var{name}.
2020-09-04 11:29:51 +02:00
Ludovic Courtès
720fd7320f
doc: Balance parens in R Shiny example.
* doc/guix.texi (Miscellaneous Services): Balance parens in R Shiny
example.
2020-09-04 11:29:51 +02:00
Ludovic Courtès
6a1788e13a
doc: Add "Getting Started" section.
* doc/guix.texi (Getting Started): New node.
(Binary Installation): Refer to it and to "Application Setup".
(After System Installation): Refer to "Getting Started".
(Features): Add introductory sentence.
2020-09-03 23:23:58 +02:00
Jan (janneke) Nieuwenhuizen
01cefb7a57
services: childhurd: Support installing secrets from the host.
* gnu/services/virtualization.scm (%hurd-vm-operating-system): Add
secret-service.
(hurd-vm-shepherd-service): Use it to install secrets.
* doc/guix.texi (The Hurd in a Virtual Machine): Document it.
2020-09-01 16:06:38 +02:00
Maxim Cournoyer
a02ad4592c
gexp: computed-file: Prevent mistakenly overriding default option values.
In order to do so, default to an empty options list, and expose options whose
default values are sensitive directly as keyword arguments.

* guix/gexp.scm (computed-file): Extract the LOCAL-BUILD? parameter from the
OPTIONS parameter to make it a stand-alone keyword argument.  Introduce an
OPTIONS* binding which is obtained by combining the LOCAL-BUILD? keyword and
its value with OPTIONS.
* doc/guix.texi (G-Expressions): Adjust doc.

Suggested-by: Ludovic Courtès <ludo@gnu.org>
2020-09-01 00:48:11 -04:00
Julien Lepiller
036f23f053
guix: system: Add `--label' option.
* guix/scripts/system.scm (%options): Add `--label'.
(system-derivation-for-action): Take a #:label key to set volume ID.
(perform-action): Take a #:label key.
(%default-options): Add default label value.
(process-action): Pass label value from command-line to perform-action.
* gnu/system/image.scm (image-with-label): New procedure.
2020-08-31 16:12:16 +02:00
Ludovic Courtès
b630840920
doc: Document the 'description' and 'default-value' of <service-type>.
* doc/guix.texi (Service Reference): Document the 'description' and
'default-value' fields of <service-type>.
2020-08-28 23:27:53 +02:00
Joshua Branson
3e9c6ee19d
doc: Improve the instructions regarding guix git authenticate.
* doc/contributing.texi (Building from Git): Instruct the user to fetch
the 'keyring' branch. Fix a typo.

Signed-off-by: Leo Famulari <leo@famulari.name>
2020-08-27 16:04:12 -04:00
Mathieu Othacehe
17dddeeee5
Merge remote-tracking branch 'origin/master' into core-updates 2020-08-26 18:35:14 +02:00
Maxim Cournoyer
4b5a6fbc9b
offload: Modify the build-machine record to accept multiple systems.
* guix/scripts/offload.scm (<build-machine>)[systems]: New field.
[system]: Accessor changed to %build-machine-system.  Default to #f.
* guix/scripts/offload.scm (build-machine-system): Wrap %build-machine-system
with a deprecation warning.
(build-machine-systems): Access the new systems field or fallback to use
build-machine-system, for backward compatibility.
(machine-matches?): Adjust.
* tests/offload.scm: Add tests...
* Makefile.am (SCM_TESTS): ...and register them.
* doc/guix.texi (Daemon Offload Setup): Update doc.
2020-08-25 13:45:27 -04:00
Tobias Geerinckx-Rice
bff22b76f3
doc: Fix typo.
* doc/guix.texi (Virtualization Services): Fix typo.
2020-08-25 17:14:50 +02:00
Ludovic Courtès
0d203eeaa6
services: unattended-upgrade: Add 'operating-system-file' field.
* gnu/services/admin.scm (<unattended-upgrade-configuration>)[operating-system-file]:
New field.
(unattended-upgrade-mcron-jobs): Honor it.
* doc/guix.texi (Unattended Upgrades): Document it.
2020-08-24 23:23:57 +02:00
Mathieu Othacehe
4c0c65acfa
Use "guile-zlib" and "guile-lzlib" instead of (guix config).
* Makefile.am (MODULES): Remove guix/zlib.scm and guix/lzlib.scm,
(SCM_TESTS): remove tests/zlib.scm, tests/lzlib.scm.
* build-aux/build-self.scm (make-config.scm): Remove unused %libz variable.
* configure.ac: Remove LIBZ and LIBLZ variables and check instead for
Guile-zlib and Guile-lzlib.
* doc/guix.texi ("Requirements"): Remove zlib requirement and add Guile-zlib
and Guile-lzlib instead.
* gnu/packages/package-management.scm (guix)[native-inputs]: Add "guile-zlib"
and "guile-lzlib",
[inputs]: remove "zlib" and "lzlib",
[propagated-inputs]: ditto,
[arguments]: add "guile-zlib" and "guile-lzlib" to Guile load path.
* guix/config.scm.in (%libz, %liblz): Remove them.
* guix/lzlib.scm: Remove it.
* guix/man-db.scm: Use (zlib) instead of (guix zlib).
* guix/profiles.scm (manual-database): Do not stub (guix config) in imported
modules list, instead add "guile-zlib" to the extension list.
* guix/scripts/publish.scm: Use (zlib) instead of (guix zlib) and (lzlib)
instead of (guix lzlib),
(string->compression-type, effective-compression): do not check for zlib and
lzlib availability.
* guix/scripts/substitute.scm (%compression-methods): Do not check for lzlib
availability.
* guix/self.scm (specification->package): Add "guile-zlib" and "guile-lzlib"
and remove "zlib" and "lzlib",
(compiled-guix): remove "zlib" and "lzlib" arguments and add guile-zlib and
guile-lzlib to the dependencies, also do not pass "zlib" and "lzlib" to
"make-config.scm" procedure,
(make-config.scm): remove "zlib" and "lzlib" arguments as well as %libz and
%liblz variables.
* guix/utils.scm (lzip-port): Use (lzlib) instead of (guix lzlib) and do not
check for lzlib availability.
* guix/zlib.scm: Remove it.
* m4/guix.m4 (GUIX_LIBZ_LIBDIR, GUIX_LIBLZ_FILE_NAME): Remove them.
* tests/lzlib.scm: Use (zlib) instead of (guix zlib) and (lzlib)
instead of (guix lzlib), and do not check for zlib and lzlib availability.
* tests/publish.scm: Ditto.
* tests/substitute.scm: Do not check for lzlib availability.
* tests/utils.scm: Ditto.
* tests/zlib.scm: Remove it.
2020-08-24 13:35:24 +02:00
Oleg Pykhalov
d0fc1e832c
doc: cookbook: Add chapter about Guix environment.
* doc/guix-cookbook.texi (Environment management): New chapter.
2020-08-23 10:47:35 +03:00
Maxim Cournoyer
2a20c22dcf
doc: Fix a typo in the AutoSSH service documentation.
* doc/guix.texi (Networking Services)[autossh-configuration]: Fix typo.
2020-08-17 15:41:21 -04:00
Maxim Cournoyer
720a4adc91
system: Modify GDB skeleton to find debug files for any profile.
Instead of hard coding the debug directory to that of the user profile, use
Guile scripting in combination with a new search path specification on GDB to
specify the debug file directories.

* gnu/packages/gdb.scm (gdb-9.1): Add a search path specification for the
GDB_DEBUG_FILE_DIRECTORY environment variable.
* gnu/system/shadow.scm (default-skeletons)[gdbinit]: Derive the value of
DEBUG-FILE-DIRECTORY via the GDB_DEBUG_FILE_DIRECTORY environment variable.
* doc/guix.texi (Installing Debugging Files): Document it.
2020-08-16 15:26:26 -04:00
Alexey Abramov
2b68a96422
services: docker: Add 'enable-iptables?' argument.
* gnu/services/docker.scm (docker-configuration): Define the argument.
* gnu/services/docker.scm (docker-shepherd-service): Use it.
* doc/guix.texi (Docker Service): Document it.

Signed-off-by: Mathieu Othacehe <othacehe@gnu.org>
2020-08-16 11:07:50 +02:00
Tobias Geerinckx-Rice
6376cb34b1
doc: Fix a typo.
* doc/guix.texi (operating-system Reference): Fix a typo & sigh.

Reported by Jakub Kądziołka <kuba@kadziolka.net>.
2020-08-10 00:37:47 +02:00
Tobias Geerinckx-Rice
05e9709898
doc: Shrink width of deeply-indented code sample.
This follows up on commit 4cafdce210.

* doc/guix.texi (operating-system Reference): Shorten comments to fit
everything on an 80-character punch card.
2020-08-09 21:12:31 +02:00
Tobias Geerinckx-Rice
4cafdce210
doc: Explain how to select system package outputs.
* doc/guix.texi (operating-system Reference): Document that PACKAGES may
contain traces of tuples and give an example.
2020-08-09 19:40:06 +02:00
Tobias Geerinckx-Rice
3de419b957
doc: Fix typo.
* doc/guix.texi (operating-system Reference): Add missing ‘of’.
2020-08-09 19:40:06 +02:00
Ludovic Courtès
c471d4733f
doc: Document 'mount-may-fail?' field.
This is a followup to 7c27bd115b.

* doc/guix.texi (File Systems): Document 'mount-may-fail?'.
2020-08-03 17:14:54 +02:00
Efraim Flashner
587e0d911d
services: Add zram-device-service.
* gnu/services/linux.scm (<zram-device-configuration>): New record.
(zram-device-service-type): New variable.
* doc/guix.texi (Linux Services): Document it.
* tests/services/linux.scm (zram-swap-device-test): New tests.
2020-08-02 15:54:37 +03:00
Pierre Neidhardt
1f0a41e955
doc: Explain how to use psql with peer authentication.
* doc/guix.texi (Database Services): Add example of shell commands to use psql
as  system user.  Also add troubleshooting tip when service fails to start
because of incompatible cluster.
2020-08-01 11:54:41 +02:00
Tobias Geerinckx-Rice
cdc2e2bba9
doc: Extend tlp-service-type example.
* doc/guix.texi (Power Management Services): Demonstrate
tlp-configuration usage.

Suggested by rovanion on #guix.
2020-07-29 15:14:57 +02:00
Pierre Neidhardt
64e8f2ec2d
doc: Warn against using the .scm extension for the channel news file.
* doc/guix.texi (Writing Channel News): Explain the issue with using the .scm
extension and possible workarounds; fix the example to use the .txt extension instead.
2020-07-28 13:43:45 +02:00
Robin Green
73cb3e103f
services: auditd: Provide default configuration directory.
* gnu/services/auditd.scm (auditd.conf)
(%default-auditd-configuration-directory): New variables.
(<auditd-configuration>): Switch to 'define-record-type*'.
[configuration-directory]: New field.
(auditd-shepherd-service): Honor 'configuration-directory'.  Pass #:pid-file.
(auditd-service-type)[description]: Tweak.
[default-value]: Provide 'configuration-directory'.
* doc/guix.texi (Miscellaneous Services): Update docs to reflect
changes.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2020-07-27 12:06:36 +02:00
Ludovic Courtès
79501f26ab
services: Add 'unattended-upgrade-service-type'.
* gnu/services/admin.scm (<unattended-upgrade-configuration>): New
record type.
(%unattended-upgrade-log-file): New variable.
(unattended-upgrade-mcron-jobs, unattended-upgrade-log-rotations): New
procedures.
(unattended-upgrade-service-type): New variable.
* doc/guix.texi (Service Reference): Add 'provenance-service-type' anchor.
(Unattended Upgrades): New section.
2020-07-27 12:06:36 +02:00
Ludovic Courtès
a396dd01bc
machine: ssh: Check for potential system downgrades.
This is a followup to 8e31736b0a.

* guix/scripts/system/reconfigure.scm (check-forward-update): Add
 #:current-channels.  Use it instead of OLD.
* gnu/services.scm (sexp->system-provenance): New procedure.
(system-provenance): Use it.
* gnu/machine/ssh.scm (<machine-ssh-configuration>)[allow-downgrades?]:
New field.
(machine-check-forward-update): New procedure.
(check-deployment-sanity)[assertions]: Call it.
* doc/guix.texi (Invoking guix deploy): Document 'allow-downgrades?'
field.
2020-07-27 12:06:35 +02:00
Oleg Pykhalov
64c6282e7f
services: nix: Add extra-options.
* gnu/services/nix.scm (<nix-configuration>)[extra-options]: New field.
(nix-shepherd-service): Add this.
(nix-activation): Add new line to the end of /etc/nix/nix.conf file.
* doc/guix.texi (Miscellaneous Services)[Nix service]: Document this.
2020-07-25 12:27:35 +03:00
Ludovic Courtès
cb3bae900f
doc: Mention the channel keyring branch.
Reported by Pierre Neidhardt <mail@ambrevar.xyz>.

* doc/guix.texi (Channels): Mention the keyring branch and the
'keyring-reference' bit in '.guix-channel'.
2020-07-24 18:56:25 +02:00
Ludovic Courtès
9c7581a127
doc: Use an existing commit in channel example.
Suggested by zimoun <zimon.toutoune@gmail.com>.

* doc/guix.texi (Channels): Use the commit for 'v1.0.0' instead of a
non-existing commit in example.
2020-07-24 18:56:25 +02:00
Jakub Kądziołka
d726b954ba
Merge branch 'master' into core-updates
Conflicts:
	gnu/packages/ruby.scm
2020-07-23 21:43:06 +02:00
Ludovic Courtès
8e31736b0a
guix system: 'reconfigure' disallows downgrades by default.
This is similar to what 9744cc7b46 did for
'guix pull'.

* guix/scripts/system/reconfigure.scm (ensure-forward-reconfigure)
(warn-about-backward-reconfigure, channel-relations)
(check-forward-update): New procedures.
* guix/scripts/system.scm (perform-action): Add #:validate-reconfigure.
Call 'check-forward-update' when ACTION is 'reconfigure.
(%options, show-help): Add "--allow-downgrades".
(%default-options): Add 'validate-reconfigure' key.
(process-action): Pass #:validate-reconfigure to 'perform-action'.
* doc/guix.texi (Invoking guix system): Document 'guix system describe'
more prominently, and document '--allow-downgrades'.
2020-07-23 00:22:25 +02:00
Ludovic Courtès
9e0d896bf3
doc: Tweak mcron example.
* doc/guix.texi (Scheduled Job Execution): In example, move '%min-level'
definition after 'use-modules'.
2020-07-23 00:22:25 +02:00
Ludovic Courtès
63c799c1c5
doc: Recommend running 'guix git authenticate' when cloning the repo.
* doc/contributing.texi (Building from Git): Adjust instruction and
recommend 'guix git authenticate'.
2020-07-23 00:22:25 +02:00
Oleg Pykhalov
4656180d5d
services: nix: Fix sandbox.
* gnu/tests/package-management.scm: New file.
* gnu/local.mk: Add this.
* gnu/services/nix.scm (<nix-configuration>): New record.
(nix-activation): Generate Nix config file which fixes sandbox.
(nix-service-type): Add default value.
(nix-shepherd-service): Allow provide Nix package.
* doc/guix.texi (Miscellaneous Services)[Nix service]<nix-configuration>:
Document record.
2020-07-22 22:10:11 +03:00
Ludovic Courtès
ad5cb62d4a
doc: Mention the 'savannah' updater.
* doc/guix.texi (Invoking guix refresh): Mention 'savannah' updater.
2020-07-21 17:50:44 +02:00
Lars-Dominik Braun
e8088f0b06
ssh: Speed up RPCs by using #:nodelay.
Partly fixes <https://bugs.gnu.org/41702>.

* guix/ssh.scm (open-ssh-session): Enable #:nodelay.
* m4/guix.m4 (GUIX_CHECK_GUILE_SSH): Add feature check for this new parameter.
* doc/guix.texi (Requirements): Adjust.

Co-authored-by: Ludovic Courtès <ludo@gnu.org>
2020-07-20 23:25:09 +02:00
Marius Bakke
eccdd80e08
doc: Fix Ganeti blog post URL.
* doc/guix.texi (Virtualization Services): Adjust Ganeti blog post URL.
2020-07-19 14:23:16 +02:00
Marius Bakke
41daf12865
services: ganeti: Use TLS on the remote API by default.
* gnu/services/ganeti.scm (<ganeti-rapi-configuration>): Set SSL? to #t.
* gnu/tests/ganeti.scm (%ganeti-os): Set SSL? to #f.
* doc/guix.texi (Virtualization Services): Adjust accordingly.
2020-07-19 14:23:16 +02:00
Jakub Kądziołka
849f6e0ff9
build-system/python: Install to the python output if present.
* gnu/build/python-build-system.scm (python-output): New procedure.
  (site-packages, install): Use python-output to find the output path.
  (wrap, rename-pth-file): Use site-packages where appropriate.
* doc/guix.texi (Build Systems): Mention the new behavior.
2020-07-18 16:40:15 +02:00
Christopher Baines
22b3a95f6e
build-system/maven: Make default-maven-plugins a procedure.
This allows compiling the module without the (gnu packages maven) module being
available.

* guix/build-system/maven.scm (%default-maven-plugins): Rename to
default-maven-plugins, and convert to a procedure.
* doc/guix.texi (maven-build-system): Update.
2020-07-17 09:45:19 +01:00
Julien Lepiller
55b90c9053
guix: Add maven-build-system.
* guix/build-system/maven.scm: New file.
* guix/build/maven-build-system.scm: New file.
* Makefile.am (MODULES): Add them.
* doc/guix.texi (Build Systems): Document the maven build system.
2020-07-17 04:21:22 +02:00
Marius Bakke
0482ea07f9
doc: Small fixups for the Ganeti documentation.
* doc/guix.texi (Virtualization Services): Fix various inaccuracies and add
markup the procedure parameters.
2020-07-17 01:04:24 +02:00
Marius Bakke
9a62282755
services: Add ganeti.
* gnu/services/ganeti.scm, gnu/tests/ganeti.scm: New files.
* doc/guix.texi (Virtualization Services): Document the Ganeti services.
2020-07-16 21:51:44 +02:00
Ludovic Courtès
a98712785e
Add 'guix git authenticate'.
* guix/scripts/git.scm, guix/scripts/git/authenticate.scm,
tests/guix-git-authenticate.sh: New files.
* Makefile.am (MODULES): Add the *.scm files.
(SH_TESTS): Add 'tests/guix-git-authenticate.sh'.
* doc/guix.texi (Channels)[Specifying Channel Authorizations]: Mention
'guix git authenticate'.
(Invoking guix git authenticate): New node.
* po/guix/POTFILES.in: Add 'guix/scripts/git.scm' and
'guix/scripts/git/authenticate.scm'.
2020-07-11 12:33:01 +02:00
Tobias Geerinckx-Rice
4f4fb2151e
doc: Fix typo.
* doc/contributing.texi (The Perfect Setup): Fix spelling & placement of ‘additionally’.
2020-07-09 19:57:40 +02:00
Tobias Geerinckx-Rice
e892b9c3dc
doc: cookbook: Fix ‘file system’ spelling.
* doc/guix-cookbook.texi (Getting help, Customizing the Kernel):
Fix ‘file system’ spelling.
2020-07-09 19:57:39 +02:00
Arun Isaac
332f0a4685
doc: Fix texinfo identifiers in Version Control Services.
* doc/guix.texi (Version Control Services): Use @code, @command, @file,
@indicateurl, @samp texinfo identifiers correctly.
2020-07-06 21:21:32 +05:30
Arun Isaac
dffc82fa55
doc: Fix minor typo in X Window.
* doc/guix.texi (X Window): Replace "not" with "no".
2020-07-05 19:33:52 +05:30
Arun Isaac
60941b94e2
doc: Fix minor typo in Programming Interface.
* doc/guix.texi (Programming Interface): Replace "under a specific build
users" with "under specific build users".
2020-07-05 15:44:45 +05:30
Marius Bakke
4d06076714
services: wpa-supplicant: Support specifying additional service dependencies.
* gnu/services/networking.scm (<wpa-supplicant-configuration>)[requirement]:
New parameter.
(wpa-supplicant-shepherd-service): Use it instead of hard-coded list.
* doc/guix.texi (Networking Services): Document accordingly.
2020-07-02 23:20:51 +02:00
Ludovic Courtès
d774c7b121
channels: Dependencies listed in '.guix-channel' can have an introduction.
Suggested by Ricardo Wurmus and Simon Tournier.

* guix/channels.scm (sexp->channel-introduction): New procedure.
(read-channel-metadata): Use it.
(profile-channels)[sexp->channel-introduction]: Remove.
* tests/channels.scm ("latest-channel-instances, authenticate dependency"):
New test.
* doc/guix.texi (Channels)[Declaring Channel Dependencies]: Augment example.
2020-07-01 23:34:51 +02:00
Ludovic Courtès
6d39f0cb77
guix describe: Display channel introductions and add 'channels-sans-intro'.
* guix/scripts/describe.scm (%available-formats): Add "channels-sans-intro".
(channel->sexp): Add #:include-introduction?.  Emit CHANNEL's intro if
INCLUDE-INTRODUCTION? is true and CHANNEL has an introduction.
(channel->json): Include CHANNEL's introduction, if any.
(channel->recutils): Likewise.
(display-profile-info): Add 'channels-sans-intro' case.
* doc/guix.texi (Invoking guix describe): Add introduction in example.
Add 'channels-sans-intro' case.
2020-07-01 23:34:51 +02:00
Ludovic Courtès
8b7d982e6a
channels: Make channel introductions public.
* guix/channels.scm (<channel-introduction>): Rename constructor to
'%make-channel-introduction'.
(make-channel-introduction): New procedure.
* tests/channels.scm ("authenticate-channel, wrong first commit signer")
("authenticate-channel, .guix-authorizations"): Use
'make-channel-introduction' without '@@' and without third argument.
* doc/guix.texi (Channels)[Channel Authentication, Specifying Channel
Authorizations]: New subsections.
2020-07-01 23:34:51 +02:00
Ludovic Courtès
e3d2e618fe
doc: cookbook: Fix encoding of "André".
This is a followup to f8945734a5.

* doc/guix-cookbook.texi: Encode "André" as UTF-8, not ISO-8859-1.
2020-06-28 23:28:55 +02:00
Brice Waegeneire
e39b2363f5
doc: Add progress display in 'dd' command lines.
* doc/guix.texi (System Installation): Adjust 'dd' command line to
display progress …
(System Configuration): … same here.
2020-06-28 13:28:06 +02:00
André Batista
f8945734a5
doc: cookbook: Update entry about getting substitutes through Tor.
* doc/guix-cookbook.texi (Getting substitutes from Tor): Update
section warning to mention the use of torsocks when pulling.
2020-06-28 13:26:14 +02:00
Efraim Flashner
8f19e63f76
services: Add rshiny service.
* gnu/services/science.scm: New file.
(<rshiny-configuration>): New record.
(rshiny-shepherd-service-type): New variable.
* doc/guix.texi (Miscellaneous Services): Document it.
* gnu/local.mk (GNU_SYSTEM_MODULES): Add it.
2020-06-28 14:03:03 +03:00
Ludovic Courtès
5813a0c94f
doc: 'guix hash' is not SHA256-only.
This is a followup to 18ae1ec3ec.

* doc/guix.texi (Invoking guix hash): Remove "SHA256" from the first
paragraph.
2020-06-26 16:19:53 +02:00
Ludovic Courtès
4ebbd92c29
doc: cookbook: Fix typos.
* doc/guix-cookbook.texi (Extended example): Fix typos.
2020-06-23 23:39:42 +02:00
Ludovic Courtès
96a95aa9c7
doc: cookbook: Tweak intro to the REPL.
* doc/guix-cookbook.texi (A Scheme Crash Course): Reword first
paragraph.  Remove extra paren.
2020-06-23 00:03:08 +02:00
Ludovic Courtès
2f562699ea
doc: cookbook: Mention "guix hash -rx" for Git checkouts.
* doc/guix-cookbook.texi (Extended example): Mention "guix hash -rx ."
2020-06-23 00:03:08 +02:00
Ludovic Courtès
ab83e1f054
doc: cookbook: Clarify 'git-fetch' conventions.
* doc/guix-cookbook.texi (Extended example): Clarify use of 'git-file-name'
and 'git-version'.
2020-06-23 00:03:08 +02:00
Jan (janneke) Nieuwenhuizen
b7249aa472
services: childhurd: Support more than one instance.
* gnu/services/virtualization.scm (<hurd-vm-configuration>)[options]: Remove
"--hda" option.
[id,net-options]: New fields.
(hurd-vm-net-options): New procedure.  Parameterize port forwarding with ID.
* gnu/services/virtualization.scm (hurd-vm-shepherd-service): Use them.
Parameterize provision with ID, if set.  Hardcode "--hda" option for image.
* doc/guix.texi (Virtualization Services): Document new fields.  Update for
hardcoding of "--hda".
2020-06-21 12:51:36 +02:00
Ludovic Courtès
cdea526556
doc: Make issues.guix.gnu.org more visible.
* doc/contributing.texi (Tracking Bugs and Patches): Make
issues.guix.gnu.org more visible, update issue URL.
2020-06-20 13:18:11 +02:00
Timotej Lazar
7568416acb
doc: Delete description of a nonexistent option.
* doc/guix.texi (Invoking guix pull): Delete a paragraph about the --verbose
option, which was removed in 1edcfda81b.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2020-06-18 14:48:18 +02:00
Ludovic Courtès
4ae762af76
channels: Warn when pulling from a mirror.
* guix/channels.scm (<channel-metadata>)[url]: New field.
(read-channel-metadata): Initialize it.
(read-channel-metadata-from-source): Likewise.
(channel-instance-primary-url): New procedure.
(latest-channel-instances): Compare CHANNEL's URL against it.
* doc/guix.texi (Channels)[Primary URL]: New subsection.
2020-06-17 19:32:43 +02:00
Ludovic Courtès
a9eeeaa6ae
pull: Add '--disable-authentication'.
* guix/channels.scm (latest-channel-instance): Add #:authenticate? and
honor it.
(latest-channel-instances): Likewise.
* guix/scripts/pull.scm (%default-options): Add 'authenticate-channels?'.
(show-help, %options): Add '--disable-authentication'.
(guix-pull): Pass #:authenticate? to 'latest-channel-instances'.
* doc/guix.texi (Invoking guix pull): Document it.
2020-06-16 16:10:47 +02:00
Ludovic Courtès
43badf261f
channels: 'latest-channel-instance' authenticates Git checkouts.
Fixes <https://bugs.gnu.org/22883>.

* guix/channels.scm (<channel>)[introduction]: New field.
(<channel-introduction>): New record type.
(%guix-channel-introduction): New variable.
(%default-channels): Use it.
(<channel-metadata>)[keyring-reference]: New field.
(%default-keyring-reference): New variable.
(read-channel-metadata, read-channel-metadata-from-source): Initialize
the 'keyring-reference' field.
(commit-short-id, verify-introductory-commit)
(authenticate-channel): New procedures.
(latest-channel-instance): Call 'authenticate-channel' when CHANNEL has
an introduction.
* tests/channels.scm (gpg+git-available?, commit-id-string): New
procedures.
("authenticate-channel, wrong first commit signer"):
("authenticate-channel, .guix-authorizations"): New tests.
* doc/guix.texi (Invoking guix pull): Mention authentication.
2020-06-16 16:10:47 +02:00
Ludovic Courtès
33391ee5c1
doc: Recommend "make authenticate" after ./bootstrap.
* doc/contributing.texi (Building from Git): Move "make authenticate"
instructions below.
2020-06-16 16:10:46 +02:00
Tobias Geerinckx-Rice
38ee8f7dba
pack: Add zstd compressor.
* guix/scripts/pack.scm (%compressors): Add zstd.
* doc/guix.texi (Invoking guix pack): Document it.
2020-06-16 13:35:33 +02:00
Jan (janneke) Nieuwenhuizen
e07573432c
doc: Clarify 'hurd-vm' and 'childhurd' names.
Suggested by Maxim Cournoyer via IRC.

* doc/guix.texi (The Hurd in a Virtual Machine): Explicitly mention that
hurd-vm and childhurd are two names for this service.
2020-06-15 21:08:02 +02:00
Marius Bakke
bb9a99e657
doc: Adjust branching and rebuilding strategy to match reality.
The amount of packages has more than tripled since this section was written.
Adjust the rebuild limits and cycle lengths based on current practices.

* doc/contributing.texi (Submitting Patches): Increase 'staging' rebuild limit
to 1800 packages, and adjust the cycle to six weeks.  Increase 'core-updates'
cycle to six months.
2020-06-14 23:15:21 +02:00
Konrad Hinsen
c924e54139
guix repl: Add script execution.
* guix/scripts/repl.scm: Add filename options for script execution.
* doc/guix.texi (Invoking guix repl): Document it.
* tests/guix-repl.sh: Test it.
* Makefile.am: (SH_TESTS): Add it.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2020-06-14 23:02:36 +02:00
Jan (janneke) Nieuwenhuizen
5e9cf93364
services: Add 'hurd-vm service-type'.
* gnu/services/virtualization.scm (hurd-vm-shepherd-service,
hurd-vm-disk-image): New procedures.
(%hurd-vm-operating-system, hurd-vm-service-type): New variables.
(<hurd-vm-configuration>): New record type.
* doc/guix.texi (Virtualization Services): Document it.
* gnu/services/shepherd.scm (scm->go): Use let-system, remove FIXME.  Fixes
fixes cross-building of shepherd modules for the Hurd image.
2020-06-14 18:38:44 +02:00
Ludovic Courtès
993023a28e
lint: Add 'check-for-collisions' checker.
Suggested by Edouard Klein <edk@beaver-labs.com>.

* guix/profiles.scm (check-for-collisions): Export.
* guix/lint.scm (check-profile-collisions): New procedure.
(%local-checkers): Add 'profile-collisions' checker.
* tests/lint.scm ("profile-collisions: no warnings")
("profile-collisions: propagated inputs collide")
("profile-collisions: propagated inputs collide, store items"): New tests.
* doc/guix.texi (Invoking guix lint): Document it.
2020-06-14 15:34:42 +02:00
Ludovic Courtès
20d9034cc5
doc: Mention 'guix lint -c derivation'.
* doc/guix.texi (Invoking guix lint): Mention the 'derivation' checker.
2020-06-14 15:34:41 +02:00
Brice Waegeneire
1b5d26c967
doc: Add note to 'udisks-service'.
* doc/guix.texi (Desktop Services): Specify how to add file-systems
utilities to 'udisks-service'.
2020-06-09 10:26:56 +02:00
Jan (janneke) Nieuwenhuizen
7ccd471c71
services: Add `hurd-getty-service-type'.
* gnu/services/hurd.scm (<hurd-gettty-configuration>): New record.
(hurd-ttys-shepherd-service): New procedure.
(hurd-getty-service-type): New variable.
* doc/guix.texi (Hurd Services): Document it.
2020-06-08 14:26:14 +02:00
Jan (janneke) Nieuwenhuizen
f9c04580bf
services: Add `hurd-console-service-type'.
* gnu/services/hurd.scm: New file.
* gnu/local.mk (GNU_SYSTEM_MODULES): Add it.
* doc/guix.texi (Hurd Services): Document it.
2020-06-08 14:26:14 +02:00
Jan (janneke) Nieuwenhuizen
21acd8d6c1
bootloader: Extend `<menu-entry>' for multiboot.
* gnu/bootloader.scm (<menu-entry>)[multiboot-kernel,multiboot-arguments,
multiboot-modules]: New fields.
[linux,initrd]: Add default value '#f'.
(menu-entry->sexp, sexp->menu-entry): Support multiboot entry.
* doc/guix.texi (Bootloader Configuration): Document them.
2020-06-08 13:51:18 +02:00
Jan (janneke) Nieuwenhuizen
2018fb2afe
system: Add 'hurd' field to <operating-system>.
* gnu/system.scm (<operating-system>)[hurd]: New field.
* doc/guix.texi (operating-system Reference): Document 'hurd'.
2020-06-08 13:51:18 +02:00
Brice Waegeneire
c987b72382
doc: cookbook: Add entry about getting substitutes through Tor.
* doc/guix-cookbook.texi (Getting substitutes from Tor): New section.
2020-06-04 14:48:09 +02:00
Ludovic Courtès
b6c445931e
doc: Mention Btrfs compression.
Suggested by Pierre Neidhardt <mail@ambrevar.xyz>.

* doc/guix.texi (Keyboard Layout and Networking and Partitioning):
Mention Btrfs compression.
2020-06-03 18:05:55 +02:00
Maxim Cournoyer
7c9be7b7cb
gnu: services: docker: Add a debug? parameter.
* gnu/services/docker.scm (docker-configuration): Add a debug? field.
(containerd-shepherd-service): Pass the "--log-level=debug" argument when
DEBUG? is true.
(docker-shepherd-service): Pass the "--debug" and "--log-level=debug"
arguments when DEBUG? is true.
* doc/guix.texi (Miscellaneous Services): Update doc.
2020-06-03 11:31:07 -04:00
Marcin Karpezo
5c3e94cdf8
doc: cookbook: Add entry about Wireguard VPN.
Co-authored-by: Brice Waegeneire <brice@waegenei.re>

* doc/guix-cookbook.texi (Connect to Wireguard VPN): New section.
2020-06-02 11:31:48 +02:00
Maxim Cournoyer
c08fac0f7d
services: nfs: Expose configuration options for TCP and UDP.
* gnu/services/nfs.scm (<nfs-configuration>)[nfsd-tcp?, nfsd-udp?]: New
fields.
(nfs-shepherd-services)[rpc.nfsd]: Populate the --{no-,}tcp and --{no-,}udp
command line options based on the values of the nfsd-tcp? and nfsd-upd?
fields.
* doc/guix.texi (Network File System): Add doc.
2020-05-29 21:48:58 -04:00
Pierre Neidhardt
776409c506
doc: Add example to calculate the size a system.
* doc/guix.texi (Invoking `guix size'): Add guix size example for store item.
2020-05-29 18:48:44 +02:00
Efraim Flashner
03e6404936
doc: Remove explicit support for mips64el-linux.
It's been a good run, but no one is maintaining the architecture.
So long, and thanks for all the fish.

* doc/guix.texi (GNU Distribution): Change text for mips64el-linux
to denote it is deprecated.
(Daemon Offload Setup): Change occurrences of mips64el-linux to
aarch64-linux and adjust local code snippets.
(Guix Environment)[cross-compilation]: Change mips64el-linux-gnu to
aarch64-linux-gnu.
(GNU Build System)(package-cross-derivation]: Same.
(G-Expressions)[cross compilation]: Same.
(Additional Build Options)[cross-compilation, build logs]: Same.
(qemu-binfmt-service-type): Remove mips64el.
* doc/contributing.texi (Submitting Patches): Same.
* m4/guix.m4: (GUIX_ASSERT_SUPPORTED_SYSTEM): Remove mips64el-linux.
2020-05-28 11:12:40 +03:00
Julien Lepiller
f18d5d7597
doc: Use existing URLs and file names in installation instructions.
Some users are confused that these URLs and file names don't work, so
change them to the most popular architecture, while still mentioning
alternatives.

* doc/guix.texi (USB Stick and DVD Installation, Binary Installation): Use
x86_64-linux URLs by default.
2020-05-27 23:27:34 +02:00
Ludovic Courtès
8c23d7a15e
doc: Remove one use of 'file-append*'.
* doc/build.scm (texinfo-manual-source)[build]: Use 'file-append', not
'file-append*', for 'htmlxref.cnf', to ensure it has the right basename.
2020-05-25 23:00:30 +02:00
zimoun
ba2104aaa3
doc: Fix typos.
* doc/guix.texi: Fix typos.
* doc/contributing.texi: Fix typos.

Signed-off-by: Julien Lepiller <julien@lepiller.eu>
2020-05-25 14:46:03 +02:00
Ludovic Courtès
9744cc7b46
pull: Protect against downgrade attacks.
* guix/scripts/pull.scm (%default-options): Add 'validate-pull'.
(%options, show-help): Add '--allow-downgrades'.
(warn-about-backward-updates): New procedure.
(guix-pull): Pass #:current-channels and #:validate-pull to
'latest-channel-instances'.
* guix/channels.scm (ensure-forward-channel-update): Add hint for
when (channel-commit channel) is true.
* doc/guix.texi (Invoking guix pull): Document '--allow-downgrades'.
2020-05-25 00:00:28 +02:00
Chris Bøg
3142191da6
doc: cookbook: Add subsection about session locking with xss-lock.
* doc/guix-cookbook.texi (Session lock): New node.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2020-05-25 00:00:27 +02:00
Jan (janneke) Nieuwenhuizen
0cbb5390e4
doc: Update to the new 'grub-theme' procedure.
This is a follow-up commit to 9cdb10d52e:
gnu: grub: Allow a PNG image and replace "aspect-ratio" with "resolution".

* doc/guix.texi (Bootloader Configuration): Describe and use the 'grub-theme'
procedure instead of the removed '%default-theme' variable.
2020-05-24 22:36:19 +02:00
Jan Nieuwenhuizen
cd5d5f5322
doc: Update 'Bootstrapping' for further binary seed reduction.
* doc/images/gcc-core-mesboot0-graph.dot: New image, replacing
* doc/images/gcc-mesboot0-bag-graph.dot: ... remove file.
* doc/local.mk (DOT_FILES): Update for new image file.
* doc/guix.texi (Reduced Binary Seed Bootstrap): Use it in updated description
of further reduction of the trusted computing base.
2020-05-22 16:11:52 +02:00
Ludovic Courtès
ce0be5675b
packages: Introduce <content-hash> and use it in <origin>.
* guix/packages.scm (<content-hash>): New record type.
(define-content-hash-constructor, build-content-hash)
(content-hash): New macros.
(print-content-hash): New procedure.
(<origin>): Rename constructor to '%origin'.
[sha256]: Remove field.
[hash]: New field.  Adjust users.
(origin-compatibility-helper, origin): New macros.
(origin-sha256): New deprecated procedure.
(origin->derivation): Adjust accordingly.
* tests/packages.scm ("package-source-derivation, origin, sha512"): New
test.
* guix/tests.scm: Hide (gcrypt hash) 'sha256' for proper syntax
matching.
* tests/challenge.scm: Add #:prefix for (gcrypt hash) and adjust users.
* tests/derivations.scm: Likewise.
* tests/store.scm: Likewise.
* tests/graph.scm ("bag DAG, including origins"): Provide 'sha256' field
with the right length.
* gnu/packages/aspell.scm (aspell-dictionary)
(aspell-dict-ca, aspell-dict-it): Use 'hash' and 'content-hash' for
proper syntax matching.
* gnu/packages/bash.scm (bash-patch): Rename 'sha256' to 'sha256-bv'.
* gnu/packages/bootstrap.scm (bootstrap-executable): Rename 'sha256' to 'bv'.
* gnu/packages/readline.scm (readline-patch): Likewise.
* gnu/packages/virtualization.scm (qemu-patch): Rename 'sha256' to
'sha256-bv'.
* guix/import/utils.scm: Hide (gcrypt hash) 'sha256'.
2020-05-22 01:29:39 +02:00
Ludovic Courtès
0e4e9c8e76
guix hash, guix download: Support base64 format.
* guix/scripts/download.scm (show-help, %options): Support "base64"
format.
* guix/scripts/hash.scm (show-help, %options): Likewise.
* tests/guix-hash.sh: Test it.
* doc/guix.texi (Invoking guix hash): Document it.
2020-05-22 00:35:24 +02:00
Ludovic Courtès
18ae1ec3ec
guix hash, guix download: Add '--hash'.
* guix/scripts/download.scm (%default-options): Add 'hash-algorithm'.
(show-help, %options): Add "--hash".
(guix-download): Honor it.
* guix/scripts/hash.scm (%default-options): Add 'hash-algorithm'.
(show-help, %options): Add "--hash".
(guix-hash): Honor it.
* tests/guix-hash.sh: Test '-H sha512'.
* doc/guix.texi (Invoking guix download): Document it.
(Invoking guix hash): Document it.
2020-05-22 00:35:24 +02:00
Ludovic Courtès
1ad5209d90
maint: Add "make check-channel-news".
* build-aux/check-channel-news.scm: New file.
* Makefile.am (EXTRA_DIST): Add it.
(check-channel-news): New phony rule.
* doc/contributing.texi (Commit Access): Mention "make check-channel-news".
2020-05-22 00:35:23 +02:00
Ludovic Courtès
5e46b827cf
doc: Use "Alternatively" instead of "Alternately".
These two words have different meanings and we really meant
"alternatively" here.

* doc/guix.texi (System Installation):
(Preparing for Installation):
(Invoking guix refresh):
(Invoking guix challenge):
(Networking Services): "Alternatively", not "Alternately".
2020-05-22 00:35:23 +02:00
Maxim Cournoyer
b460ba7992
bootloader: grub: Allow booting from a Btrfs subvolume.
* gnu/bootloader/grub.scm (strip-mount-point): Remove procedure.
(normalize-file): Add procedure.
(grub-configuration-file): New BTRFS-SUBVOLUME-FILE-NAME parameter.  When
defined, prepend its value to the kernel and initrd file names, using the
NORMALIZE-FILE procedure.  Adjust the call to EYE-CANDY to pass the
BTRFS-SUBVOLUME-FILE-NAME argument.  Normalize the KEYMAP file as well.
(eye-candy): Add a BTRFS-SUBVOLUME-FILE-NAME parameter, and use it, along with
the NORMALIZE-FILE procedure, to normalize the FONT-FILE and IMAGE nested
variables.  Adjust doc.
* gnu/bootloader/depthcharge.scm (depthcharge-configuration-file): Adapt.
* gnu/bootloader/extlinux.scm (extlinux-configuration-file): Likewise.
* gnu/system/file-systems.scm (btrfs-subvolume?)
(btrfs-store-subvolume-file-name): New procedures.
* gnu/system.scm (operating-system-bootcfg): Specify the Btrfs
subvolume file name the store resides on to the
`operating-system-bootcfg' procedure, using the new
BTRFS-SUBVOLUME-FILE-NAME argument.
* doc/guix.texi (File Systems): Add a Btrfs subsection to document the use of
subvolumes.
* gnu/tests/install.scm (%btrfs-root-on-subvolume-os)
(%btrfs-root-on-subvolume-os-source)
(%btrfs-root-on-subvolume-installation-script)
(%test-btrfs-root-on-subvolume-os): New variables.
2020-05-20 08:30:35 -04:00
Maxim Cournoyer
fa35fb58c8
file-systems: Add helpers for parsing the options string into an alist.
* gnu/system/file-systems.scm (file-system-options->alist)
(alist->file-system-options): New procedures.
* tests/file-systems.scm: New tests.
* doc/guix.texi (File Systems): Add note about the newly added procedures.
2020-05-20 08:30:34 -04:00
Maxim Cournoyer
281d80d8e5
linux-boot: Refactor boot-system.
The --root option can now be omitted, and inferred from the root file system
declaration instead.

* gnu/build/file-systems.scm (canonicalize-device-spec): Extend to support NFS
directly, and...
* gnu/build/linux-boot.scm (boot-system): ...remove NFS special casing from
here.  Remove nested definitions for root-fs-type, root-fs-flags and
root-fs-options, and bind those inside the let* instead.  Make "--root" take
precedence over the device field string representation of the root file
system.
* doc/guix.texi (Initial RAM Disk): Document that "--root" can be left
unspecified.
2020-05-20 08:30:34 -04:00
Ekaitz Zarraga
9a27d84b7a
guix describe: Add '--list-formats'
* guix/scripts/describe.scm (%available-formats): New variable.
(list-formats): New procedure.
(%options, show-help): Add --list-formats
* doc/guix.texi: Add --list-formats

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2020-05-18 15:08:58 +02:00
Ludovic Courtès
e5b495c18f
doc: Inherit md5.scm fix in custom 'guile-lib' variant.
* doc/build.scm (guile-lib/htmlprag-fixed)[source]: Remove.
[arguments]: Add 'fix-htmlprag' phase.
2020-05-18 15:08:58 +02:00
Julien Lepiller
e39b857d74
doc: meson-build-system: Fix build type documentation.
* doc/guix.texi (Build Systems): Fix meson build system description.
2020-05-17 03:28:49 +02:00
zimoun
6d85945156
doc: Reword "The GCC toolchain".
Fix commit 1f14e25c19
as discussed in <https://bugs.gnu.org/41038>.

* doc/guix.texi (Packages for C Development): Rename to...
(The GCC toolchain): ...this. Add gfortran-toolchain.
(Invoking guix package): Add guix-search anchor.
(Application Setup)[The GCC toolchain]: Remove.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2020-05-16 19:54:52 +02:00
Tobias Geerinckx-Rice
1a1faa78b0
etc: Add a systemd unit to bind-mount @storedir@ read-only.
* etc/gnu-store.mount.in: New file.
* nix/local.mk (nodist_systemdservice_DATA): Add it.
(etc/%.mount): New rule for it.
* etc/guix-install.sh (sys_enable_guix_daemon): Install it.
* doc/guix.texi (Binary Installation): Document it.
* .gitignore: Ignore changes to it.
2020-05-16 15:37:41 +02:00
Ludovic Courtès
644cb40cd8
gexp: Add 'let-system'.
* guix/gexp.scm (<system-binding>): New record type.
(let-system): New macro.
(system-binding-compiler): New procedure.
(default-expander): Add 'self-quoting?' case.
(self-quoting?): New procedure.
(lower-inputs): Add 'filterm'.  Pass the result of
'mapm/accumulate-builds' through FILTERM.
(gexp->sexp)[self-quoting?]: Remove.
* tests/gexp.scm ("let-system", "let-system, target")
("let-system, ungexp-native, target")
("let-system, nested"): New tests.
* doc/guix.texi (G-Expressions): Document it.
2020-05-16 00:34:41 +02:00
Ludovic Courtès
6456232164
pack: Add relocation via ld.so and fakechroot.
* gnu/packages/aux-files/run-in-namespace.c (HAVE_EXEC_WITH_LOADER): New
macro.
(bind_mount): Rename to...
(mirror_directory): ... this.  Add 'firmlink' argument and use it
instead of calling mkdir/open/close/mount directly.
(bind_mount, make_symlink): New functions.
(exec_in_user_namespace): Adjust accordingly.
(exec_with_loader) [HAVE_EXEC_WITH_LOADER]: New function.
(exec_performance): New function.
(engines): Add them.
* guix/scripts/pack.scm (wrapped-package)[fakechroot-library]
[audit-module]: New procedures.
[audit-source]: New variable.
[build](elf-interpreter, elf-loader-compile-flags): New procedures.
(build-wrapper): Use them.
* tests/guix-pack-relocatable.sh: Test with
'GUIX_EXECUTION_ENGINE=fakechroot'.
* doc/guix.texi (Invoking guix pack): Document the 'performance' and
'fakechroot' engines.
* gnu/packages/aux-files/pack-audit.c: New file.
* Makefile.am (AUX_FILES): Add it.
2020-05-14 17:21:27 +02:00
Ludovic Courtès
fde2aec3f4
pack: Wrapper honors 'GUIX_EXECUTION_ENGINE' environment variable.
* gnu/packages/aux-files/run-in-namespace.c (struct engine): New type.
(exec_default): New function.
(engines): New variable.
(execution_engine): New function.
(main): Use it instead of calling 'exec_in_user_namespace' and
'exec_with_proot' directly.
* tests/guix-pack-relocatable.sh: Add test with 'GUIX_EXECUTION_ENGINE'.
* doc/guix.texi (Invoking guix pack): Document 'GUIX_EXECUTION_ENGINE'.
2020-05-14 17:21:27 +02:00
Brice Waegeneire
15014dc618
doc: Mention guix-daemon's 'https_proxy' environment variable.
* doc/guix.texi (Proxy Settings, Derivations): Mention 'https_proxy'.
2020-05-13 10:53:11 +02:00
nikita
3c986a7dc2
mailmap: Update entries for Nikita.
* .mailmap: change email and name for Nikita.
* Makefile.am, doc/guix.texi, etc/completion/fish/guix.fish,
gnu/packages/accessibility.scm, gnu/packages/admin.scm,
gnu/packages/audio.scm, gnu/packages/autotools.scm, gnu/packages/cdrom.scm,
gnu/packages/check.scm, gnu/packages/cinnamon.scm,
gnu/packages/compression.scm, gnu/packages/crypto.scm,
gnu/packages/databases.scm, gnu/packages/django.scm, gnu/packages/dns.scm,
gnu/packages/elixir.scm, gnu/packages/emacs-xyz.scm, gnu/packages/emacs.scm,
gnu/packages/enlightenment.scm, gnu/packages/erlang.scm,
gnu/packages/fonts.scm, gnu/packages/fontutils.scm, gnu/packages/forth.scm,
gnu/packages/fvwm.scm, gnu/packages/games.scm, gnu/packages/gl.scm,
gnu/packages/gnome.scm, gnu/packages/gnunet.scm, gnu/packages/gnupg.scm,
gnu/packages/gtk.scm, gnu/packages/guile-wm.scm, gnu/packages/guile-xyz.scm,
gnu/packages/haskell-apps.scm, gnu/packages/haskell-check.scm,
gnu/packages/haskell-crypto.scm, gnu/packages/haskell-xyz.scm,
gnu/packages/haskell.scm, gnu/packages/image-viewers.scm,
gnu/packages/image.scm, gnu/packages/irc.scm, gnu/packages/language.scm,
gnu/packages/libcanberra.scm, gnu/packages/linux.scm,
gnu/packages/lisp-xyz.scm, gnu/packages/lisp.scm, gnu/packages/lolcode.scm,
gnu/packages/lxde.scm, gnu/packages/lxqt.scm, gnu/packages/mail.scm,
gnu/packages/markup.scm, gnu/packages/mate.scm, gnu/packages/maths.scm,
gnu/packages/mc.scm, gnu/packages/messaging.scm, gnu/packages/music.scm,
gnu/packages/ncurses.scm, gnu/packages/networking.scm,
gnu/packages/nickle.scm, gnu/packages/openbox.scm, gnu/packages/pdf.scm,
gnu/packages/perl-check.scm, gnu/packages/perl.scm,
gnu/packages/python-compression.scm, gnu/packages/python-crypto.scm,
gnu/packages/python-web.scm, gnu/packages/python-xyz.scm,
gnu/packages/python.scm, gnu/packages/qt.scm, gnu/packages/ruby.scm,
gnu/packages/rust.scm, gnu/packages/scheme.scm,
gnu/packages/serialization.scm, gnu/packages/shells.scm,
gnu/packages/ssh.scm, gnu/packages/suckless.scm, gnu/packages/tbb.scm,
gnu/packages/telephony.scm, gnu/packages/text-editors.scm,
gnu/packages/textutils.scm, gnu/packages/time.scm, gnu/packages/tls.scm,
gnu/packages/tor.scm, gnu/packages/version-control.scm,
gnu/packages/video.scm, gnu/packages/vim.scm, gnu/packages/web.scm,
gnu/packages/wm.scm, gnu/packages/xdisorg.scm, gnu/packages/xfce.scm,
gnu/packages/xml.scm, gnu/packages/xorg.scm, gnu/services/certbot.scm,
gnu/services/desktop.scm, gnu/services/version-control.scm,
gnu/services/web.scm, guix/import/hackage.scm, guix/licenses.scm: Likewise.

Signed-off-by: Efraim Flashner <efraim@flashner.co.il>
2020-05-13 09:30:26 +03:00
Brice Waegeneire
a1891cbffb
doc: Specify the branch name in the title of a patch.
* doc/contributing.texi (Submitting Patches): Add branch name in the
title of a patch if different than master.
2020-05-12 22:10:11 +02:00
Ludovic Courtès
88a96c568c
guix graph: Add '--path'.
* guix/scripts/graph.scm (display-path): New procedure.
(%options, show-help): Add '--path'.
(guix-graph): Handle it.
* tests/guix-graph.sh: Add tests.
* doc/guix.texi (Invoking guix graph): Document it.
(Invoking guix size): Mention it.
2020-05-11 23:30:55 +02:00
Ludovic Courtès
c2b2c19a7b
doc: Mention xdot.
* doc/guix.texi (Invoking guix graph): Mention xdot.  Remove a couple of
"| dot -Tpdf" in examples and add "| xdot".
(Invoking guix system): Likewise.
(Preparing to Use the Bootstrap Binaries): Likewise.
2020-05-11 23:30:54 +02:00
Marius Bakke
4bdf4182fe
Merge branch 'core-updates' 2020-05-08 21:40:51 +02:00
Nicolas Goaziou
9ce89e597e
doc: Use @option for command-line options
* doc/guix.texi (Invoking guix system): Use @option instead of @code.
2020-05-07 13:59:38 +02:00
Ludovic Courtès
d6c43d7bc1
guix system: 'docker-image' honors '--network'.
* gnu/system/vm.scm (system-docker-image): Add #:shared-network? and
pass it to 'containerized-operating-system'.
(qemu-image):
* guix/scripts/system.scm (system-derivation-for-action): Pass
 #:shared-network? to 'system-docker-image'.
* doc/guix.texi (Invoking guix system): Document it.
2020-05-07 12:55:14 +02:00
Nicolas Goaziou
f45baa4a0a
doc: Tiny markup fix.
* doc/guix.texi (Substitute Authentication): Use @samp instead of @code for
pseudo-code.
2020-05-07 11:55:02 +02:00
Nicolas Goaziou
82426f4d4a
doc: Remove markup for external package names.
* doc/guix.texi (Invoking guix import): Remove markup, which is not warranted
here.
2020-05-07 11:49:07 +02:00
Nicolas Goaziou
13b0777f25
doc: Use @file instead of @code also for file extensions.
* doc/guix.texi (Defining Packages):
(Build Systems):
(Derivations):
(Invoking guix import):
(Printing Services):
(Installing Debugging Files):
(Preparing to Use the Bootstrap Binaries): Use @file instead of @code.
2020-05-07 11:47:13 +02:00
Nicolas Goaziou
7ebe3163d6
doc: Use @env for environment variables.
* doc/guix.texi (Binary Installation):
(Build Environment Setup):
(Invoking guix-daemon):
(Application Setup):
(After System Installation):
(Invoking guix package):
(Proxy Settings):
(Invoking guix environment):
(Packages for C Development):
(Package Modules):
(Build Systems):
(The Store):
(Common Build Options):
(Invoking guix download):
(Invoking guix refresh):
(Using the Configuration System):
(Locales):
(Base Services):
(Networking Services):
(Sound Services):
(Continuous Integration):
(PAM Mount Service):
(X.509 Certificates): Use @env instead of @code for environment variables.
2020-05-07 11:42:12 +02:00
Nicolas Goaziou
a87c90862c
doc: Use @option instead of @code.
* doc/guix.texi (Binary Installation):
(Requirements):
(Build Environment Setup):
(Invoking guix-daemon):
(Application Setup):
(Invoking guix package):
(Substitute Server Authorization):
(Substitution Failure):
(Invoking guix gc):
(Invoking guix pull):
(Invoking guix archive):
(Invoking guix environment):
(Invoking guix pack):
(Defining Packages):
(Build Systems):
(The Store):
(Invoking guix build):
(Common Build Options):
(Package Transformation Options):
(Additional Build Options):
(Debugging Build Failures):
(Invoking guix edit):
(Invoking guix import):
(Invoking guix refresh):
(Invoking guix lint):
(Invoking guix publish):
(Invoking guix challenge):
(Base Services):
(Virtualization Services):
(Initial RAM Disk):
(Invoking guix system):
(Preparing to Use the Bootstrap Binaries):
(Porting): Use @option instead of @code for command-line options.
2020-05-07 11:21:31 +02:00
Pierre Neidhardt
caf90167fb
doc: Fix typo in container example.
* doc/guix.texi (Invoking `guix environment'): Fix sll -> ssl typo.
2020-05-07 10:37:11 +02:00
Pierre Neidhardt
60131df02b
doc: Add container example to run a web browser.
* doc/guix.texi (Invoking `guix environment'): Add paragraph and example to
  run Eolie in a guix environment container.  Add `container' cindex for the
  first container example, and the `certificates' cindex for the web browser
  example.
2020-05-07 10:04:14 +02:00
Marius Bakke
c263cfdcde
Merge branch 'master' into core-updates 2020-05-06 23:37:40 +02:00
Brice Waegeneire
2f93615670
doc: Clarify 'git-http-configuration' description.
Fix <https://issues.guix.info/31780>.

* doc/guix.texi (Version Control Service): Extend
'git-http-configuration' description.
2020-05-06 11:03:43 +02:00
Marius Bakke
87a40d7203
Merge branch 'master' into core-updates 2020-05-05 20:43:21 +02:00
Jean-Baptiste Note
751d1f01e4
doc: cookbook: Fix sbcl-ttf-fonts package name.
* doc/guix-cookbook.texi (StumpWM): Adjust sbcl-ttf-fonts package name.

Signed-off-by: Marius Bakke <mbakke@fastmail.com>
2020-05-05 20:09:39 +02:00
Nicolas Goaziou
826c2eecbe
doc: Typographic improvements.
* doc/guix.texi (Networking Services): Use @var, @option, and @command when
appropriate.  Add two spaces after sentences.
2020-05-05 16:38:29 +02:00
pinoaffe
051f3254cd
gnu: Add AutoSSH service.
* gnu/services/ssh.scm (<autossh-configuration>): New record type.
(autossh-service-type): New variable.
(autossh-service-activation, autossh-file-name): New procedures.
* doc/guix.texi (Networking Services): Document this.

Signed-off-by: Oleg Pykhalov <go.wigust@gmail.com>
2020-05-05 15:32:40 +03:00
Ludovic Courtès
9dbc7f50ab
doc: Remove prompt from X.509 examples.
* doc/guix.texi (X.509 Certificates): Remove leading "$".
2020-05-04 23:07:57 +02:00
Ludovic Courtès
1f14e25c19
doc: Add "Packages for C Development" section.
Suggested by Bruno Haible <bruno@clisp.org>
in <https://bugs.gnu.org/41038>.

* doc/guix.texi (Packages for C Development): New node.
(Application Setup)[The GCC toolchain]: Empty and refer to it.
2020-05-04 10:50:18 +02:00
Ludovic Courtès
4a84deda74
doc: Recommend against SHA1 OpenPGP signatures.
* doc/contributing.texi (Commit Access): Recommend against SHA1
signatures.
2020-05-04 09:56:14 +02:00
Ludovic Courtès
84133320b8
doc: Document committer authorization.
* doc/contributing.texi (Commit Access): Add instructions for
authorizing committers.
2020-05-04 09:56:13 +02:00
Marius Bakke
50e6c1bf2e
Merge branch 'master' into core-updates 2020-05-02 17:31:28 +02:00
Björn Höfling
7c65fc378c
doc: Fix building the cookbook.
Fixes <https://debbugs.gnu.org/cgi/bugreport.cgi?bug=40803>.
Reported by "operator.name" <operator.name@protonmail.com>.

* doc/build.scm (%languages): Add smaller list for the cookbook.
(syntax-highlighted-html): Adapt regexp for mono-node files to include
the cookbook.
2020-05-02 13:21:42 +02:00
Pierre Langlois
5a0b78e62b
services: dnsmasq: Support the --address flag.
Introduce a new `addresses' field that translates to passing `--address='
multiple times to dnsmasq.

* gnu/services/dns.scm (<dnsmasq-configuration>): Add an addresses field.
(dnsmasq-shepherd-service): Match the addresses field and translate it to
multiple '--address=' flags.
* doc/guix.texi (DNS Services): Document it.

Signed-off-by: 宋文武 <iyzsong@member.fsf.org>
2020-05-02 13:00:24 +08:00
Marius Bakke
a2522c5da3
doc: Update initrd section to refer to the right Guile variable.
This is a follow-up to commit 57833803b4.

* doc/guix.texi (Initial RAM Disk): Refer to "%guile-3.0-static-stripped"
instead of "%guile-static-stripped".
2020-05-01 22:34:22 +02:00
Brice Waegeneire
dc6eec77a5
doc: Move 'Dictionary Service' under 'Miscellaneous Services'.
* doc/guix.texi (Dictionary Service): Renamed to singular and changed
from 'subsubsection' to 'subheading'.

Signed-off-by: Mathieu Othacehe <m.othacehe@gmail.com>
2020-05-01 16:40:42 +02:00
Brice Waegeneire
c316b85692
doc: Replace section 'Early OOM service' by 'Linux Services'.
* doc/guix.texi (Linux Services): Changed from 'subsubheading' to
'subsection'.
(Early OOM Service, Kernel Module Loader Service): Moved under 'Linux
Services'.

Signed-off-by: Mathieu Othacehe <m.othacehe@gmail.com>
2020-05-01 16:40:41 +02:00
Florian Pelz
e06664da02
system: Blacklist usbmouse kernel module in default kernel-arguments.
This avoids a race with the bcm5974 kernel module.
Fixes <https://bugs.gnu.org/35574>.

* gnu/system.scm (%default-modprobe-blacklist): New variable.
(<operating-system>)[kernel-arguments]: Default to ...
(%default-kernel-arguments): ... this new variable.
* doc/guix.texi (operating-system Reference): Document the change.
2020-05-01 08:46:59 +00:00
Leo Famulari
6c7a39c45e
doc: Bootloader Configuration: Fix an obsolete example.
Reported by rawmat on #guix.

* doc/guix.texi (Bootloader Configuration): Replace 'grub-configuration' with
'bootloader-configuration'.
2020-04-30 17:22:01 -04:00
Marcin Karpezo
145df67b25
doc: cookbook: Rename stumpwm package to current state.
* doc/guix-cookbook.texi (StumpWM): Rename STUMPWM package to current state.

Signed-off-by: Oleg Pykhalov <go.wigust@gmail.com>
2020-04-30 00:43:46 +03:00
Diego Nicola Barbato
e4aa9ab637
doc: Mention that PulseAudio service overrides user configuration.
* doc/guix.texi (Sound Services): Add a warning that 'pulseaudio-service-type'
  overrides per-user configuration files in '~/.config/pulse'.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2020-04-28 23:28:17 +02:00
operator.name
619f9181a3
doc: Update url to singularity before link rot occurs.
* doc/guix.texi: Update url to singularity before link rot occurs.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2020-04-27 23:29:40 +02:00
TomZ
f4f4aa628a
doc: guix: Fix grammar in "Debugging Build Failures"
* doc/guix.texi (Debugging Build Failures): Fix grammar.

Signed-off-by: Jakub Kądziołka <kuba@kadziolka.net>
2020-04-27 18:24:19 +02:00
Nicolas Goaziou
d558de8048
doc: guix: Fix some markup.
* doc/guix.texi (Build Systems):
(Base Services):
(X Window):
(Printing Services):
(Mail Services):
(Messaging Services):
(LDAP Services):
(Virtualization Services):
(Version Control Services): Use @samp, @code and double quotes where
appropriate.
2020-04-25 23:35:44 +02:00
Nicolas Goaziou
128b136ec6
doc: cookbook: Fix quotes.
* doc/guix-cookbook.texi (Basic setup with manifests):
(Default profile):
(The benefits of manifests): Use proper quotes in regular texts.
2020-04-25 23:10:16 +02:00
Nicolas Goaziou
2c8305d140
doc: cookbook: Use @file for file names and extensions.
* doc/guix-cookbook.texi (@samp{GUIX_PACKAGE_PATH}):
(Extended example):
(Setting up a bind mount):
(Basic setup with manifests):
(Default profile): Use @file instead of @samp or @code for file names and
extensions.
2020-04-24 18:40:04 +02:00
Nicolas Goaziou
cc765e478a
doc: cookbook: Fix misuses of double spacing.
* doc/guix-cookbook.texi (Extended example):
(StumpWM):
(Basic setup with manifests): Prevent Texinfo from ending a sentence where it
should not.
(Setting up a bind mount): Add two spaces where needed.
2020-04-24 18:32:56 +02:00
Marius Bakke
7dd05396ef
doc: Ensure guix-daemon is built before creating guix-daemon.1.
* doc/local.mk ($(srcdir)/%D%/guix-daemon.1): Depend on guix-daemon$(EXEEXT)
instead of its source code.
2020-04-24 16:24:01 +02:00
Ludovic Courtès
62bc3c5b04
build: Don't build man pages when cross-compiling.
* configure.ac: Define 'CROSS_COMPILING' Automake conditional.
* doc/local.mk (dist_man1_MANS): Wrap in "if !CROSS_COMPILING".
2020-04-23 23:59:23 +02:00
Ludovic Courtès
d9e83f2a64
doc: Build more man pages.
* doc/local.mk (sub_commands_mans): Add guix-deploy.1,
guix-time-machine.1, and guix-weather.1.
2020-04-23 23:59:22 +02:00
Raghav Gururajan
5483a2d0a9
gnu: font-gnu-freefont: Add otf and woff font types.
* gnu/packages/fonts.scm (font-gnu-freefont): Add otf and woff font types.
* gnu/packages/genealogy.scm (gramps)[inputs]: Replace font-gnu-freefont-tff
with font-gnu-freefont.
* doc/guix.texi: Adjust a reference to the package.

Signed-off-by: Leo Famulari <leo@famulari.name>
2020-04-22 17:59:44 -04:00
Matthew Brooks
60651dd962
doc: cookbook: Explain how to use bind mounts.
* doc/guix-cookbook.texi (Setting up a bind mount): Add example.

Signed-off-by: Leo Famulari <leo@famulari.name>
2020-04-22 15:49:53 -04:00
Ludovic Courtès
9475c631a7
doc: Adjust @var vs. @code.
* doc/guix.texi (Base Services): Adjust @var vs. @code.  Use 'cons'
instead of 'cons*' in example.
2020-04-22 19:23:58 +02:00
Brice Waegeneire
2b0c0d9301
services: Add udev-rules-service helper.
* doc/guix.texi (Base services): Add documentation for
'udev-rules-service'. Replace examples of 'udev-service-type' extension
with 'udev-rules-service'.
* gnu/services/base.scm (udev-rules-service): New procedure.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2020-04-22 19:23:58 +02:00
Ludovic Courtès
34faf63ebc
gexp: Add 'load-path?' field to <scheme-file>.
* guix/gexp.scm (<scheme-file>)[load-path?]: New field.
(scheme-file): Add #:set-load-path? and honor it.
(scheme-file-compiler): Pass #:set-load-path? to 'gexp->file'.
* doc/guix.texi (G-Expressions): Document it.
2020-04-22 19:23:57 +02:00
Ludovic Courtès
cb26edc8f6
doc: Include *.json files in the source.
This is a followup to c9f321e52a.

* doc/build.scm (texinfo-manual-source)[build]: Add *.json to #$output.
2020-04-21 23:52:19 +02:00
Ludovic Courtès
c8d8f6160e
packages: Recommend against the use of 'package-file'.
* guix/packages.scm (package-file): Recommend against its use in the
docstring.
* doc/guix.texi (The Store Monad): Likewise.
2020-04-21 00:06:40 +02:00
Ludovic Courtès
5e7076f2a5
services: Add 'simulated-wifi-service-type'.
* gnu/services/networking.scm (simulated-wifi-shepherd-services): New
procedure.
(simulated-wifi-service-type): New variable.
* doc/guix.texi (Networking Services): Document it.
2020-04-19 23:50:17 +02:00
Ludovic Courtès
a03943ec00
services: Add 'hostapd-service-type'.
* gnu/services/networking.scm (<hostapd-configuration>): New record
type.
(hostapd-configuration-file, hostapd-shepherd-services): New
procedures.
(hostapd-service-type): New variable.
* doc/guix.texi (Networking Services): Document it.
2020-04-19 23:50:17 +02:00
Ludovic Courtès
40c6b1802c
doc: Make install script more prominent.
Suggested by Steven vanZyl <rushsteve1@rushsteve1.us>.

* doc/guix.texi (Binary Installation): Add @example showing how to
download the script.  Use "systemctl enable --now".
2020-04-19 13:27:07 +02:00
mikadoZero
a37c59af62
doc: Update nar decompression examples.
* doc/guix.texi (Invoking guix archive): Show /gzip URL.
Add cross-reference to "Invoking guix challenge".
(Invoking guix challenge): Show /lzip URL.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2020-04-17 23:18:32 +02:00