Commit graph

2528 commits

Author SHA1 Message Date
Maxime Devos
5378edeab4
utils: Define ‘search-input-file’ procedure.
The procedure ‘which’ from (guix build utils)
is used for two different purposes:

  1. for finding the absolute file name of a binary
     that needs to run during the build process

  2. for finding the absolute file name of a binary,
     for the target system (as in --target=TARGET),
     e.g. for substituting sh->/gnu/store/.../bin/sh,
     python->/gnu/store/.../bin/python.

When compiling natively (target=#f in Guix parlance),
this is perfectly fine.

However, when cross-compiling, there is a problem.
"which" looks in $PATH for binaries.  That's good for purpose (1),
but incorrect for (2), as the $PATH contains binaries from native-inputs
instead of inputs.

This commit defines a ‘search-input-file’ procedure. It functions
like 'which', but instead of searching in $PATH, it searches in
the 'inputs' of the build phase, which must be passed to
‘search-input-file’ as an argument. Also, the file name must
include "bin/" or "sbin/" as appropriate.

* guix/build/utils.scm (search-input-file): New procedure.
* tests/build-utils.scm
  ("search-input-file: exception if not found")
  ("search-input-file: can find if existent"): Test it.
* doc/guix.texi (File Search): Document it.

Partially-Fixes: <https://issues.guix.gnu.org/47869>
Co-Authored-By: Ludovic Courtès <ludo@gnu.org>
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2021-06-04 22:34:26 +02:00
Marius Bakke
4ea6852c5f
Merge branch 'master' into core-updates 2021-05-22 17:21:57 +02:00
Tobias Geerinckx-Rice
c0087d3370
The #guix channel is hosted by Libera Chat.
* README (Contact): Update network name.
* ROADMAP: Likewise.
* doc/contributing.texi (Contributing): Likewise.
* doc/guix.texi (After System Installation): Likewise.
2021-05-20 01:58:04 +02:00
Ludovic Courtès
1ac137a365
doc: Fix references to the "geiser" package.
Reported by munksgaard on #guix.

* doc/guix.texi (Invoking guix pack): Replace "geiser" with
"emacs-geiser" in examples.
(Invoking guix refresh): Likewise.
2021-05-19 23:18:12 +02:00
Maxim Cournoyer
fd449608eb
services: Add a service for opendht.
* gnu/services/networking.scm (maybe-number?, maybe-string?): New procedures.
(<opendht-configuration>): New configuration record.
(%opendht-accounts): New variable.
(opendht-configuration->command-line-arguments): New procedure.
(opendht-shepherd-service, opendht-service-type): New variables.
* doc/guix.texi (Networking Services): Document the new service.
2021-05-17 23:27:40 -04:00
Ludovic Courtès
938ffcbb05
publish: Add '--negative-ttl'.
* guix/scripts/publish.scm (show-help, %options): Add '--negative-ttl'.
(render-narinfo, render-narinfo/cached, make-request-handler): Add #:negative-ttl
and honor it.
(run-publish-server): Add #:narinfo-negative-ttl and honor it.
(guix-publish): Honor '--negative-ttl'.
* tests/publish.scm ("negative TTL", "no negative TTL"): New tests.
2021-05-16 23:28:11 +02:00
Ludovic Courtès
25487c3fe6
Merge branch 'master' into core-updates 2021-05-15 22:55:24 +02:00
Jelle Licht
bcdb8e9885
doc: Show how to enable Guile support for Geiser.
* doc/contributing.texi (The Perfect Setup): Adjust "guix package -i"
command line.
2021-05-13 23:28:36 +02:00
Maxim Cournoyer
55aa50834f
doc: Do not instruct to decompress the VM image.
Also replace the obsolete 'guix system vm-image' command mention by the 'guix
system image'.

* doc/guix.texi (Running Guix in a VM): Remove VM image decompression
instruction.
<guix system vm-image>: Replace by 'guix system image'.
2021-05-12 10:22:38 -04:00
Maxim Cournoyer
b7cbca221f
Merge branch 'version-1.3.0' 2021-05-11 22:42:59 -04:00
raid5atemyhomework
a3df382525
gnu: Allow services to install kernel-loadable modules.
* gnu/system.scm (operating-system-directory-base-entries): Remove code
to handle generation of "kernel" for linux-libre kernels.
(operating-system-default-essential-services): Instantiate
linux-builder-service-type.
(package-for-kernel): Move ...
* gnu/services.scm: ... to here.
(linux-builder-service-type): New variable.
(linux-builder-configuration): New type.
(linux-loadable-module-service-type): New variable.
* gnu/tests/linux-modules.scm (run-loadable-kernel-modules-test): Move
code to ...
(run-loadable-kernel-modules-test-base): ... new procedure here.
(run-loadable-kernel-modules-service-test): New procedure.
(%test-loadable-kernel-modules-service-0): New variable.
(%test-loadable-kernel-modules-service-1): New variable.
(%test-loadable-kernel-modules-service-2): New variable.
* doc/guix.texi: Document linux-loadable-module-service-type.

Signed-off-by: Danny Milosavljevic <dannym@scratchpost.org>
2021-05-11 16:13:48 +02:00
Marius Bakke
f034264204
Merge branch 'master' into core-updates
Conflicts:
	gnu/local.mk
	gnu/packages/bioinformatics.scm
	gnu/packages/django.scm
	gnu/packages/gtk.scm
	gnu/packages/llvm.scm
	gnu/packages/python-web.scm
	gnu/packages/python.scm
	gnu/packages/tex.scm
	guix/build-system/asdf.scm
	guix/build/emacs-build-system.scm
	guix/profiles.scm
2021-05-09 21:29:46 +02:00
Alexey Abramov
0d6eb69266
services: dovecot: Add ‘managesieve-sieve-capability’ option.
* gnu/services/mail.scm (protocol-configuration): Add a
‘managesieve-sieve-capability’ field.
* doc/guix.texi (Mail Services): Document it.

Signed-off-by: Tobias Geerinckx-Rice <me@tobias.gr>
2021-05-06 11:31:48 +02:00
Alexey Abramov
6e05920cef
services: dovecot: Add ‘managesieve-notify-capability’ option.
* gnu/services/mail.scm (protocol-configuration): Add a
‘managesieve-notify-capability’ field.
* doc/guix.texi (Mail Services): Document it.

Signed-off-by: Tobias Geerinckx-Rice <me@tobias.gr>
2021-05-06 11:27:00 +02:00
Alexey Abramov
0fd5bdcaf6
services: dovecot: Add ‘imap-metadata?’ protocol configuration option.
* gnu/services/mail.scm (protocol-configuration): Add an ‘imap-metadata?’
setting to enable IMAP METADATA support in the ‘imap’ protocol.
* doc/guix.texi (Mail Services): Document it.

Signed-off-by: Tobias Geerinckx-Rice <me@tobias.gr>
2021-05-06 11:08:52 +02:00
Alexey Abramov
5b5c50961f
services: dovecot: Add ‘mail-attribute-dict’ configuration option.
* gnu/services/mail.scm (dovecot-configuration): Define a
‘mail-attribute-dict’ directive for IMAP METADATA storage.
* doc/guix.texi (Mail Services): Document it.

Signed-off-by: Tobias Geerinckx-Rice <me@tobias.gr>
2021-05-06 11:08:52 +02:00
Ludovic Courtès
1ca0a9a307
gnu: rasdaemon: Fix Texinfo syntax of description.
Regression introduced in 58805da44d.

* gnu/packages/linux.scm (rasdaemon)[description]: Avoid @acronym since
Guile's Texinfo module doesn't currently support @comma{}.
* doc/guix.texi (Linux Services): Use @comma{} within @acronym.
2021-05-05 23:42:57 +02:00
Maxim Cournoyer
b1b41a23f4
build: Do not compress the (already compressed) VM qcow2 images.
The qcow2 format supports compression, and the qcow2 type supported by 'guix
system image' produces compressed qcow2 images.

* Makefile.am (release): Do not re-compress the qcow2 VM images with xz.
* doc/guix.texi (Running Guix in a VM): Adjust VM image URL.
2021-05-05 16:31:06 -04:00
Maxim Cournoyer
c241b7ea63
Revert "doc: Update to cover for an additional OpenPGP signing key."
This reverts commit b9fb13b284.  Per discussions
simply updating OPENPGP-SIGNING-KEY-ID and OPENPGP-SIGNING-KEY-URL will be
enough.
2021-05-05 11:36:52 -04:00
Maxim Cournoyer
ace6723946
doc: Update the OpenPGP key used to sign the release.
It was discussed on guix-devel that the manual only needs to have correct
instructions for the latest release.

* doc/guix.texi (OPENPGP-SIGNING-KEY-ID): Update to my public OpenPGP key.
(OPENPGP-SIGNING-KEY-URL): Adjust URL.
2021-05-05 11:26:26 -04:00
Maxim Cournoyer
f40b0fa8e6
Revert "doc: Update to cover for an additional OpenPGP signing key."
This reverts commit b9fb13b284.  Per discussions
simply updating OPENPGP-SIGNING-KEY-ID and OPENPGP-SIGNING-KEY-URL will be
enough.
2021-05-05 11:25:24 -04:00
Tobias Geerinckx-Rice
58805da44d
doc: Fix typo and use @acronym for RAS.
* doc/guix.texi (Linux Services): Fix typo and use @acronym for RAS.
2021-05-04 22:48:34 +02:00
Tobias Geerinckx-Rice
ef7275cd19
doc: Fix typos.
* doc/contributing.texi (Translating Guix): Fix ‘developpers’ and
‘superseeded’ typos.  Use @var mark-up where appropriate.
2021-05-04 22:30:01 +02:00
Maxim Cournoyer
0f583f60f8
doc: Update to cover for an additional OpenPGP signing key.
The upcoming 1.3.0 release will be signed with my OpenPGP key; subsequent
releases may also be.

* doc/guix.texi (OPENPGP-SIGNING-KEY-ID, OPENPGP-SIGNING-KEY-URL): Rename to...
(OPENPGP-SIGNING-KEY-ID-1, OPENPGP-SIGNING-KEY-URL-1): ... these,
respectively.
(OPENPGP-SIGNING-KEY-ID-2, OPENPGP-SIGNING-KEY-URL-2): New variables.
(Binary Installation): Adjust to cover for the new key.
(USB Stick and DVD Installation): Likewise.
(Invoking guix refresh): Adjust accordingly.
2021-05-03 23:14:13 -04:00
Ludovic Courtès
82c0f34c7e
maint: Do not xz-compress ISO images.
The xz-compressed image is 23% smaller than the original ISO image (with
built-in zlib compression), but the extra decompression step is
unconventional and often a hindrance for users.  See discussion at
<https://lists.gnu.org/archive/html/guix-devel/2021-04/msg00497.html>.

* Makefile.am (release): Do not compress ISO images.
* doc/guix.texi (USB Stick and DVD Installation): Remove ".xz" suffix
from URL and file name.
(Copying to a USB Stick, Burning on a DVD): Remove introductory words,
@enumerate, and first item.

Signed-off-by: Maxim Cournoyer <maxim.cournoyer@gmail.com>
2021-05-03 22:41:36 -04:00
Julien Lepiller
66072a00d7
nls: Guard against the list of translated Texinfo files becoming stale.
This change is so that the list of translated Texinfo files remain in sync
with the list of supported (translated) languages.

* doc/local.mk (MANUAL_LANGUAGES, COOKBOOK_LANGUAGES): New variables.
(lang_to_texinfos): New function.
(TRANSLATED_INFO): Use it to construct the list of files.

Modified-by: Maxim Cournoyer <maxim.cournoyer@gmail.com>
Signed-off-by: Maxim Cournoyer <maxim.cournoyer@gmail.com>
2021-05-03 22:41:35 -04:00
Maxim Cournoyer
b9fb13b284
doc: Update to cover for an additional OpenPGP signing key.
The upcoming 1.3.0 release will be signed with my OpenPGP key; subsequent
releases may also be.

* doc/guix.texi (OPENPGP-SIGNING-KEY-ID, OPENPGP-SIGNING-KEY-URL): Rename to...
(OPENPGP-SIGNING-KEY-ID-1, OPENPGP-SIGNING-KEY-URL-1): ... these,
respectively.
(OPENPGP-SIGNING-KEY-ID-2, OPENPGP-SIGNING-KEY-URL-2): New variables.
(Binary Installation): Adjust to cover for the new key.
(USB Stick and DVD Installation): Likewise.
(Invoking guix refresh): Adjust accordingly.
2021-05-03 20:37:55 -04:00
Maxim Cournoyer
10cf742cbc
doc: Update the URL of the system VM image.
This is a follow up to commit ebf5d77eab, which added the qcow2 file extension
to the VM image file name.

* doc/guix.texi (Running Guix in a VM): Update URL.
2021-05-03 09:49:53 -04:00
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