summaryrefslogtreecommitdiff
path: root/guix/import
diff options
context:
space:
mode:
authorLudovic Courtès <ludo@gnu.org>2019-11-22 14:21:13 +0100
committerLudovic Courtès <ludo@gnu.org>2019-11-22 15:00:59 +0100
commitc0e9d470e1eb3eba0d2c2da3c6ffdd5665c4638b (patch)
tree6170f678497a7fa6edc8b58f476a651ecfc4d697 /guix/import
parent732c96f182386d1be00ebf47d332d8c81b878dcf (diff)
downloadpatches-c0e9d470e1eb3eba0d2c2da3c6ffdd5665c4638b.tar
patches-c0e9d470e1eb3eba0d2c2da3c6ffdd5665c4638b.tar.gz
import: texlive: Handle multi-license packages.
This fixes "guix import texlive translator". * guix/import/texlive.scm (sxml->package): Add clause for when 'license' is a list of licences, as is the case with the "translator" package.
Diffstat (limited to 'guix/import')
-rw-r--r--guix/import/texlive.scm8
1 files changed, 6 insertions, 2 deletions
diff --git a/guix/import/texlive.scm b/guix/import/texlive.scm
index 791b514485..d528aace9a 100644
--- a/guix/import/texlive.scm
+++ b/guix/import/texlive.scm
@@ -140,7 +140,9 @@ expression describing it."
(synopsis (sxml-value '(entry caption *text*)))
(version (or (sxml-value '(entry version @ number *text*))
(sxml-value '(entry version @ date *text*))))
- (license (string->license (sxml-value '(entry license @ type *text*))))
+ (license (match ((sxpath '(entry license @ type *text*)) sxml)
+ ((license) (string->license license))
+ ((lst ...) (map string->license lst))))
(home-page (string-append "http://www.ctan.org/pkg/" id))
(ref (texlive-ref component id))
(checkout (download-svn-to-store store ref)))
@@ -169,7 +171,9 @@ expression describing it."
(sxml->string (or (sxml-value '(entry description))
'())))
#\newline)))))
- (license ,license)))))
+ (license ,(match license
+ ((lst ...) `(list ,@lst))
+ (license license)))))))
(define texlive->guix-package
(memoize