1let
2
3 lib = import ./default.nix;
4
5 spdx = lic: lic // {
6 url = "http://spdx.org/licenses/${lic.spdxId}";
7 };
8
9in
10
11lib.mapAttrs (n: v: v // { shortName = n; }) rec {
12 /* License identifiers from spdx.org where possible.
13 * If you cannot find your license here, then look for a similar license or
14 * add it to this list. The URL mentioned above is a good source for inspiration.
15 */
16
17 afl21 = spdx {
18 spdxId = "AFL-2.1";
19 fullName = "Academic Free License";
20 };
21
22 agpl3 = spdx {
23 spdxId = "AGPL-3.0";
24 fullName = "GNU Affero General Public License v3.0";
25 };
26
27 agpl3Plus = {
28 fullName = "GNU Affero General Public License v3.0 or later";
29 inherit (agpl3) url;
30 };
31
32 amazonsl = {
33 fullName = "Amazon Software License";
34 url = http://aws.amazon.com/asl/;
35 free = false;
36 };
37
38 amd = {
39 fullName = "AMD License Agreement";
40 url = http://developer.amd.com/amd-license-agreement/;
41 };
42
43 apsl20 = spdx {
44 spdxId = "APSL-2.0";
45 fullName = "Apple Public Source License 2.0";
46 };
47
48 artistic1 = spdx {
49 spdxId = "Artistic-1.0";
50 fullName = "Artistic License 1.0";
51 };
52
53 artistic2 = spdx {
54 spdxId = "Artistic-2.0";
55 fullName = "Artistic License 2.0";
56 };
57
58 asl20 = spdx {
59 spdxId = "Apache-2.0";
60 fullName = "Apache License 2.0";
61 };
62
63 boost = spdx {
64 spdxId = "BSL-1.0";
65 fullName = "Boost Software License 1.0";
66 };
67
68 bsd2 = spdx {
69 spdxId = "BSD-2-Clause";
70 fullName = ''BSD 2-clause "Simplified" License'';
71 };
72
73 bsd3 = spdx {
74 spdxId = "BSD-3-Clause";
75 fullName = ''BSD 3-clause "New" or "Revised" License'';
76 };
77
78 bsdOriginal = spdx {
79 spdxId = "BSD-4-Clause";
80 fullName = ''BSD 4-clause "Original" or "Old" License'';
81 };
82
83 cc0 = spdx {
84 spdxId = "CC0-1.0";
85 fullName = "Creative Commons Zero v1.0 Universal";
86 };
87
88 cc-by-sa-25 = spdx {
89 spdxId = "CC-BY-SA-2.5";
90 fullName = "Creative Commons Attribution Share Alike 2.5";
91 };
92
93 cc-by-30 = spdx {
94 spdxId = "CC-BY-3.0";
95 fullName = "Creative Commons Attribution 3.0";
96 };
97
98 cc-by-sa-30 = spdx {
99 spdxId = "CC-BY-SA-3.0";
100 fullName = "Creative Commons Attribution Share Alike 3.0";
101 };
102
103 cc-by-40 = spdx {
104 spdxId = "CC-BY-4.0";
105 fullName = "Creative Commons Attribution 4.0";
106 };
107
108 cc-by-sa-40 = spdx {
109 spdxId = "CC-BY-SA-4.0";
110 fullName = "Creative Commons Attribution Share Alike 4.0";
111 };
112
113 cddl = spdx {
114 spdxId = "CDDL-1.0";
115 fullName = "Common Development and Distribution License 1.0";
116 };
117
118 cecill20 = spdx {
119 spdxId = "CECILL-2.0";
120 fullName = "CeCILL Free Software License Agreement v2.0";
121 };
122
123 cecill-b = spdx {
124 spdxId = "CECILL-B";
125 fullName = "CeCILL-B Free Software License Agreement";
126 };
127
128 cecill-c = spdx {
129 spdxId = "CECILL-C";
130 fullName = "CeCILL-C Free Software License Agreement";
131 };
132
133 cpl10 = spdx {
134 spdxId = "CPL-1.0";
135 fullName = "Common Public License 1.0";
136 };
137
138 efl10 = spdx {
139 spdxId = "EFL-1.0";
140 fullName = "Eiffel Forum License v1.0";
141 };
142
143 efl20 = spdx {
144 spdxId = "EFL-2.0";
145 fullName = "Eiffel Forum License v2.0";
146 };
147
148 epl10 = spdx {
149 spdxId = "EPL-1.0";
150 fullName = "Eclipse Public License 1.0";
151 };
152
153 fdl12 = spdx {
154 spdxId = "GFDL-1.2";
155 fullName = "GNU Free Documentation License v1.2";
156 };
157
158 free = {
159 fullName = "Unspecified free software license";
160 };
161
162 gpl1 = spdx {
163 spdxId = "GPL-1.0";
164 fullName = "GNU General Public License v1.0 only";
165 };
166
167 gpl1Plus = spdx {
168 spdxId = "GPL-1.0+";
169 fullName = "GNU General Public License v1.0 or later";
170 };
171
172 gpl2 = spdx {
173 spdxId = "GPL-2.0";
174 fullName = "GNU General Public License v2.0 only";
175 };
176
177 gpl2ClasspathPlus = {
178 fullName = "GNU General Public License v2.0 or later (with Classpath exception)";
179 url = https://fedoraproject.org/wiki/Licensing/GPL_Classpath_Exception;
180 };
181
182 gpl2Oss = {
183 fullName = "GNU General Public License version 2 only (with OSI approved licenses linking exception)";
184 url = http://www.mysql.com/about/legal/licensing/foss-exception;
185 };
186
187 gpl2Plus = spdx {
188 spdxId = "GPL-2.0+";
189 fullName = "GNU General Public License v2.0 or later";
190 };
191
192 gpl3 = spdx {
193 spdxId = "GPL-3.0";
194 fullName = "GNU General Public License v3.0 only";
195 };
196
197 gpl3Plus = spdx {
198 spdxId = "GPL-3.0+";
199 fullName = "GNU General Public License v3.0 or later";
200 };
201
202 gpl3ClasspathPlus = {
203 fullName = "GNU General Public License v3.0 or later (with Classpath exception)";
204 url = https://fedoraproject.org/wiki/Licensing/GPL_Classpath_Exception;
205 };
206
207 # Intel's license, seems free
208 iasl = {
209 fullName = "iASL";
210 url = http://www.calculate-linux.org/packages/licenses/iASL;
211 };
212
213 ijg = spdx {
214 spdxId = "IJG";
215 fullName = "Independent JPEG Group License";
216 };
217
218 inria = {
219 fullName = "INRIA Non-Commercial License Agreement";
220 url = "http://compcert.inria.fr/doc/LICENSE";
221 };
222
223 ipa = spdx {
224 spdxId = "IPA";
225 fullName = "IPA Font License";
226 };
227
228 ipl10 = spdx {
229 spdxId = "IPL-1.0";
230 fullName = "IBM Public License v1.0";
231 };
232
233 isc = spdx {
234 spdxId = "ISC";
235 fullName = "ISC License";
236 };
237
238 lgpl2 = spdx {
239 spdxId = "LGPL-2.0";
240 fullName = "GNU Library General Public License v2 only";
241 };
242
243 lgpl2Plus = spdx {
244 spdxId = "LGPL-2.0+";
245 fullName = "GNU Library General Public License v2 or later";
246 };
247
248 lgpl21 = spdx {
249 spdxId = "LGPL-2.1";
250 fullName = "GNU Library General Public License v2.1 only";
251 };
252
253 lgpl21Plus = spdx {
254 spdxId = "LGPL-2.1+";
255 fullName = "GNU Library General Public License v2.1 or later";
256 };
257
258 lgpl3 = spdx {
259 spdxId = "LGPL-3.0";
260 fullName = "GNU Lesser General Public License v3.0 only";
261 };
262
263 lgpl3Plus = spdx {
264 spdxId = "LGPL-3.0+";
265 fullName = "GNU Lesser General Public License v3.0 or later";
266 };
267
268 libpng = spdx {
269 spdxId = "Libpng";
270 fullName = "libpng License";
271 };
272
273 libtiff = spdx {
274 spdxId = "libtiff";
275 fullName = "libtiff License";
276 };
277
278 llgpl21 = {
279 fullName = "Lisp LGPL; GNU Lesser General Public License version 2.1 with Franz Inc. preamble for clarification of LGPL terms in context of Lisp";
280 url = http://opensource.franz.com/preamble.html;
281 };
282
283 lppl12 = spdx {
284 spdxId = "LPPL-1.2";
285 fullName = "LaTeX Project Public License v1.2";
286 };
287
288 lppl13c = spdx {
289 spdxId = "LPPL-1.3c";
290 fullName = "LaTeX Project Public License v1.3c";
291 };
292
293 lpl-102 = spdx {
294 spdxId = "LPL-1.02";
295 fullName = "Lucent Public License v1.02";
296 };
297
298 # spdx.org does not (yet) differentiate between the X11 and Expat versions
299 # for details see http://en.wikipedia.org/wiki/MIT_License#Various_versions
300 mit = spdx {
301 spdxId = "MIT";
302 fullName = "MIT License";
303 };
304
305 mpl10 = spdx {
306 spdxId = "MPL-1.0";
307 fullName = "Mozilla Public License 1.0";
308 };
309
310 mpl11 = spdx {
311 spdxId = "MPL-1.1";
312 fullName = "Mozilla Public License 1.1";
313 };
314
315 mpl20 = spdx {
316 spdxId = "MPL-2.0";
317 fullName = "Mozilla Public License 2.0";
318 };
319
320 msrla = {
321 fullName = "Microsoft Research License Agreement";
322 url = "http://research.microsoft.com/en-us/projects/pex/msr-la.txt";
323 };
324
325 ncsa = spdx {
326 spdxId = "NCSA";
327 fullName = "University of Illinois/NCSA Open Source License";
328 };
329
330 notion_lgpl = {
331 url = "https://raw.githubusercontent.com/raboof/notion/master/LICENSE";
332 fullName = "Notion modified LGPL";
333 };
334
335 ofl = spdx {
336 spdxId = "OFL-1.1";
337 fullName = "SIL Open Font License 1.1";
338 };
339
340 openldap = spdx {
341 spdxId = "OLDAP-2.8";
342 fullName = "Open LDAP Public License v2.8";
343 };
344
345 openssl = spdx {
346 spdxId = "OpenSSL";
347 fullName = "OpenSSL License";
348 };
349
350 php301 = spdx {
351 spdxId = "PHP-3.01";
352 fullName = "PHP License v3.01";
353 };
354
355 postgresql = spdx {
356 spdxId = "PostgreSQL";
357 fullName = "PostgreSQL License";
358 };
359
360 psfl = spdx {
361 spdxId = "Python-2.0";
362 fullName = "Python Software Foundation License version 2";
363 #url = http://docs.python.org/license.html;
364 };
365
366 publicDomain = {
367 fullName = "Public Domain";
368 };
369
370 qpl = spdx {
371 spdxId = "QPL-1.0";
372 fullName = "Q Public License 1.0";
373 };
374
375 qwt = {
376 fullName = "Qwt License, Version 1.0";
377 url = http://qwt.sourceforge.net/qwtlicense.html;
378 };
379
380 ruby = spdx {
381 spdxId = "Ruby";
382 fullName = "Ruby License";
383 };
384
385 sgi-b-20 = spdx {
386 spdxId = "SGI-B-2.0";
387 fullName = "SGI Free Software License B v2.0";
388 };
389
390 sleepycat = spdx {
391 spdxId = "Sleepycat";
392 fullName = "Sleepycat License";
393 };
394
395 tcltk = spdx {
396 spdxId = "TCL";
397 fullName = "TCL/TK License";
398 };
399
400 unfree = {
401 fullName = "Unfree";
402 free = false;
403 };
404
405 unfreeRedistributable = {
406 fullName = "Unfree redistributable";
407 free = false;
408 };
409
410 unfreeRedistributableFirmware = {
411 fullName = "Unfree redistributable firmware";
412 # Note: we currently consider these "free" for inclusion in the
413 # channel and NixOS images.
414 };
415
416 unlicense = spdx {
417 spdxId = "Unlicense";
418 fullName = "The Unlicense";
419 };
420
421 vim = spdx {
422 spdxId = "Vim";
423 fullName = "Vim License";
424 };
425
426 vsl10 = spdx {
427 spdxId = "VSL-1.0";
428 fullName = "Vovida Software License v1.0";
429 };
430
431 w3c = spdx {
432 spdxId = "W3C";
433 fullName = "W3C Software Notice and License";
434 };
435
436 wadalab = {
437 fullName = "Wadalab Font License";
438 url = https://fedoraproject.org/wiki/Licensing:Wadalab?rd=Licensing/Wadalab;
439 };
440
441 wtfpl = spdx {
442 spdxId = "WTFPL";
443 fullName = "Do What The F*ck You Want To Public License";
444 };
445
446 zlib = spdx {
447 spdxId = "Zlib";
448 fullName = "zlib License";
449 };
450
451 zpt20 = spdx { # FIXME: why zpt* instead of zpl*
452 spdxId = "ZPL-2.0";
453 fullName = "Zope Public License 2.0";
454 };
455
456 zpt21 = spdx {
457 spdxId = "ZPL-2.1";
458 fullName = "Zope Public License 2.1";
459 };
460
461}