ngz pushed a commit to branch tex-team
in repository guix.
commit 4c00350dd3498bacd937f74919632a1f78ae7a90
Author: Nicolas Goaziou <[email protected]>
AuthorDate: Mon Jun 10 21:13:00 2024 +0200
guix: texlive importer: Remove need for having "svn" binary in PATH.
* guix/svn-download.scm (download-svn-to-store):
(download-multi-svn-to-store): Use "svn" executable from store.
Change-Id: Ia0b80a67de3d6a0f2f67038176678495a0c9eee0
---
guix/svn-download.scm | 39 ++++++++++++++++++++++-----------------
1 file changed, 22 insertions(+), 17 deletions(-)
diff --git a/guix/svn-download.scm b/guix/svn-download.scm
index bdd9c39eb5..30b98ca21e 100644
--- a/guix/svn-download.scm
+++ b/guix/svn-download.scm
@@ -300,25 +300,28 @@ HASH-ALGO (a symbol). Use NAME as the file name, or a
generic name if #f."
(define* (download-svn-to-store store ref
#:optional (name (basename (svn-reference-url
ref)))
- #:key (log (current-error-port)))
+ #:key (log (current-error-port))
+ (svn (subversion-package)))
"Download from REF, a <svn-reference> object to STORE. Write progress
reports to LOG."
(call-with-temporary-directory
(lambda (temp)
(let ((result
(parameterize ((current-output-port log))
- (build:svn-fetch (svn-reference-url ref)
- (svn-reference-revision ref)
- (string-append temp "/svn")
- #:user-name (svn-reference-user-name ref)
- #:password (svn-reference-password ref)))))
+ #~(build:svn-fetch (svn-reference-url ref)
+ (svn-reference-revision ref)
+ (string-append temp "/svn")
+ #:svn-command #+(file-append svn "/bin/svn")
+ #:user-name (svn-reference-user-name ref)
+ #:password (svn-reference-password ref)))))
(and result
(add-to-store store name #t "sha256"
(string-append temp "/svn")))))))
(define* (download-multi-svn-to-store store ref
#:optional (name (basename
(svn-multi-reference-url ref)))
- #:key (log (current-error-port)))
+ #:key (log (current-error-port))
+ (svn (subversion-package)))
"Download from REF, a <svn-multi-reference> object to STORE. Write progress
reports to LOG."
(call-with-temporary-directory
@@ -327,16 +330,18 @@ reports to LOG."
(let ((dir (string-append temp "/" (dirname location))))
(mkdir-p dir))
(parameterize ((current-output-port log))
- (build:svn-fetch (string-append (svn-multi-reference-url
ref)
- "/" location)
- (svn-multi-reference-revision ref)
- (if (string-suffix? "/" location)
- (string-append temp "/" location)
- (string-append temp "/" (dirname
location)))
- #:recursive?
- (svn-multi-reference-recursive? ref)
- #:user-name
(svn-multi-reference-user-name ref)
- #:password (svn-multi-reference-password
ref))))
+ #~(build:svn-fetch
+ (string-append (svn-multi-reference-url ref)
+ "/" location)
+ (svn-multi-reference-revision ref)
+ (if (string-suffix? "/" location)
+ (string-append temp "/" location)
+ (string-append temp "/" (dirname location)))
+ #:svn-command #+(file-append svn "/bin/svn")
+ #:recursive?
+ (svn-multi-reference-recursive? ref)
+ #:user-name (svn-multi-reference-user-name ref)
+ #:password (svn-multi-reference-password ref))))
(svn-multi-reference-locations ref))
(add-to-store store name #t "sha256" temp)))))