build-system/texlive: Add texlive-origin.

* guix/build-system/texlive.scm (texlive-origin): New procedure.
This commit is contained in:
Ricardo Wurmus 2019-07-06 00:40:28 +02:00
parent f97c9e4cfb
commit 2541379ee4
No known key found for this signature in database
GPG key ID: 197A5888235FACAC

View file

@ -30,6 +30,7 @@ (define-module (guix build-system texlive)
texlive-build
texlive-build-system
texlive-ref
texlive-origin
%texlive-tag
%texlive-revision))
@ -44,6 +45,20 @@ (define-module (guix build-system texlive)
(define %texlive-tag "texlive-2018.2")
(define %texlive-revision 49435)
(define (texlive-origin name version locations hash)
"Return an <origin> object for a TeX Live package consisting of multiple
LOCATIONS with a provided HASH. Use NAME and VERSION to compute a prettier
name for the checkout directory."
(origin
(method svn-multi-fetch)
(uri (svn-multi-reference
(url (string-append "svn://www.tug.org/texlive/tags/"
%texlive-tag "/Master/texmf-dist/"))
(locations locations)
(revision %texlive-revision)))
(file-name (string-append name "-" version "-checkout"))
(sha256 hash)))
(define (texlive-ref component id)
"Return a <svn-reference> object for the package ID, which is part of the
given Texlive COMPONENT."