Subject: [PATCH] guix: import: Add licences and their detection.

From: Attila Lendvai <[email-masked]>
Date: Tue, 2 Nov 2021 11:03:10 +0100

* guix/licenses.scm (json): New variable.
* guix/import/utils.scm (spdx-string->license): Identify more.
---

the added comments deliberately mention the alternative names
to help with grep'ping.

 guix/import/utils.scm |  4 ++++
 guix/licenses.scm     | 10 ++++++++++
 2 files changed, 14 insertions(+)

diff --git a/guix/import/utils.scm b/guix/import/utils.scm
index a180742ca3..9ac3f3086d 100644
--- a/guix/import/utils.scm
+++ b/guix/import/utils.scm
@@ -152,6 +152,7 @@ (define (spdx-string->license str)
     ("CC0-1.0"                     'license:cc0)
     ("CC-BY-2.0"                   'license:cc-by2.0)
     ("CC-BY-3.0"                   'license:cc-by3.0)
+    ("CC-BY-4.0"                   'license:cc-by4.0)
     ("CC-BY-SA-2.0"                'license:cc-by-sa2.0)
     ("CC-BY-SA-3.0"                'license:cc-by-sa3.0)
     ("CC-BY-SA-4.0"                'license:cc-by-sa4.0)
@@ -163,6 +164,7 @@ (define (spdx-string->license str)
     ("EPL-1.0"                     'license:epl1.0)
     ("MIT"                         'license:expat)
     ("FTL"                         'license:freetype)
+    ("Freetype"                    'license:freetype)
     ("GFDL-1.1"                    'license:fdl1.1+)
     ("GFDL-1.2"                    'license:fdl1.2+)
     ("GFDL-1.3"                    'license:fdl1.3+)
@@ -179,11 +181,13 @@ (define (spdx-string->license str)
     ("GPL-3.0-only"                'license:gpl3)
     ("GPL-3.0+"                    'license:gpl3+)
     ("GPL-3.0-or-later"            'license:gpl3+)
+    ("HPND"                        'license:hpnd)
     ("ISC"                         'license:isc)
     ("IJG"                         'license:ijg)
     ("Imlib2"                      'license:imlib2)
     ("IPA"                         'license:ipa)
     ("IPL-1.0"                     'license:ibmpl1.0)
+    ("JSON"                        'license:json)
     ("LAL-1.3"                     'license:lal1.3)
     ("LGPL-2.0"                    'license:lgpl2.0)
     ("LGPL-2.0-only"               'license:lgpl2.0)
diff --git a/guix/licenses.scm b/guix/licenses.scm
index c071aae4a9..ca0a1d8f6f 100644
--- a/guix/licenses.scm
+++ b/guix/licenses.scm
@@ -70,6 +70,7 @@ (define-module (guix licenses)
             ibmpl1.0
             imlib2
             ipa
+            json
             knuth
             lal1.3
             lgpl2.0 lgpl2.0+ lgpl2.1 lgpl2.1+ lgpl3 lgpl3+ llgpl
@@ -308,6 +309,8 @@ (define eupl1.2
            "https://directory.fsf.org/wiki/License:EUPL-1.2"
            "https://www.gnu.org/licenses/license-list#EUPL-1.2"))
 
+;; Some people call it the MIT license. For clarification see:
+;; https://www.gnu.org/licenses/license-list.html#Expat
 (define expat
   (license "Expat"
            "http://directory.fsf.org/wiki/License:Expat"
@@ -415,6 +418,13 @@ (define ipa
            "http://directory.fsf.org/wiki/License:IPA_Font_License"
            "https://www.gnu.org/licenses/license-list#IPAFONT"))
 
+(define json
+  (license "JSON License"
+           "https://json.org/license.html"
+           "https://directory.fsf.org/wiki/License:JSON"
+           ;; "https://spdx.org/licenses/JSON.html"
+           ))
+
 (define knuth
   (license "Donald Knuth's license for TeX"
            "http://www.ctan.org/license/knuth"
-- 
2.33.0