import: Importers return prefixed licenses.
authorDavid Craven <david@craven.ch>
Fri, 5 Aug 2016 17:15:56 +0000 (19:15 +0200)
committerDavid Craven <david@craven.ch>
Sun, 28 Aug 2016 12:04:50 +0000 (14:04 +0200)
* guix/import/utils.scm
(define-module): Import licenses with license: prefix.
(string->licenses): Use prefixed licenses.
(license->symbol): Return symbols with the prefix license:.
* guix/tests/pypi.scm (pypi->guix-package): Update test cases.
* guix/tests/gem.scm (gem->guix-package): Update test case.

guix/import/utils.scm
tests/gem.scm
tests/pypi.scm

index 44e004b..93cd0f0 100644 (file)
@@ -22,7 +22,7 @@
   #:use-module (srfi srfi-1)
   #:use-module (guix hash)
   #:use-module (guix base32)
-  #:use-module (guix licenses)
+  #:use-module ((guix licenses) #:prefix license:)
   #:use-module (guix utils)
   #:use-module ((guix build download) #:prefix build:)
   #:export (factorize-uri
@@ -112,12 +112,12 @@ recursively apply the procedure to the sub-list."
 (define (string->license str)
   "Convert the string STR into a license object."
   (match str
-    ("GNU LGPL" lgpl2.0)
-    ("GPL" gpl3)
-    ((or "BSD" "BSD License") bsd-3)
-    ((or "MIT" "MIT license" "Expat license") expat)
-    ("Public domain" public-domain)
-    ((or "Apache License, Version 2.0" "Apache 2.0") asl2.0)
+    ("GNU LGPL" license:lgpl2.0)
+    ("GPL" license:gpl3)
+    ((or "BSD" "BSD License") license:bsd-3)
+    ((or "MIT" "MIT license" "Expat license") license:expat)
+    ("Public domain" license:public-domain)
+    ((or "Apache License, Version 2.0" "Apache 2.0") license:asl2.0)
     (_ #f)))
 
 (define (license->symbol license)
@@ -125,12 +125,12 @@ recursively apply the procedure to the sub-list."
 to in the (guix licenses) module, or #f if there is no such known license."
   ;; TODO: Traverse list public variables in (guix licenses) instead so we
   ;; don't have to maintain a list manualy.
-  (assoc-ref `((,lgpl2.0 . lgpl2.0)
-               (,gpl3 . gpl3)
-               (,bsd-3 . bsd-3)
-               (,expat . expat)
-               (,public-domain . public-domain)
-               (,asl2.0 . asl2.0))
+  (assoc-ref `((,license:lgpl2.0 . license:lgpl2.0)
+               (,license:gpl3 . license:gpl3)
+               (,license:bsd-3 . license:bsd-3)
+               (,license:expat . license:expat)
+               (,license:public-domain . license:public-domain)
+               (,license:asl2.0 . license:asl2.0))
              license))
 
 (define (snake-case str)
index 0b37c70..a46c2b1 100644 (file)
@@ -71,7 +71,7 @@
          ('synopsis "A cool gem")
          ('description "This package provides a cool gem")
          ('home-page "https://example.com")
-         ('license ('list 'expat 'asl2.0)))
+         ('license ('list 'license:expat 'license:asl2.0)))
        #t)
       (x
        (pk 'fail x #f)))))
index 01d8a57..ab4e9c9 100644 (file)
@@ -130,7 +130,7 @@ baz > 13.37")
          ('home-page "http://example.com")
          ('synopsis "summary")
          ('description "summary")
-         ('license 'lgpl2.0))
+         ('license 'license:lgpl2.0))
        (string=? (bytevector->nix-base32-string
                   test-source-hash)
                  hash))
@@ -190,7 +190,7 @@ baz > 13.37")
          ('home-page "http://example.com")
          ('synopsis "summary")
          ('description "summary")
-         ('license 'lgpl2.0))
+         ('license 'license:lgpl2.0))
        (string=? (bytevector->nix-base32-string
                   test-source-hash)
                  hash))