1 ;;; GNU Guix --- Functional package management for GNU
2 ;;; Copyright © 2012, 2014, 2015, 2017 Ludovic Courtès <ludo@gnu.org>
3 ;;; Copyright © 2013, 2015 Andreas Enge <andreas@enge.fr>
4 ;;; Copyright © 2012, 2013 Nikita Karetnikov <nikita@karetnikov.org>
5 ;;; Copyright © 2015 Mark H Weaver <mhw@netris.org>
6 ;;; Copyright © 2015 Ricardo Wurmus <rekado@elephly.net>
7 ;;; Copyright © 2016 Eric Bavier <bavier@member.fsf.org>
8 ;;; Copyright © 2016 Leo Famulari <leo@famulari.name>
9 ;;; Copyright © 2016 Fabian Harfert <fhmgufs@web.de>
10 ;;; Copyright © 2016 Rene Saavedra <rennes@openmailbox.org>
11 ;;; Copyright © 2016, 2017 ng0 <ng0@libertad.pw>
12 ;;; Copyright © 2017 Clément Lassieur <clement@lassieur.org>
14 ;;; This file is part of GNU Guix.
16 ;;; GNU Guix is free software; you can redistribute it and/or modify it
17 ;;; under the terms of the GNU General Public License as published by
18 ;;; the Free Software Foundation; either version 3 of the License, or (at
19 ;;; your option) any later version.
21 ;;; GNU Guix is distributed in the hope that it will be useful, but
22 ;;; WITHOUT ANY WARRANTY; without even the implied warranty of
23 ;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
24 ;;; GNU General Public License for more details.
26 ;;; You should have received a copy of the GNU General Public License
27 ;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>.
29 (define-module (guix licenses)
30 #:use-module (srfi srfi-9)
31 #:export (license? license-name license-uri license-comment
37 bsd-style ;deprecated!
39 cc-by2.0 cc-by3.0 cc-by-sa2.0 cc-by-sa3.0 cc-by-sa4.0
41 cecill cecill-b cecill-c
42 artistic2.0 clarified-artistic
50 gpl1 gpl1+ gpl2 gpl2+ gpl3 gpl3+
52 fdl1.1+ fdl1.2+ fdl1.3+
59 lgpl2.0 lgpl2.0+ lgpl2.1 lgpl2.1+ lgpl3 lgpl3+
82 (define-record-type <license>
83 (license name uri comment)
87 (comment license-comment))
91 ;;; Available licenses.
93 ;;; This list is based on these links:
94 ;;; https://github.com/NixOS/nixpkgs/blob/master/lib/licenses.nix
95 ;;; https://www.gnu.org/licenses/license-list
101 "https://gnu.org/licenses/agpl.html"
102 "https://gnu.org/licenses/why-affero-gpl.html"))
106 "https://gnu.org/licenses/agpl.html"
107 "https://gnu.org/licenses/why-affero-gpl.html"))
111 "https://gnu.org/licenses/agpl.html"
112 "https://gnu.org/licenses/why-affero-gpl.html"))
116 "http://directory.fsf.org/wiki/License:Apache1.1"
117 "https://www.gnu.org/licenses/license-list#apache1"))
121 "http://directory.fsf.org/wiki/License:Apache2.0"
122 "https://www.gnu.org/licenses/license-list#apache2"))
126 "http://directory.fsf.org/wiki/License:Boost1.0"
127 "https://www.gnu.org/licenses/license-list#boost"))
131 "http://directory.fsf.org/wiki/License:FreeBSD"
132 "https://www.gnu.org/licenses/license-list#FreeBSD"))
135 (license "Modified BSD"
136 "http://directory.fsf.org/wiki/License:BSD_3Clause"
137 "https://www.gnu.org/licenses/license-list#ModifiedBSD"))
140 (license "Original BSD"
141 "http://directory.fsf.org/wiki/License:BSD_4Clause"
142 "https://www.gnu.org/licenses/license-list#OriginalBSD"))
144 (define* (non-copyleft uri #:optional (comment ""))
145 "Return a lax, permissive, non-copyleft license (for example a variant of
146 the 3-clause BSD license or the Expat license), whose full text can be found
147 at URI, which may be a file:// URI pointing the package's tree."
148 (license "non-copyleft"
151 "This is a lax, non-copyleft free software license. "
152 "Check the URI for details. "
156 ;; This alias is kept for backward-compatibility. Do not use it for new
157 ;; packages: it is ambiguous, as rightfully explained at
158 ;; <http://www.gnu.org/philosophy/words-to-avoid.html#BSD-style>.
163 "http://directory.fsf.org/wiki/License:CC0"
164 "http://www.gnu.org/licenses/license-list.html#CC0"))
167 (license "CC-BY-SA 4.0"
168 "http://creativecommons.org/licenses/by-sa/4.0/"
169 "Creative Commons Attribution-ShareAlike 4.0 International"))
172 (license "CC-BY-SA 3.0"
173 "http://creativecommons.org/licenses/by-sa/3.0/"
174 "Creative Commons Attribution-ShareAlike 3.0 Unported"))
177 (license "CC-BY-SA 2.0"
178 "http://creativecommons.org/licenses/by-sa/2.0/"
179 "Creative Commons Attribution-ShareAlike 2.0 Generic"))
183 "http://creativecommons.org/licenses/by/3.0/"
184 "Creative Commons Attribution 3.0 Unported"))
188 "http://creativecommons.org/licenses/by/2.0/"
189 "Creative Commons Attribution 2.0 Generic"))
193 "http://directory.fsf.org/wiki/License:CDDLv1.0"
194 "https://www.gnu.org/licenses/license-list#CDDL"))
196 (define cecill ;copyleft
198 "http://www.cecill.info/licences/Licence_CeCILL_V2.1-en.html"
199 "https://www.gnu.org/licenses/license-list.html#CeCILL"))
201 (define cecill-b ;non-copyleft
203 "http://www.cecill.info/licences/Licence_CeCILL-B_V1-en.html"
204 "https://www.gnu.org/licenses/license-list.html#CeCILL"))
206 (define cecill-c ;weak copyleft
208 "http://www.cecill.info/licences/Licence_CeCILL-C_V1-en.html"
209 "https://www.gnu.org/licenses/license-list.html#CeCILL"))
212 (license "Artistic License 2.0"
213 "http://www.perlfoundation.org/artistic_license_2_0"
214 "http://www.gnu.org/licenses/license-list.html#ArtisticLicense2"))
216 (define clarified-artistic
217 (license "Clarified Artistic"
218 ;; http://directory.fsf.org/wiki/User:Jgay/license-categorization#Clarified_Artistic_License
219 "http://gianluca.dellavedova.org/2011/01/03/clarified-artistic-license/"
220 "https://www.gnu.org/licenses/license-list.html#ArtisticLicense2"))
222 (define copyleft-next
223 (license "copyleft-next"
224 "https://raw.github.com/richardfontana/copyleft-next/master/Releases/copyleft-next-0.3.0"
225 "GPL-compatible copyleft license"))
229 "http://directory.fsf.org/wiki/License:CPLv1.0"
230 "https://www.gnu.org/licenses/license-list#CommonPublicLicense10"))
234 "http://directory.fsf.org/wiki/License:EPLv1.0"
235 "https://www.gnu.org/licenses/license-list#EPL"))
239 "http://directory.fsf.org/wiki/License:Expat"
240 "https://www.gnu.org/licenses/license-list.html#Expat"))
244 "http://directory.fsf.org/wiki/License:Freetype"
245 "https://www.gnu.org/licenses/license-list.html#freetype"))
249 "http://liballeg.org/license.html"
250 "The Allegro 4 license"))
254 "https://www.gnu.org/licenses/old-licenses/gpl-1.0.html"
259 "https://www.gnu.org/licenses/old-licenses/gpl-1.0.html"
264 "https://www.gnu.org/licenses/old-licenses/gpl-2.0.html"
265 "https://www.gnu.org/licenses/license-list#GPLv2"))
269 "https://www.gnu.org/licenses/old-licenses/gpl-2.0.html"
270 "https://www.gnu.org/licenses/license-list#GPLv2"))
274 "https://www.gnu.org/licenses/gpl.html"
275 "https://www.gnu.org/licenses/license-list#GNUGPLv3"))
279 "https://www.gnu.org/licenses/gpl.html"
280 "https://www.gnu.org/licenses/license-list#GNUGPLv3"))
282 ;; The “GUST font license” is legally equivalent to LPPL v1.3c as it only
283 ;; extends the LPPL with an optional request.
285 (license "GUST font license 1.0"
286 "http://www.gust.org.pl/projects/e-foundry/licenses/GUST-FONT-LICENSE.txt"
287 "https://www.gnu.org/licenses/license-list#LPPL-1.3a"))
291 "https://www.gnu.org/licenses/fdl-1.1"
292 "https://www.gnu.org/licenses/license-list#FDL"))
296 "https://www.gnu.org/licenses/fdl-1.2"
297 "https://www.gnu.org/licenses/license-list#FDL"))
301 "https://www.gnu.org/licenses/fdl.html"
302 "https://www.gnu.org/licenses/license-list#FDL"))
305 (license "FreeBSD Documentation License"
306 "https://www.freebsd.org/copyright/freebsd-doc-license.html"
307 "https://www.gnu.org/licenses/license-list.html#FreeBSDDL"))
310 (license "Open Publication License 1.0 or later"
311 "http://opencontent.org/openpub/"
312 "https://www.gnu.org/licenses/license-list#OpenPublicationL"))
316 "http://directory.fsf.org/wiki/License:ISC"
317 "https://www.gnu.org/licenses/license-list.html#ISC"))
321 "http://directory.fsf.org/wiki/License:JPEG"
322 "https://www.gnu.org/licenses/license-list#ijg"))
326 "http://directory.fsf.org/wiki/License:IBMPLv1.0"
327 "https://www.gnu.org/licenses/license-list#IBMPL"))
331 "http://directory.fsf.org/wiki/License:Imlib2"
332 "https://www.gnu.org/licenses/license-list#imlib"))
335 (license "IPA Font License"
336 "http://directory.fsf.org/wiki/License:IPA_Font_License"
337 "https://www.gnu.org/licenses/license-list#IPAFONT"))
341 "https://www.gnu.org/licenses/old-licenses/lgpl-2.0.html"
342 "https://www.gnu.org/licenses/why-not-lgpl.html"))
346 "https://www.gnu.org/licenses/old-licenses/lgpl-2.0.html"
347 "https://www.gnu.org/licenses/why-not-lgpl.html"))
351 "https://www.gnu.org/licenses/old-licenses/lgpl-2.1.html"
352 "https://www.gnu.org/licenses/license-list#LGPLv2.1"))
356 "https://www.gnu.org/licenses/old-licenses/lgpl-2.1.html"
357 "https://www.gnu.org/licenses/license-list#LGPLv2.1"))
361 "https://www.gnu.org/licenses/lgpl.html"
362 "https://www.gnu.org/licenses/license-list#LGPLv3"))
366 "https://www.gnu.org/licenses/lgpl.html"
367 "https://www.gnu.org/licenses/license-list#LGPLv3"))
371 "http://www.mozilla.org/MPL/1.0/"
372 "https://www.gnu.org/licenses/license-list.html#MPL"))
376 "http://directory.fsf.org/wiki/License:MPLv1.1"
377 "https://www.gnu.org/licenses/license-list#MPL"))
381 "http://directory.fsf.org/wiki/License:MPLv2.0"
382 "https://www.gnu.org/licenses/license-list#MPL-2.0"))
385 (license "Ms-PL" ;Microsoft Public License
386 "http://directory.fsf.org/wiki/License:MsPL"
387 "http://www.gnu.org/licenses/license-list.html#ms-pl"))
390 (license "NCSA/University of Illinois Open Source License"
391 "http://directory.fsf.org/wiki/License:IllinoisNCSA"
392 "https://www.gnu.org/licenses/license-list#NCSA"))
395 (license "Nmap license"
396 "https://svn.nmap.org/nmap/COPYING"
397 "https://fedoraproject.org/wiki/Licensing/Nmap"))
401 "http://directory.fsf.org/wiki/License:OpenSSL"
402 "https://www.gnu.org/licenses/license-list#OpenSSL"))
405 (license "OpenLDAPv2.8"
406 "http://directory.fsf.org/wiki/License:OpenLDAPv2.8"
407 "https://www.gnu.org/licenses/license-list#newOpenLDAP"))
408 ;; lists OpenLDAPv2.7, which is virtually identical
411 (license "Python Software Foundation License"
412 "http://docs.python.org/license.html"
415 (define public-domain
416 (license "Public Domain"
417 "http://directory.fsf.org/wiki/License:PublicDomain"
418 "https://www.gnu.org/licenses/license-list#PublicDomain"))
422 "http://directory.fsf.org/wiki/License:QPLv1.0"
423 "http://www.gnu.org/licenses/license-list.html#QPL"))
427 "http://repoze.org/LICENSE.txt"
428 "A BSD-like license with a clause requiring all changes to be
429 attributed by author and date."))
432 (license "Ruby License"
433 "http://directory.fsf.org/wiki/License:Ruby"
434 "https://www.ruby-lang.org/en/about/license.txt"))
437 (license "SGI Free Software License B, version 2.0"
438 "http://directory.fsf.org/wiki/License:SGIFreeBv2"
439 "https://www.gnu.org/licenses/license-list.html#SGIFreeB"))
442 (license "SIL OFL 1.1"
443 "http://scripts.sil.org/OFL_web"
444 "https://www.gnu.org/licenses/license-list#SILOFL"))
448 "http://directory.fsf.org/wiki/License:Sleepycat"
449 "https://www.gnu.org/licenses/license-list#BerkeleyDB"))
453 "http://www.tcl.tk/software/tcltk/license.html"
454 "A non-copyleft free software license from the Tcl/Tk project"))
458 "http://directory.fsf.org/wiki/License:Vim7.2"
459 "http://www.gnu.org/licenses/license-list.html#Vim"))
463 "https://unlicense.org/"
464 "https://www.gnu.org/licenses/license-list.html#Unlicense"))
468 "http://www.wtfpl.net"
469 "http://www.wtfpl.net/about/"))
473 "http://directory.fsf.org/wiki/License:X11"
474 "https://www.gnu.org/licenses/license-list#X11License"))
476 (define* (x11-style uri #:optional (comment ""))
477 "Return an X11-style license, whose full text can be found at URI,
478 which may be a file:// URI pointing the package's tree."
482 "This is an X11-style, non-copyleft free software license. "
483 "Check the URI for details. "
487 (license "Zope Public License 2.1"
488 "http://directory.fsf.org/wiki?title=License:ZopePLv2.1"
489 "https://www.gnu.org/licenses/license-list.html#Zope2.0"))
493 "http://www.gzip.org/zlib/zlib_license.html"
494 "https://www.gnu.org/licenses/license-list#ZLib"))
496 (define* (fsf-free uri #:optional (comment ""))
497 "Return a license that does not fit any of the ones above or a collection
498 of licenses, approved as free by the FSF. More details can be found at URI."
503 (define* (fsdg-compatible uri #:optional (comment ""))
504 "Return a license that does not fit any of the ones above or a collection
505 of licenses, not necessarily free, but in accordance with FSDG as Non-functional
506 Data. More details can be found at URI. See also
507 https://www.gnu.org/distros/free-system-distribution-guidelines.en.html#non-functional-data."
508 (license "FSDG-compatible"
512 ;;; licenses.scm ends here