Commit Graph

7561 Commits

Author SHA1 Message Date
Ludovic Courtès
b7931e6f5d
git authenticate: Document ‘--end’.
* guix/scripts/git/authenticate.scm (show-help): Document ‘--end’.
* doc/guix.texi (Invoking guix git authenticate): Likewise.

Reported-by: Tomas Volf <~@wolfsden.cz>
Change-Id: Ia646203ce2f721487de547c76b9488754c70db66
2024-03-19 17:02:14 +01:00
Ludovic Courtès
c90a4e8dcd
describe: Try harder to find the ‘guix pull’ profile.
Fixes <https://issues.guix.gnu.org/66705>.

The strategy used by ‘current-profile’ so far would fail to find the
right profile (the one created by ‘guix pull’ or ‘guix time-machine’) in
cases where said profile is itself included in another profile.  This
happens, for instance, when running ‘guix shell -CW -- guix describe’,
which, as a result, would display nothing but the ‘guix’ channel.

This patch fixes that by having ‘current-profile’ not just check for the
presence of a ‘manifest’ file but also parse it to determine whether
it’s a ‘guix pull’ kind of manifest.

* guix/describe.scm (find-profile): New procedure.
(current-profile): Adjust to use it.

Change-Id: I9194f54ce1496a6591e247c76203f497f28c330b
2024-03-19 17:02:14 +01:00
Ludovic Courtès
06baf4d6ba
profiles: ‘read-manifest’ raises to ‘&profile-error’ upon version mismatch.
* guix/profiles.scm (sexp->manifest): In the catch-all clause, raise to
‘&profile-error’ in addition to ‘&message’.

Change-Id: Ieb08187b388531c2157bfe67fb1b7319dbbb4ff3
2024-03-19 17:02:14 +01:00
Ludovic Courtès
a26bce55e6
time-machine: Allow time travels to v0.16.0.
* guix/scripts/time-machine.scm (%oldest-possible-commit): Change to
v0.16.0.
* tests/guix-time-machine.sh: Adjust comment.

Change-Id: I9ad82bd45fee0d172b5348a8ae16e990338a3a97
2024-03-11 22:12:34 +01:00
Efraim Flashner
92bd81a96f
transformations: Add support for rust.
* guix/transformations.scm (tuning-compiler): Add support for rustc.

Change-Id: I6db596a586eda648666550cdcadaa5e1704cb79c
2024-03-10 12:50:13 +02:00
Ludovic Courtès
2f441fc738
download: Honor ‘GUIX_DOWNLOAD_METHODS’ environment variable.
This replaces ‘GUIX_DOWNLOAD_FALLBACK_TEST’ and allows you to test
various download methods, like so:

  GUIX_DOWNLOAD_METHODS=nar guix build guile-gcrypt -S --check
  GUIX_DOWNLOAD_METHODS=disarchive guix build hello -S --check

* guix/build/download.scm (%download-methods): New variable.
(download-method-enabled?): New procedure.
(url-fetch): Define ‘initial-uris’; honor ‘download-method-enabled?’.
Call ‘disarchive-fetch/any’ only when the 'disarchive method is enabled.
* guix/build/git.scm (git-fetch-with-fallback): Honor
‘download-method-enabled?’.
* guix/download.scm (%download-methods): New variable.
(%download-fallback-test): Remove.
(built-in-download): Add #:download-methods parameter and honor it.
(url-fetch*): Pass #:content-addressed-mirrors and #:disarchive-mirrors
unconditionally.
* guix/git-download.scm (git-fetch/in-band*): Pass “git url”
unconditionally.
(git-fetch/built-in): Likewise.  Pass “download-methods”.
* guix/bzr-download.scm (bzr-fetch)[build]: Honor ‘download-method-enabled?’.
Pass ‘GUIX_DOWNLOAD_METHODS’ to #:env-vars.
* guix/cvs-download.scm (cvs-fetch)[build]: Honor ‘download-method-enabled?’.
Pass ‘GUIX_DOWNLOAD_METHODS’ to #:env-vars.
* guix/hg-download.scm (hg-fetch): Honor ‘download-method-enabled?’.
Pass #:env-vars to ‘gexp->derivation’.
* guix/scripts/perform-download.scm (perform-download): Honor
“download-methods” from DRV.  Parameterize ‘%download-methods’ before
calling ‘url-fetch’.
(perform-git-download): Likewise.
* guix/svn-download.scm (svn-fetch): Honor ‘download-method-enabled?’.
Pass ‘GUIX_DOWNLOAD_METHODS’ to #:env-vars.
(svn-multi-fetch): Likewise.

Change-Id: Ia3402e17f0303dfa964bdc761265efe8a1dd69ab
2024-03-09 18:55:50 +01:00
Ludovic Courtès
abd0cca2a9
perform-download: Allow use of ‘download-nar’ for ‘--check’ builds.
Previously, the nar fallback would always fail on ‘--check’ build
because the output directory in that case is different from the store
file name.  This change fixes that.

* guix/build/git.scm (git-fetch-with-fallback): Add #:item parameter and
pass it to ‘download-nar’.
* guix/scripts/perform-download.scm (perform-git-download): Pass #:item
to ‘git-fetch-with-fallback’.

Change-Id: I30fc948718e99574005150bba5215a51ef153c49
2024-03-09 18:55:50 +01:00
Ludovic Courtès
3e9bea7ee3
download-nar: Distinguish ‘output’ and ‘item’ parameter.
This is useful when running a ‘--check’ build, where the output file
name differs from the store file name we are trying to restore.

* guix/build/download-nar.scm (download-nar): Add ‘output’ parameter and
distinguish it from ‘item’.

Change-Id: I42219b6d4c8fd1ed506720301384efc1aa351561
2024-03-09 18:55:50 +01:00
Ludovic Courtès
8a42fc7140
bzr-download: Implement nar fallback.
* guix/bzr-download.scm (bzr-fetch)[guile-json, guile-lzlib,
guile-gnutls]: New variables.
[build]: Add ‘with-extensions’ and import more modules.  Invoke
‘download-nar’ when ‘bzr-fetch’ returns #f.
* guix/build/bzr.scm (bzr-fetch): Actually return #t on success.

Change-Id: Id5d4ebd0f9ddc3c44b6456d3b46c0000cc7b9997
2024-03-09 18:55:49 +01:00
Ludovic Courtès
0e73f933b2
svn-download: Use ‘swh-download-directory-by-nar-hash’.
Fixes <https://issues.guix.gnu.org/43442>.

* guix/svn-download.scm (svn-fetch)[build]: Add
‘swh-download-directory-by-nar-hash’ call as a last resort.
Import (guix swh).
* guix/svn-download.scm (svn-multi-fetch)[build]: Likewise.

Change-Id: Ifcb9be1e9c2b05ce172c44e45dcf3a3ea6df8e76
2024-03-09 18:55:49 +01:00
Ludovic Courtès
2a9f817ffd
hg-download: Use ‘swh-download-directory-by-nar-hash’.
This allows content-addressed access to the checkout, which is
preferable.

* guix/hg-download.scm (hg-fetch): Add call to
‘swh-download-directory-by-nar-hash’ before ‘swh-download’ call.

Change-Id: I2afc8badc1f8bb2c8bdd3a47abbb72d455d93e64
2024-03-09 18:55:49 +01:00
Ludovic Courtès
ddd455c0dd
swh: ‘lookup-origin-revision’ handles branches pointing to directories.
Fixes <https://issues.guix.gnu.org/69070>.

* guix/swh.scm (branch-target): Add clause for 'directory and 'alias.
(lookup-origin-revision): Iterate over all the visits of ORIGIN instead
of just the first one.  Handle the case where ‘branch-target’ returns
something other than a release or revision.
* tests/swh.scm ("lookup-origin-revision"): New test.

Change-Id: I7f636739a719908763bca1d3e7376341dd62e816
2024-03-09 18:55:49 +01:00
Ludovic Courtès
ed9d7d8431
swh: ‘origin-visits’ takes an optional ‘max’ parameter.
* guix/swh.scm (origin-visits): Add optional ‘max’ parameter and honor
it.

Change-Id: I642d7d4b0672b68fb5c7ce2b49161307e13d3c95
2024-03-09 18:55:49 +01:00
Ludovic Courtès
a813d6890b
swh: Add ‘type’ field to <visit>.
* guix/swh.scm (<visit>)[type]: New field.

Change-Id: I7677984c7daef38d8f3c3bef19723fa0efb035ba
2024-03-09 18:55:49 +01:00
Ludovic Courtès
47a0e5d9fb
lint: archival: Trigger “Save Code Now” for VCSes other than Git.
Until now, ‘save-origin’ would be called only when given a
<git-reference>.  With this change, ‘save-origin’ gets called for other
version control systems as well.

* guix/lint.scm (swh-response->warning): New procedure, formerly in
‘check-archival’.
(vcs-origin, save-package-source): New procedures.
(check-archival)[response->warning]: Remove.
Call ‘save-package-source’ in both the Git and the non-Git cases.
* tests/lint.scm ("archival: missing svn revision"): New test.

Change-Id: I535e4ec89488faf83bfa544d5e4935fa73ef54fb
2024-03-09 18:55:49 +01:00
Ludovic Courtès
3328dec087
lint: archival: Fix crash in non-Git case.
Fixes a bug introduced in 29f3089c84 where
‘guix lint -c archival guile-wisp’ (for instance) would crash with a
match error because ‘lookup-by-nar-hash’ returns a string.

* guix/lint.scm (check-archival): Add SWHID case in the non-Git case.

Change-Id: I66fb060172d372041df47d90a14df168b0fa762d
2024-03-09 18:55:49 +01:00
Ludovic Courtès
cfc63f673f
lint: Switch to SRFI-71.
* guix/lint.scm: Switch from SRFI-11 to SRFI-71.

Change-Id: I62e6cd304ad73570bd12bd67f7051566205596bb
2024-03-09 18:55:48 +01:00
Efraim Flashner
cae9e9db32
cpu: Enable tuning for i686-linux.
* gnu/packages/gcc.scm (gcc-7, gcc-10, gcc-11, gcc-12, gcc-13)
[properties]: In compiler-cpu-architectures use the
x86_64-micro-architectures list for i686.
* guix/cpu.scm (cpu->gcc-architecture): Expand the x86_64 case to also
support i686.

Change-Id: I0b820ceb715960db5e702814fa278dc8c619a836
2024-03-07 13:04:27 +02:00
Efraim Flashner
7700dc2cf5
cpu: Rename x86-64-v1 to x86-64.
This is the actual micro-architecture designation used by compilers.

* gnu/packages/gcc.scm (%gcc-11-x86_64-micro-architectures): Rename
x86-64-v1 to x86-64.
* gnu/packages/golang.scm (%go-1.18-x86_64-micro-architectures): Same.
* guix/cpu.scm (cpu->micro-architecture-level): Same.
(gcc-architecture->micro-architecture-level): Same.

Change-Id: I19ed556a7e8deb4a77f4c63fca3b794f25092788
2024-03-07 13:04:27 +02:00
Efraim Flashner
63165a9486
cpu: Be consistent with x86_64 micro-architecture names.
* gnu/packages/golang.scm (%go-1.18-x86_64-micro-architectures): Rename
micro-architectures from x86_64-v* to x86-64-v*.
* guix/cpu.scm (cpu->gcc-architecture): Return x86-64 as the fallback.
(cpu->micro-architecture-level): Rename micro-architectures from
x86_64-v* to x86-64-v*.
(gcc-architecture->micro-architecture-level): Same.

Change-Id: I37db65970417c22699ae8097b0361bccf76c1267
2024-03-07 13:04:27 +02:00
Carlo Zancanaro
9d9bb8955a
scripts: import: elpa: Unquote-splice package sexp contents.
* guix/scripts/import/elpa.scm (guix-import-elpa): Unquote-splice the contents
of the package sexp so the matched package definition is returned unchanged.

Change-Id: Iaaa7e72390c73c6d6671811fe9ac284d599b44c6
Signed-off-by: Ricardo Wurmus <rekado@elephly.net>
2024-03-06 11:09:55 +01:00
Ricardo Wurmus
3e0a1469b8
import/cran: Add one more invalid package.
* guix/import/cran.scm (invalid-packages): Add "use_c17".

Change-Id: Ie3b6455d4eff97811057cd82dca460367a4583e5
2024-03-06 09:42:04 +01:00
Efraim Flashner
29a9d0596f
guix: cpu: Update aarch64 CPUs.
* guix/cpu.scm (cpu->gcc-architecture): Update list of CPUs from the
list in gcc.

Change-Id: Ifcd26c143fc9e3aaa0c5514e1dac4908d2780255
2024-03-05 08:54:14 +02:00
Efraim Flashner
5dce7964ef
guix: cpu: Autodetect the x86-64-v4 microarchitecture.
* guix/cpu.scm (gcc-architecture->micro-architecture-level): Sort
gcc-architectures which have AVX512F support into x86-64-v4.

Change-Id: I8af0ceb692eefec7433e1fd5149379244da799c4
2024-03-05 08:54:13 +02:00
Efraim Flashner
b9f87817a1
guix: cpu: Update x86_64 CPUs.
* guix/cpu.scm (cpu->gcc-architecture): Add graniterapids-d,
pantherlake, clearwaterforest, arrowlake-s, yongfeng.  Remove
grandridge.  Update CPU flags for searching to match architecture.
(gcc-architecture->micro-architecture-level): Adjust listed
architectures and sort in order used above.

Change-Id: I186ab6e396e36c34f7c61827e02f637716993141
2024-03-05 08:54:13 +02:00
Paul A. Patience
8dca56b4a1
gnu: perl6-tap-harness: Update to 0.3.5.
* gnu/packages/perl6.scm (perl6-tap-harness): Update to 0.3.5.
[source]: Update URL. Reindent.
[arguments]: Replace obsolete prove6 script with manual Raku invocation
in 'check' phase.
[home-page]: Update.
[synopsis]: Replace mention of Perl with Raku.

* gnu/packages/rakudo-build-system.scm (check): Replace obsolete prove6
script with manual Raku invocation.

Signed-off-by: Efraim Flashner <efraim@flashner.co.il>
2024-03-04 10:41:57 +02:00
Paul A. Patience
6a80ac450c
gnu: rakudo: Update to 2022.04.
* gnu/packages/perl6.scm (rakudo): Update to 2022.04.
[source]: Add snippet to delete bundled 3rdparty directory.
[arguments]: Add 'remove-calls-to-git', 'fix-paths' and
'disable-failing-tests' phases. Remove 'patch-source-date' phase. Adjust
files in 'patch-more-shebangs' phase and sort them. Remove redundant
'./' from 'configure' phase. Replace Perl extensions and paths with Raku
equivalents in 'install-dist-tool' phase.
[native-inputs]: Add nqp-configure.
[synopsis, description]: Replace mentions of Perl with Raku.

* guix/build/rakudo-build-system.scm (install): Replace Perl extension
with Raku extension.

Signed-off-by: Efraim Flashner <efraim@flashner.co.il>
2024-03-04 09:21:56 +02:00
Tomas Volf
ef788ee2dc
build-system/guile: Install .scm files first.
Until now the .go files were generated first, and only after that the .scm
files were installed into the target location.  That led to a lot of messages
about `source file ... newer than compiled' if the custom 'check phase tried
to load the compiled files.

Swapping the order of the actions resolves the issue allowing the tests to be
written without lot of noise in the build log.

For final artifacts it was not a problem, since daemon resets the timestamps.

* guix/build/guile-build-system.scm (build): Install .scm before producing
.go.

Change-Id: I3428d144fcbaa6c904ee662193c3bca82589e344
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2024-03-02 16:26:29 +01:00
Tomas Volf
c3cd24b29a
build-system/guile: Fix indentation.
The inner (let) was on the same level as the outer one, which was confusing.

* guix/build/guile-build-system.scm (build): Fix indentation.

Change-Id: I701b61747c270b185eac9377b066748baa2b3d20
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2024-03-02 16:26:26 +01:00
Tomas Volf
7fc91c1413
build-system/guile: Fix typo in documentation string.
* guix/build/guile-build-system.scm (install-documentation): Fix typo in
documentation string.

Change-Id: I8940591fcbf8222c8f8365dabbac0e8300cad84c
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2024-03-02 16:25:35 +01:00
Efraim Flashner
f29f80c194
Merge branch 'rust-team'
Change-Id: Iee31c5de29c357c822f60df4fa8ce758779eb349
2024-02-28 12:18:45 +02:00
Herman Rimm
b386c11e78
import: Do not return package name with json importer.
* guix/import/json.scm (json->code): Do not return package names after
package expressions.
* doc/package-hello.json: Fix comma errors and use valid greeter URL.

Change-Id: Id71924e72f690a9bda5fbfdb65a443029adfd158
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2024-02-23 19:02:55 +01:00
Herman Rimm
df3e44cab1
import: Discard args after --version and --help.
* guix/scripts/import.scm (guix-import): Discard args.

Change-Id: Icce5cd0daf9011f7ddde7904113b31b547f063ef
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2024-02-23 19:02:38 +01:00
Herman Rimm
635af8628c
import: Insert packages into modules alphabetically.
* guix/scripts/import.scm (guix-import): Add 'insert' option.
(import-as-definitions): Add procedure.
* doc/guix.texi (Invoking guix import): Describe 'insert' option.

Change-Id: Id87ea707123630e12bcb6788599acac6895b26c4
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2024-02-23 19:02:35 +01:00
Herman Rimm
50e514c1bc
utils: Add find-definition-insertion-location procedure.
* guix/utils.scm (find-definition-insertion-location): Add and export
procedure.
* tests/utils.scm ("find-definition-insertion-location"): Add test.

Change-Id: Ie17e1b4a94790f58518ce121411a38d357f49feb
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2024-02-23 19:02:16 +01:00
Herman Rimm
babd39e843
utils: Add insert-expression procedure.
* guix/utils.scm (define-module): Use (guix read-print) and export
(insert-expression).
(insert-expression): Add procedure.
* tests/utils.scm ("insert-expression"): Add test.

Change-Id: I971a43a78aa6ecaaef33c1a7a0db4b287eb85036
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2024-02-23 19:01:55 +01:00
Herman Rimm
a1d0610f83
import: Wrap package expressions with define-public.
* guix/scripts/import.scm (guix-import): Wrap package expressions.

Change-Id: Ic4d986a4706a692b2fecd6fded8ac72ab6311687
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2024-02-23 19:00:58 +01:00
Efraim Flashner
e60ac989a3
build: cargo: Add support for x86_64-linux-gnux32.
* guix/build/cargo-build-system.scm (configure): Add entry for
x86_64-linux-gnux32 in CARGO_BUILD_TARGET.

Change-Id: Iae363d4e7962af1ebd4f2ed0f4276663b2245580
2024-02-20 13:57:10 +02:00
Ludovic Courtès
34c79c6ae8
syscalls: ‘processes’ really omits kernel threads.
Fixes a bug whereby ‘processes’ would include kernel threads, thereby
leading the ‘stop’ method of ‘user-processes’ to wait indefinitely for a
kernel thread.  Code taken from the Shepherd.

Fixes <https://issues.guix.gnu.org/68800>.

* guix/build/syscalls.scm (kernel?): Remove.
(linux-process-flags, linux-kernel-thread?, pseudo-process?): New
procedures.
(PF_KTHREAD): New variable.
(processes): Use ‘pseudo-process?’ instead of ‘kernel?’.

Reported-by: Tomas Volf <~@wolfsden.cz>
Change-Id: I8c439cdaf868a8f899de7fe500ce8bf10e5fc290
2024-02-20 10:57:16 +01:00
Ricardo Wurmus
7a01cc001d
import/cran: Use downstream name when using specifications.
Reported by Alexander Blume at
<https://github.com/BIMSBbioinfo/guix.install/issues/4>.

* guix/import/cran.scm (format-inputs): Use UPSTREAM-INPUT-DOWNSTREAM-NAME
when %INPUT-STYLE is set to 'SPECIFICATION.

Change-Id: I2f0963af197896aafd613b253d8712e41a716e52
2024-02-20 10:32:24 +01:00
Ricardo Wurmus
00c8a9275c
upstream: update-package-inputs: Sort extra inputs.
Ensure that extra inputs end up in the correct order.

* guix/upstream.scm (update-package-inputs)[filtered-inputs]: Sort new list of
inputs.

Change-Id: Ia5fddd8103a33c79426995057fcce61c2e9e5a72
2024-02-19 11:44:47 +01:00
Timothy Sample
5f86eebd24
gnu: disarchive: Update to 0.6.0.
* gnu/packages/backup.scm (disarchive): Update to 0.6.0; add
'guile-bzip2' as an input.
* gnu/packages/package-management.scm (guix): Add 'guile-bzip2' as
an input to enable bzip2 support when using Disarchive.
* guix/self.scm (%packages): Add 'guile-bzip2'.
(compiled-guix): Include 'guile-bzip2' as a dependency when building
the 'guix' command.
* etc/disarchive-manifest.scm (tarball-origin?): Include bzip2
tarballs.

Co-authored-by: Ludovic Courtès <ludovic.courtes@inria.fr>
Change-Id: I4da479054f6bef225f5ea979c091152f8a9e51d5
2024-02-12 21:26:01 -06:00
Ludovic Courtès
5a61ce6bcf
swh: Fix docstring of ‘lookup-directory’.
* guix/swh.scm (lookup-directory): Fix docstring.

Change-Id: Ia1fd9b2bc9184364cebbd30ee84c9fdea4ba897c
2024-02-12 12:03:53 +01:00
Ludovic Courtès
264fdbcaff
git-download: Download from SWH by nar hash when possible.
* guix/build/git.scm (git-fetch-with-fallback): Add #:hash
and #:hash-algorithm.  Try ‘swh-download-directory-by-nar-hash’ before
‘swh-download’ when #:hash is provided.
* guix/git-download.scm (git-fetch/in-band*): Pass #:hash
and #:hash-algorithm to ‘git-fetch-with-fallback’.
* guix/scripts/perform-download.scm (perform-git-download): Likewise.

Change-Id: Ic875a7022fd78c9fac32e92ad4f8ce4d81646ec5
2024-02-12 12:03:53 +01:00
Ludovic Courtès
29f3089c84
lint: archival: Check with ‘lookup-directory-by-nar-hash’.
While this method is new and nar-sha256 ExtIDs are currently available
only for new visits, it is fundamentally more reliable than the other
methods, which is why it comes first.

* guix/lint.scm (check-archival)[lookup-by-nar-hash]: New procedure.
Call ‘lookup-by-nar-hash’ before the other lookup methods.
* tests/lint.scm ("archival: content available")
("archival: content unavailable but disarchive available")
("archival: missing revision")
("archival: revision available"): Add a 404 response corresponding to
the ‘lookup-external-id’ request.
* tests/lint.scm ("archival: nar-sha256 extid available"): New test.

Change-Id: I4a81d6e022a3b72e6484726549d7fbae627f8e73
2024-02-12 12:03:53 +01:00
Ludovic Courtès
1b72e14307
swh: Add ‘swh-download-directory-by-nar-hash’.
This allows us to take advantage of content addressing by giving SWH the
expected nar hash.

* guix/swh.scm (swh-download-directory-by-nar-hash): New procedure.

Change-Id: I0494ee15a3cde390a22552de7c2246e0314ba7b5
2024-02-12 12:03:53 +01:00
Ludovic Courtès
be773bd192
swh: Add bindings for the “ExtID” API.
This interface was deployed at archive.softwareheritage.org a few days
ago.  Our main use case will be looking up directories by “nar-sha256”
hashes.

* guix/swh.scm (<external-id>): New JSON-mapped record type.
(lookup-external-id, lookup-directory-by-nar-hash): New procedures.
* tests/swh.scm (%external-id): New variable.
("lookup-directory-by-nar-hash"): New test.

Change-Id: Ib671c7798aeb6f8132ac78f2b06b9285da8e7bd5
2024-02-12 12:03:53 +01:00
Ludovic Courtès
1610a632d4
swh: ‘vault-fetch’ follows redirects.
Today, URLs like
https://archive.softwareheritage.org/api/1/vault/flat/swh:1:dir:84a8b34591712c0a90bab0af604188bcd1fe3153/raw/
redirect to https://swhvaultstorage.blob.core.windows.net/….  This
change fixes ‘vault-fetch’ to follow these.

Fixes <https://issues.guix.gnu.org/69058>.

* guix/swh.scm (http-get/follow): New procedure.
(vault-fetch): Use it instead of ‘http-get*’.

Change-Id: Id6b9585a9ce6699a2274b99c9a6d4edda1018b02
2024-02-12 12:03:52 +01:00
Ludovic Courtès
5bd5bb5f6c
git authenticate: Gracefully handle invalid fingerprints.
Previously the command would crash when passed an invalid fingerprint on
the command line.

* guix/scripts/git/authenticate.scm (guix-git-authenticate)
[openpgp-fingerprint*]: New procedure.
Use it instead of ‘openpgp-fingerprint’.

Change-Id: I99e0549781382f36a684a84449b603e00b53778d
2024-02-12 12:03:52 +01:00
Christopher Baines
4cc7302e7d
build-system: perl: Accept Gexps for #:module-build-flags.
Matching the change in 2d40e6f7ab otherwise the
cross build derivations are broken, as was the case for emacs-pde.

* guix/build-system/perl.scm (perl-cross-build) [module-build-flags]: Accept
gexps.

Change-Id: I2dc85bc50bc077581e3abfc5baaedc6487118192
2024-02-10 10:33:18 +00:00