Commit | Line | Data |
---|---|---|
233e7676 | 1 | ;;; GNU Guix --- Functional package management for GNU |
66ea6713 | 2 | ;;; Copyright © 2012, 2014 Ludovic Courtès <ludo@gnu.org> |
1ca98280 | 3 | ;;; Copyright © 2013 Andreas Enge <andreas@enge.fr> |
e2034de5 | 4 | ;;; Copyright © 2012, 2013 Nikita Karetnikov <nikita@karetnikov.org> |
838d78e3 | 5 | ;;; |
233e7676 | 6 | ;;; This file is part of GNU Guix. |
838d78e3 | 7 | ;;; |
233e7676 | 8 | ;;; GNU Guix is free software; you can redistribute it and/or modify it |
838d78e3 NK |
9 | ;;; under the terms of the GNU General Public License as published by |
10 | ;;; the Free Software Foundation; either version 3 of the License, or (at | |
11 | ;;; your option) any later version. | |
12 | ;;; | |
233e7676 | 13 | ;;; GNU Guix is distributed in the hope that it will be useful, but |
838d78e3 NK |
14 | ;;; WITHOUT ANY WARRANTY; without even the implied warranty of |
15 | ;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | |
16 | ;;; GNU General Public License for more details. | |
17 | ;;; | |
18 | ;;; You should have received a copy of the GNU General Public License | |
233e7676 | 19 | ;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>. |
838d78e3 NK |
20 | |
21 | (define-module (guix licenses) | |
22 | #:use-module (srfi srfi-9) | |
23 | #:export (license? license-name license-uri license-comment | |
ef7cf291 | 24 | agpl3 agpl3+ |
838d78e3 NK |
25 | asl2.0 |
26 | boost1.0 | |
f15b31c5 | 27 | bsd-2 bsd-3 bsd-4 bsd-style |
838d78e3 NK |
28 | cddl1.0 |
29 | cpl1.0 | |
30 | epl1.0 | |
f15b31c5 | 31 | expat |
b387a1c5 | 32 | freetype |
f15b31c5 | 33 | gpl1 gpl1+ gpl2 gpl2+ gpl3 gpl3+ |
66ea6713 | 34 | fdl1.3+ |
b1426f17 | 35 | isc |
838d78e3 NK |
36 | ijg |
37 | ibmpl1.0 | |
f15b31c5 | 38 | lgpl2.0 lgpl2.0+ lgpl2.1 lgpl2.1+ lgpl3 lgpl3+ |
838d78e3 | 39 | mpl2.0 |
1ca98280 | 40 | openldap2.8 openssl |
e2034de5 | 41 | psfl public-domain |
d192efae | 42 | qpl |
99e6c1b1 | 43 | vim |
bbd60260 | 44 | x11 x11-style |
6d36a6f3 AE |
45 | zlib |
46 | fsf-free)) | |
838d78e3 NK |
47 | |
48 | (define-record-type <license> | |
49 | (license name uri comment) | |
50 | license? | |
51 | (name license-name) | |
52 | (uri license-uri) | |
53 | (comment license-comment)) | |
54 | ||
55 | ;;; Commentary: | |
56 | ;;; | |
57 | ;;; Available licenses. | |
58 | ;;; | |
59 | ;;; This list is based on these links: | |
60 | ;;; https://github.com/NixOS/nixpkgs/blob/master/pkgs/lib/licenses.nix | |
61 | ;;; https://www.gnu.org/licenses/license-list | |
62 | ;;; | |
63 | ;;; Code: | |
64 | ||
ef7cf291 NK |
65 | (define agpl3 |
66 | (license "AGPL 3" | |
67 | "https://gnu.org/licenses/agpl.html" | |
68 | "https://gnu.org/licenses/why-affero-gpl.html")) | |
69 | ||
70 | (define agpl3+ | |
71 | (license "AGPL 3+" | |
72 | "https://gnu.org/licenses/agpl.html" | |
73 | "https://gnu.org/licenses/why-affero-gpl.html")) | |
74 | ||
838d78e3 NK |
75 | (define asl2.0 |
76 | (license "ASL 2.0" | |
77 | "http://directory.fsf.org/wiki/License:Apache2.0" | |
78 | "https://www.gnu.org/licenses/license-list#apache2")) | |
79 | ||
80 | (define boost1.0 | |
81 | (license "Boost 1.0" | |
82 | "http://directory.fsf.org/wiki/License:Boost1.0" | |
83 | "https://www.gnu.org/licenses/license-list#boost")) | |
84 | ||
85 | (define bsd-2 | |
86 | (license "FreeBSD" | |
87 | "http://directory.fsf.org/wiki/License:FreeBSD" | |
88 | "https://www.gnu.org/licenses/license-list#FreeBSD")) | |
89 | ||
90 | (define bsd-3 | |
91 | (license "Modified BSD" | |
92 | "http://directory.fsf.org/wiki/License:BSD_3Clause" | |
93 | "https://www.gnu.org/licenses/license-list#ModifiedBSD")) | |
94 | ||
95 | (define bsd-4 | |
96 | (license "Original BSD" | |
97 | "http://directory.fsf.org/wiki/License:BSD_4Clause" | |
98 | "https://www.gnu.org/licenses/license-list#OriginalBSD")) | |
99 | ||
f15b31c5 NK |
100 | (define* (bsd-style uri #:optional (comment "")) |
101 | "Return a BSD-style license, whose full text can be found at URI, | |
102 | which may be a file:// URI pointing the package's tree." | |
103 | (license "BSD-style" | |
104 | uri | |
105 | (string-append | |
106 | "This is a BSD-style, non-copyleft free software license. " | |
107 | "Check the URI for details. " | |
108 | comment))) | |
109 | ||
838d78e3 NK |
110 | (define cddl1.0 |
111 | (license "CDDL 1.0" | |
112 | "http://directory.fsf.org/wiki/License:CDDLv1.0" | |
113 | "https://www.gnu.org/licenses/license-list#CDDL")) | |
114 | ||
115 | (define cpl1.0 | |
116 | (license "CPL 1.0" | |
117 | "http://directory.fsf.org/wiki/License:CPLv1.0" | |
118 | "https://www.gnu.org/licenses/license-list#CommonPublicLicense10")) | |
119 | ||
120 | (define epl1.0 | |
121 | (license "EPL 1.0" | |
122 | "http://directory.fsf.org/wiki/License:EPLv1.0" | |
123 | "https://www.gnu.org/licenses/license-list#EPL")) | |
124 | ||
f15b31c5 NK |
125 | (define expat |
126 | (license "Expat" | |
127 | "http://directory.fsf.org/wiki/License:Expat" | |
128 | "https://www.gnu.org/licenses/license-list.html#Expat")) | |
129 | ||
b387a1c5 AE |
130 | (define freetype |
131 | (license "Freetype" | |
132 | "http://directory.fsf.org/wiki/License:Freetype" | |
133 | "https://www.gnu.org/licenses/license-list.html#freetype")) | |
134 | ||
f15b31c5 NK |
135 | (define gpl1 |
136 | (license "GPL 1" | |
137 | "https://www.gnu.org/licenses/old-licenses/gpl-1.0.html" | |
138 | #f)) | |
139 | ||
140 | (define gpl1+ | |
141 | (license "GPL 1+" | |
142 | "https://www.gnu.org/licenses/old-licenses/gpl-1.0.html" | |
143 | #f)) | |
144 | ||
838d78e3 NK |
145 | (define gpl2 |
146 | (license "GPL 2" | |
147 | "https://www.gnu.org/licenses/old-licenses/gpl-2.0.html" | |
148 | "https://www.gnu.org/licenses/license-list#GPLv2")) | |
149 | ||
150 | (define gpl2+ | |
151 | (license "GPL 2+" | |
152 | "https://www.gnu.org/licenses/old-licenses/gpl-2.0.html" | |
153 | "https://www.gnu.org/licenses/license-list#GPLv2")) | |
154 | ||
155 | (define gpl3 | |
156 | (license "GPL 3" | |
157 | "https://www.gnu.org/licenses/gpl.html" | |
158 | "https://www.gnu.org/licenses/license-list#GNUGPLv3")) | |
159 | ||
160 | (define gpl3+ | |
161 | (license "GPL 3+" | |
162 | "https://www.gnu.org/licenses/gpl.html" | |
163 | "https://www.gnu.org/licenses/license-list#GNUGPLv3")) | |
164 | ||
66ea6713 LC |
165 | (define fdl1.3+ |
166 | (license "FDL 1.3+" | |
167 | "https://www.gnu.org/licenses/fdl.html" | |
168 | "https://www.gnu.org/licenses/license-list#FDL")) | |
169 | ||
b1426f17 CR |
170 | (define isc |
171 | (license "ISC" | |
172 | "http://directory.fsf.org/wiki/License:ISC" | |
173 | "https://www.gnu.org/licenses/license-list.html#ISC")) | |
174 | ||
838d78e3 NK |
175 | (define ijg |
176 | (license "IJG" | |
177 | "http://directory.fsf.org/wiki/License:JPEG" | |
178 | "https://www.gnu.org/licenses/license-list#ijg")) | |
179 | ||
180 | (define ibmpl1.0 | |
181 | (license "IBMPL 1.0" | |
182 | "http://directory.fsf.org/wiki/License:IBMPLv1.0" | |
183 | "https://www.gnu.org/licenses/license-list#IBMPL")) | |
184 | ||
f15b31c5 NK |
185 | (define lgpl2.0 |
186 | (license "LGPL 2.0" | |
187 | "https://www.gnu.org/licenses/old-licenses/lgpl-2.0.html" | |
188 | "https://www.gnu.org/licenses/why-not-lgpl.html")) | |
189 | ||
190 | (define lgpl2.0+ | |
191 | (license "LGPL 2.0+" | |
192 | "https://www.gnu.org/licenses/old-licenses/lgpl-2.0.html" | |
193 | "https://www.gnu.org/licenses/why-not-lgpl.html")) | |
194 | ||
838d78e3 NK |
195 | (define lgpl2.1 |
196 | (license "LGPL 2.1" | |
197 | "https://www.gnu.org/licenses/old-licenses/lgpl-2.1.html" | |
198 | "https://www.gnu.org/licenses/license-list#LGPLv2.1")) | |
199 | ||
200 | (define lgpl2.1+ | |
201 | (license "LGPL 2.1+" | |
202 | "https://www.gnu.org/licenses/old-licenses/lgpl-2.1.html" | |
203 | "https://www.gnu.org/licenses/license-list#LGPLv2.1")) | |
204 | ||
205 | (define lgpl3 | |
206 | (license "LGPL 3" | |
207 | "https://www.gnu.org/licenses/lgpl.html" | |
208 | "https://www.gnu.org/licenses/license-list#LGPLv3")) | |
209 | ||
210 | (define lgpl3+ | |
211 | (license "LGPL 3+" | |
212 | "https://www.gnu.org/licenses/lgpl.html" | |
213 | "https://www.gnu.org/licenses/license-list#LGPLv3")) | |
214 | ||
215 | (define mpl2.0 | |
216 | (license "MPL 2.0" | |
217 | "http://directory.fsf.org/wiki/License:MPLv2.0" | |
218 | "https://www.gnu.org/licenses/license-list#MPL-2.0")) | |
219 | ||
220 | (define openssl | |
221 | (license "OpenSSL" | |
222 | "http://directory.fsf.org/wiki/License:OpenSSL" | |
223 | "https://www.gnu.org/licenses/license-list#OpenSSL")) | |
224 | ||
1ca98280 AE |
225 | (define openldap2.8 |
226 | (license "OpenLDAPv2.8" | |
227 | "http://directory.fsf.org/wiki/License:OpenLDAPv2.8" | |
228 | "https://www.gnu.org/licenses/license-list#newOpenLDAP")) | |
229 | ;; lists OpenLDAPv2.7, which is virtually identical | |
230 | ||
e2034de5 NK |
231 | (define psfl |
232 | (license "Python Software Foundation License" | |
233 | "http://docs.python.org/license.html" | |
234 | #f)) | |
235 | ||
838d78e3 NK |
236 | (define public-domain |
237 | (license "Public Domain" | |
238 | "http://directory.fsf.org/wiki/License:PublicDomain" | |
239 | "https://www.gnu.org/licenses/license-list#PublicDomain")) | |
240 | ||
d192efae CR |
241 | (define qpl |
242 | (license "QPL" | |
243 | "http://directory.fsf.org/wiki/License:QPLv1.0" | |
244 | "http://www.gnu.org/licenses/license-list.html#QPL")) | |
245 | ||
99e6c1b1 AE |
246 | (define vim |
247 | (license "Vim" | |
248 | "http://directory.fsf.org/wiki/License:Vim7.2" | |
249 | "http://www.gnu.org/licenses/license-list.html#Vim")) | |
250 | ||
838d78e3 NK |
251 | (define x11 |
252 | (license "X11" | |
253 | "http://directory.fsf.org/wiki/License:X11" | |
254 | "https://www.gnu.org/licenses/license-list#X11License")) | |
255 | ||
bbd60260 NK |
256 | (define* (x11-style uri #:optional (comment "")) |
257 | "Return an X11-style license, whose full text can be found at URI, | |
258 | which may be a file:// URI pointing the package's tree." | |
259 | (license "X11-style" | |
260 | uri | |
261 | (string-append | |
262 | "This is an X11-style, non-copyleft free software license. " | |
263 | "Check the URI for details. " | |
264 | comment))) | |
265 | ||
838d78e3 NK |
266 | (define zlib |
267 | (license "Zlib" | |
268 | "http://www.gzip.org/zlib/zlib_license.html" | |
269 | "https://www.gnu.org/licenses/license-list#ZLib")) | |
270 | ||
6d36a6f3 AE |
271 | (define* (fsf-free uri #:optional (comment "")) |
272 | "Return a license that does not fit any of the ones above or a collection | |
273 | of licenses, approved as free by the FSF. More details can be found at URI." | |
274 | (license "FSF-free" | |
275 | uri | |
276 | comment)) | |
277 | ||
838d78e3 | 278 | ;;; licenses.scm ends here |