records: Avoid code duplication in ‘match-record-lambda’.
* guix/records.scm (match-record-lambda): Express in terms of ‘match-record’.
Change-Id: I5a577055fe47e01af4c282f1a76ea72648e778d1
services: log-rotation: Allow to pass procedure as compression method.
* gnu/services/admin.scm (log-rotation-configuration): Change
validation method and accept gexp procedure.
Change-Id: I67cd5051a05d211349ecbc66ee3a55ab5b1a5971
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
tests: Fix ‘store-deduplication.scm’ on systems with large blocks.
Fixes <https://issues.guix.gnu.org/74862>.
In particular, this makes it possible to build guix on Asahi, whose tmpfs has
16KiB blocks by default.
* tests/store-deduplication.scm
("copy-file/deduplicate, sparse files (holes: ~a/~a/~a)"): Scale hole sizes so
the test works with blocks bigger than 4KiB.
Change-Id: I92fee04f6f69d4e5bfea7443991303ad68da7b2c
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
gnu: cproc: Refer to invoked programs by full path.
* gnu/packages/c.scm (cproc)[arguments]: Add phase to set glibc dir.
[arguments]: Properly specify program inputs in 'configure phase.
* gnu/packages/patches/cproc-extra-linkflags.patch: New patch.
* gnu/local.mk (dist_patch_DATA): Adjust accordingly.
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
records: Fix match-record description.
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
monad-repl: Add "build-options" command.
There currently was no way to disable build offload for ,build from inside the
REPL. Since offloaded builds sometimes do not error report entirely
correctly, it is useful to be able to switch to local builds.
This commit adds new ,build-options meta command, which allows to specify
build options, including #:offload?.
* guix/monad-repl.scm (%build-options): New variable.
(evaluate/print-with-store, package-argument-command): Use it.
(build-options): New meta command to set it.
* doc/guix.texi (Using Guix Interactively): Document it.
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
ssh: Do not default to port 22 (let guile-ssh do it).
Fixes <https://issues.guix.gnu.org/74832>.
After update to guile-ssh 0.18.0, options passed to the `make-session'
procedure now take precedence over the configuration file. In few places we
however had code like `(or port 22)' leading to (in absence of alternative
port being specified) always using port 22, ignoring the configuration file.
Due to that for example following command fails:
guix copy hello --to=name
Name is reachable, but ssh server listens on port 2222. That is correctly
configured in ~/.ssh/config, and the invocation used to succeed until the
upgrade. However now it tries to connect to port 22 (since port was not
specified). While setting the port on the command line *is* possible, it is
not exactly ergonomic.
Since guile-ssh (well, libssh) defaults to 22 if not told otherwise, we can
just always pass the port, and #f will use the port from ~/.ssh/config or, iff
none is set, 22.
I went through the repository and adjusted all places where it seemed
appropriate. In particular, these places were left alone:
gnu/machine/digital-ocean.scm: The droplet is created with root user and the
expected key, so forcing them to those values seems correct.
gnu/machine/ssh.scm: For deployments reproducibility is favored over
convenience, and user can pass #f to explicitly request using value the
~/.ssh/config.
* guix/scripts/copy.scm (send-to-remote-host): Always pass the port to
open-ssh-session.
(retrieve-from-remote-host): Same.
* guix/scripts/offload.scm (open-ssh-session): Pass #f as #:config. Skips
reading the configuration file and is nicer.
* guix/ssh.scm (open-ssh-session): Drop explicit parsing of the configuration
since it is parsed by default. Report actual port used in the error message.
* guix/store/ssh.scm (connect-to-daemon): Always pass the port part of the
uri, even when #f.
Change-Id: I5fdf20f36509a9a0ef138ce72c7198f688eea494
Reported-by: Dariqq <dariqq@posteo.net>
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
mapped-devices/luks: Support extra options.
Allow passing extra options to the 'cryptsetup open' command.
* gnu/system/mapped-devices.scm (luks-device-mapping-with-options):
[#:extra-options]: New argument.
(open-luks-device): Use it.
(check-luks-device): Validate it.
* doc/guix.texi (Mapped Devices): Document it.
* gnu/tests/install.scm (%test-encrypted-root-extra-options-os): New
test for it, as well as the previously untested #:allow-discards?
option.
(%encrypted-root-extra-options-os): New os declaration for the test.
Change-Id: I265a431efb0c81ed7cfc984344c6b8a4cc2f1624
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
gnu: uxn11: Enable tests.
* gnu/packages/emulators (uxn11)[arguments]
<#:tests?>: Remove.
<#:test-target>: Set to “test”.
<#:phases>: Delete ‘build’. Move ‘check’ after ‘install’.
Add ‘fix-cc’ and ‘pre-check’.
Closes: guix/guix#3228
Change-Id: I27789bd36ecd6b66684403b0043ad75972ca0ced
Signed-off-by: 宋文武 <iyzsong@member.fsf.org>
gnu: python-louvain-igraph: Fix tests.
* gnu/packages/graph.scm (python-louvain-igraph)[native-inputs]:
Remove python-wheel; add python-pytest.
Change-Id: Iee027d8b6e838dd2deb6c02bc26aa55ff7fd3396
gnu: python-gffutils: Fix tests.
* gnu/packages/bioinformatics.scm (python-gffutils)[arguments]
<test-flags>: Ignore one not compatible test file.
Change-Id: I30c6abc726ba58a3ce3a08ad36cd48a6573efc29
gnu: python-episcanpy: Fix sanity check.
* gnu/packages/bioinformatics.scm (python-episcanpy):
[propagated-inputs]: Remove python-anndata; add python-anndata-0.11.
Change-Id: I8f6889b3fcce6c5c9f1eac27d45f49a81e815dcf
gnu: Add python-anndata-0.11.
* gnu/packages/python-science.scm (python-anndata-0.11): New variable.
Change-Id: I49d804d4434dfde618cfe7da76cae1d8db9444af
gnu: python-cyvcf2: Update to 0.31.2.
* gnu/packages/bioinformatics.scm (python-cyvcf2): Update to 0.31.2.
[native-inputs]: Remove python-wheel.
Change-Id: Ieba07d46864472b2c7d6a3f7936f1d225c174825
gnu: python-cgatcore: Update to 0.6.16.
* gnu/packages/bioinformatics.scm (python-cgatcore): Update to 0.6.16.
[arguments] <test-flags>: Ignore not compatible test file.
[native-inputs]: Remove python-wheel.
Change-Id: Iec565987285443ea7303c44fe7eb0c8c967a5852
gnu: python-bx-python: Update to 0.14.0.
* gnu/packages/bioinformatics.scm (python-bx-python): Update to 0.14.0.
[propagated-inputs]: Add python-pyparsing.
[native-inputs]: Remove python-wheel.
Change-Id: I790eff97d37ea82220d7643d415c1213ff010411
gnu: packages/build-tools: Sort modules.
* gnu/packages/build-tools.scm: Group use-modules semantically and sort
alphabetically.
Change-Id: I3709f96c9484b311a89d73349074efbe9909877a
gnu: hyprland-protocols: Update to 0.7.0.
* gnu/packages/freedesktop.scm (hyprland-protocols): Update to 0.7.0.
Change-Id: Id57c9e2257b13d36da115080f9d04db14ccdb33a
Signed-off-by: John Kehayias <john@guixotic.coop>
gnu: hyprlock: Update to 0.9.2.
* gnu/packages/xdisorg.scm (hyprlock): Update to 0.9.2.
Change-Id: I8db39736e7404274fc26883393e905dfba4459eb
Signed-off-by: John Kehayias <john@guixotic.coop>