[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
08/12: svn-download: Use ‘swh-download-directory-by-nar-hash’.
From: |
guix-commits |
Subject: |
08/12: svn-download: Use ‘swh-download-directory-by-nar-hash’. |
Date: |
Sat, 9 Mar 2024 13:49:07 -0500 (EST) |
civodul pushed a commit to branch master
in repository guix.
commit 0e73f933b291c7e154c7e019b6de1e2f3a97e4c1
Author: Ludovic Courtès <ludo@gnu.org>
AuthorDate: Tue Feb 20 18:01:10 2024 +0100
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
---
guix/svn-download.scm | 24 +++++++++++++++++++-----
1 file changed, 19 insertions(+), 5 deletions(-)
diff --git a/guix/svn-download.scm b/guix/svn-download.scm
index c6688908de..64af996a06 100644
--- a/guix/svn-download.scm
+++ b/guix/svn-download.scm
@@ -1,5 +1,5 @@
;;; GNU Guix --- Functional package management for GNU
-;;; Copyright © 2014-2016, 2019, 2021-2023 Ludovic Courtès <ludo@gnu.org>
+;;; Copyright © 2014-2016, 2019, 2021-2024 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2014 Sree Harsha Totakura <sreeharsha@totakura.in>
;;; Copyright © 2017, 2019, 2021 Ricardo Wurmus <rekado@elephly.net>
;;;
@@ -94,12 +94,14 @@ HASH-ALGO (a symbol). Use NAME as the file name, or a
generic name if #f."
(with-imported-modules
(source-module-closure '((guix build svn)
(guix build download-nar)
- (guix build utils)))
+ (guix build utils)
+ (guix swh)))
(with-extensions (list guile-json guile-gnutls ;for (guix swh)
guile-lzlib)
#~(begin
(use-modules (guix build svn)
(guix build download-nar)
+ (guix swh)
(ice-9 match))
(or (svn-fetch (getenv "svn url")
@@ -111,7 +113,10 @@ HASH-ALGO (a symbol). Use NAME as the file name, or a
generic name if #f."
(_ #f))
#:user-name (getenv "svn user name")
#:password (getenv "svn password"))
- (download-nar #$output))))))
+ (download-nar #$output)
+ (parameterize ((%verify-swh-certificate? #f))
+ (swh-download-directory-by-nar-hash #$hash '#$hash-algo
+ #$output)))))))
(mlet %store-monad ((guile (package->derivation guile system)))
(gexp->derivation (or name "svn-checkout") build
@@ -174,13 +179,15 @@ HASH-ALGO (a symbol). Use NAME as the file name, or a
generic name if #f."
(with-imported-modules
(source-module-closure '((guix build svn)
(guix build download-nar)
- (guix build utils)))
+ (guix build utils)
+ (guix swh)))
(with-extensions (list guile-json guile-gnutls ;for (guix swh)
guile-lzlib)
#~(begin
(use-modules (guix build svn)
(guix build utils)
(guix build download-nar)
+ (guix swh)
(srfi srfi-1)
(ice-9 match))
@@ -206,7 +213,14 @@ HASH-ALGO (a symbol). Use NAME as the file name, or a
generic name if #f."
(begin
(when (file-exists? #$output)
(delete-file-recursively #$output))
- (download-nar #$output)))))))
+ (or (download-nar #$output)
+ (parameterize ((%verify-swh-certificate? #f))
+ ;; SWH keeps HASH as an ExtID for the combination of
+ ;; files/directories, which allows us to retrieve the
+ ;; entire combination at once:
+ ;;
<https://gitlab.softwareheritage.org/swh/infra/sysadm-environment/-/issues/5263>.
+ (swh-download-directory-by-nar-hash
+ #$hash '#$hash-algo #$output)))))))))
(mlet %store-monad ((guile (package->derivation guile system)))
(gexp->derivation (or name "svn-checkout") build
- branch master updated (d53ca79370 -> 2f441fc738), guix-commits, 2024/03/09
- 09/12: bzr-download: Implement nar fallback., guix-commits, 2024/03/09
- 12/12: download: Honor ‘GUIX_DOWNLOAD_METHODS’ environment variable., guix-commits, 2024/03/09
- 01/12: lint: Switch to SRFI-71., guix-commits, 2024/03/09
- 04/12: swh: Add ‘type’ field to <visit>., guix-commits, 2024/03/09
- 07/12: hg-download: Use ‘swh-download-directory-by-nar-hash’., guix-commits, 2024/03/09
- 10/12: download-nar: Distinguish ‘output’ and ‘item’ parameter., guix-commits, 2024/03/09
- 06/12: swh: ‘lookup-origin-revision’ handles branches pointing to directories., guix-commits, 2024/03/09
- 02/12: lint: archival: Fix crash in non-Git case., guix-commits, 2024/03/09
- 08/12: svn-download: Use ‘swh-download-directory-by-nar-hash’.,
guix-commits <=
- 05/12: swh: ‘origin-visits’ takes an optional ‘max’ parameter., guix-commits, 2024/03/09
- 03/12: lint: archival: Trigger “Save Code Now” for VCSes other than Git., guix-commits, 2024/03/09
- 11/12: perform-download: Allow use of ‘download-nar’ for ‘--check’ builds., guix-commits, 2024/03/09