Update license headers.
[jackhill/guix/guix.git] / guix / licenses.scm
1 ;;; GNU Guix --- Functional package management for GNU
2 ;;; Copyright © 2012 Ludovic Courtès <ludo@gnu.org>
3 ;;; Copyright © 2012 Nikita Karetnikov <nikita@karetnikov.org>
4 ;;;
5 ;;; This file is part of GNU Guix.
6 ;;;
7 ;;; GNU Guix is free software; you can redistribute it and/or modify it
8 ;;; under the terms of the GNU General Public License as published by
9 ;;; the Free Software Foundation; either version 3 of the License, or (at
10 ;;; your option) any later version.
11 ;;;
12 ;;; GNU Guix is distributed in the hope that it will be useful, but
13 ;;; WITHOUT ANY WARRANTY; without even the implied warranty of
14 ;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15 ;;; GNU General Public License for more details.
16 ;;;
17 ;;; You should have received a copy of the GNU General Public License
18 ;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>.
19
20 (define-module (guix licenses)
21 #:use-module (srfi srfi-9)
22 #:export (license? license-name license-uri license-comment
23 asl2.0
24 boost1.0
25 bsd-2 bsd-3 bsd-4 bsd-style
26 cddl1.0
27 cpl1.0
28 epl1.0
29 expat
30 gpl1 gpl1+ gpl2 gpl2+ gpl3 gpl3+
31 ijg
32 ibmpl1.0
33 lgpl2.0 lgpl2.0+ lgpl2.1 lgpl2.1+ lgpl3 lgpl3+
34 mpl2.0
35 openssl
36 public-domain
37 x11
38 zlib))
39
40 (define-record-type <license>
41 (license name uri comment)
42 license?
43 (name license-name)
44 (uri license-uri)
45 (comment license-comment))
46
47 ;;; Commentary:
48 ;;;
49 ;;; Available licenses.
50 ;;;
51 ;;; This list is based on these links:
52 ;;; https://github.com/NixOS/nixpkgs/blob/master/pkgs/lib/licenses.nix
53 ;;; https://www.gnu.org/licenses/license-list
54 ;;;
55 ;;; Code:
56
57 (define asl2.0
58 (license "ASL 2.0"
59 "http://directory.fsf.org/wiki/License:Apache2.0"
60 "https://www.gnu.org/licenses/license-list#apache2"))
61
62 (define boost1.0
63 (license "Boost 1.0"
64 "http://directory.fsf.org/wiki/License:Boost1.0"
65 "https://www.gnu.org/licenses/license-list#boost"))
66
67 (define bsd-2
68 (license "FreeBSD"
69 "http://directory.fsf.org/wiki/License:FreeBSD"
70 "https://www.gnu.org/licenses/license-list#FreeBSD"))
71
72 (define bsd-3
73 (license "Modified BSD"
74 "http://directory.fsf.org/wiki/License:BSD_3Clause"
75 "https://www.gnu.org/licenses/license-list#ModifiedBSD"))
76
77 (define bsd-4
78 (license "Original BSD"
79 "http://directory.fsf.org/wiki/License:BSD_4Clause"
80 "https://www.gnu.org/licenses/license-list#OriginalBSD"))
81
82 (define* (bsd-style uri #:optional (comment ""))
83 "Return a BSD-style license, whose full text can be found at URI,
84 which may be a file:// URI pointing the package's tree."
85 (license "BSD-style"
86 uri
87 (string-append
88 "This is a BSD-style, non-copyleft free software license. "
89 "Check the URI for details. "
90 comment)))
91
92 (define cddl1.0
93 (license "CDDL 1.0"
94 "http://directory.fsf.org/wiki/License:CDDLv1.0"
95 "https://www.gnu.org/licenses/license-list#CDDL"))
96
97 (define cpl1.0
98 (license "CPL 1.0"
99 "http://directory.fsf.org/wiki/License:CPLv1.0"
100 "https://www.gnu.org/licenses/license-list#CommonPublicLicense10"))
101
102 (define epl1.0
103 (license "EPL 1.0"
104 "http://directory.fsf.org/wiki/License:EPLv1.0"
105 "https://www.gnu.org/licenses/license-list#EPL"))
106
107 (define expat
108 (license "Expat"
109 "http://directory.fsf.org/wiki/License:Expat"
110 "https://www.gnu.org/licenses/license-list.html#Expat"))
111
112 (define gpl1
113 (license "GPL 1"
114 "https://www.gnu.org/licenses/old-licenses/gpl-1.0.html"
115 #f))
116
117 (define gpl1+
118 (license "GPL 1+"
119 "https://www.gnu.org/licenses/old-licenses/gpl-1.0.html"
120 #f))
121
122 (define gpl2
123 (license "GPL 2"
124 "https://www.gnu.org/licenses/old-licenses/gpl-2.0.html"
125 "https://www.gnu.org/licenses/license-list#GPLv2"))
126
127 (define gpl2+
128 (license "GPL 2+"
129 "https://www.gnu.org/licenses/old-licenses/gpl-2.0.html"
130 "https://www.gnu.org/licenses/license-list#GPLv2"))
131
132 (define gpl3
133 (license "GPL 3"
134 "https://www.gnu.org/licenses/gpl.html"
135 "https://www.gnu.org/licenses/license-list#GNUGPLv3"))
136
137 (define gpl3+
138 (license "GPL 3+"
139 "https://www.gnu.org/licenses/gpl.html"
140 "https://www.gnu.org/licenses/license-list#GNUGPLv3"))
141
142 (define ijg
143 (license "IJG"
144 "http://directory.fsf.org/wiki/License:JPEG"
145 "https://www.gnu.org/licenses/license-list#ijg"))
146
147 (define ibmpl1.0
148 (license "IBMPL 1.0"
149 "http://directory.fsf.org/wiki/License:IBMPLv1.0"
150 "https://www.gnu.org/licenses/license-list#IBMPL"))
151
152 (define lgpl2.0
153 (license "LGPL 2.0"
154 "https://www.gnu.org/licenses/old-licenses/lgpl-2.0.html"
155 "https://www.gnu.org/licenses/why-not-lgpl.html"))
156
157 (define lgpl2.0+
158 (license "LGPL 2.0+"
159 "https://www.gnu.org/licenses/old-licenses/lgpl-2.0.html"
160 "https://www.gnu.org/licenses/why-not-lgpl.html"))
161
162 (define lgpl2.1
163 (license "LGPL 2.1"
164 "https://www.gnu.org/licenses/old-licenses/lgpl-2.1.html"
165 "https://www.gnu.org/licenses/license-list#LGPLv2.1"))
166
167 (define lgpl2.1+
168 (license "LGPL 2.1+"
169 "https://www.gnu.org/licenses/old-licenses/lgpl-2.1.html"
170 "https://www.gnu.org/licenses/license-list#LGPLv2.1"))
171
172 (define lgpl3
173 (license "LGPL 3"
174 "https://www.gnu.org/licenses/lgpl.html"
175 "https://www.gnu.org/licenses/license-list#LGPLv3"))
176
177 (define lgpl3+
178 (license "LGPL 3+"
179 "https://www.gnu.org/licenses/lgpl.html"
180 "https://www.gnu.org/licenses/license-list#LGPLv3"))
181
182 (define mpl2.0
183 (license "MPL 2.0"
184 "http://directory.fsf.org/wiki/License:MPLv2.0"
185 "https://www.gnu.org/licenses/license-list#MPL-2.0"))
186
187 (define openssl
188 (license "OpenSSL"
189 "http://directory.fsf.org/wiki/License:OpenSSL"
190 "https://www.gnu.org/licenses/license-list#OpenSSL"))
191
192 (define public-domain
193 (license "Public Domain"
194 "http://directory.fsf.org/wiki/License:PublicDomain"
195 "https://www.gnu.org/licenses/license-list#PublicDomain"))
196
197 (define x11
198 (license "X11"
199 "http://directory.fsf.org/wiki/License:X11"
200 "https://www.gnu.org/licenses/license-list#X11License"))
201
202 (define zlib
203 (license "Zlib"
204 "http://www.gzip.org/zlib/zlib_license.html"
205 "https://www.gnu.org/licenses/license-list#ZLib"))
206
207 ;;; licenses.scm ends here