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-nc-sa-20 = spdx {
89 spdxId = "CC-BY-NC-SA-2.0";
90 fullName = "Creative Commons Attribution Non Commercial Share Alike 2.0";
91 };
92
93 cc-by-nc-sa-25 = spdx {
94 spdxId = "CC-BY-NC-SA-2.5";
95 fullName = "Creative Commons Attribution Non Commercial Share Alike 2.5";
96 };
97
98 cc-by-nc-sa-30 = spdx {
99 spdxId = "CC-BY-NC-SA-3.0";
100 fullName = "Creative Commons Attribution Non Commercial Share Alike 3.0";
101 };
102
103 cc-by-nc-sa-40 = spdx {
104 spdxId = "CC-BY-NC-SA-4.0";
105 fullName = "Creative Commons Attribution Non Commercial Share Alike 4.0";
106 };
107
108 cc-by-sa-25 = spdx {
109 spdxId = "CC-BY-SA-2.5";
110 fullName = "Creative Commons Attribution Share Alike 2.5";
111 };
112
113 cc-by-30 = spdx {
114 spdxId = "CC-BY-3.0";
115 fullName = "Creative Commons Attribution 3.0";
116 };
117
118 cc-by-sa-30 = spdx {
119 spdxId = "CC-BY-SA-3.0";
120 fullName = "Creative Commons Attribution Share Alike 3.0";
121 };
122
123 cc-by-40 = spdx {
124 spdxId = "CC-BY-4.0";
125 fullName = "Creative Commons Attribution 4.0";
126 };
127
128 cc-by-sa-40 = spdx {
129 spdxId = "CC-BY-SA-4.0";
130 fullName = "Creative Commons Attribution Share Alike 4.0";
131 };
132
133 cddl = spdx {
134 spdxId = "CDDL-1.0";
135 fullName = "Common Development and Distribution License 1.0";
136 };
137
138 cecill20 = spdx {
139 spdxId = "CECILL-2.0";
140 fullName = "CeCILL Free Software License Agreement v2.0";
141 };
142
143 cecill-b = spdx {
144 spdxId = "CECILL-B";
145 fullName = "CeCILL-B Free Software License Agreement";
146 };
147
148 cecill-c = spdx {
149 spdxId = "CECILL-C";
150 fullName = "CeCILL-C Free Software License Agreement";
151 };
152
153 cpl10 = spdx {
154 spdxId = "CPL-1.0";
155 fullName = "Common Public License 1.0";
156 };
157
158 doc = spdx {
159 spdxId = "DOC";
160 fullName = "DOC License";
161 };
162
163 efl10 = spdx {
164 spdxId = "EFL-1.0";
165 fullName = "Eiffel Forum License v1.0";
166 };
167
168 efl20 = spdx {
169 spdxId = "EFL-2.0";
170 fullName = "Eiffel Forum License v2.0";
171 };
172
173 epl10 = spdx {
174 spdxId = "EPL-1.0";
175 fullName = "Eclipse Public License 1.0";
176 };
177
178 epson = {
179 fullName = "Seiko Epson Corporation Software License Agreement for Linux";
180 url = https://download.ebz.epson.net/dsc/du/02/eula/global/LINUX_EN.html;
181 free = false;
182 };
183
184 fdl12 = spdx {
185 spdxId = "GFDL-1.2";
186 fullName = "GNU Free Documentation License v1.2";
187 };
188
189 fdl13 = spdx {
190 spdxId = "GFDL-1.3";
191 fullName = "GNU Free Documentation License v1.3";
192 };
193
194 free = {
195 fullName = "Unspecified free software license";
196 };
197
198 g4sl = {
199 fullName = "Geant4 Software License";
200 url = https://geant4.web.cern.ch/geant4/license/LICENSE.html;
201 };
202
203 geogebra = {
204 fullName = "GeoGebra Non-Commercial License Agreement";
205 url = https://www.geogebra.org/license;
206 free = false;
207 };
208
209 gpl1 = spdx {
210 spdxId = "GPL-1.0";
211 fullName = "GNU General Public License v1.0 only";
212 };
213
214 gpl1Plus = spdx {
215 spdxId = "GPL-1.0+";
216 fullName = "GNU General Public License v1.0 or later";
217 };
218
219 gpl2 = spdx {
220 spdxId = "GPL-2.0";
221 fullName = "GNU General Public License v2.0 only";
222 };
223
224 gpl2ClasspathPlus = {
225 fullName = "GNU General Public License v2.0 or later (with Classpath exception)";
226 url = https://fedoraproject.org/wiki/Licensing/GPL_Classpath_Exception;
227 };
228
229 gpl2Oss = {
230 fullName = "GNU General Public License version 2 only (with OSI approved licenses linking exception)";
231 url = http://www.mysql.com/about/legal/licensing/foss-exception;
232 };
233
234 gpl2Plus = spdx {
235 spdxId = "GPL-2.0+";
236 fullName = "GNU General Public License v2.0 or later";
237 };
238
239 gpl3 = spdx {
240 spdxId = "GPL-3.0";
241 fullName = "GNU General Public License v3.0 only";
242 };
243
244 gpl3Plus = spdx {
245 spdxId = "GPL-3.0+";
246 fullName = "GNU General Public License v3.0 or later";
247 };
248
249 gpl3ClasspathPlus = {
250 fullName = "GNU General Public License v3.0 or later (with Classpath exception)";
251 url = https://fedoraproject.org/wiki/Licensing/GPL_Classpath_Exception;
252 };
253
254 # Intel's license, seems free
255 iasl = {
256 fullName = "iASL";
257 url = http://www.calculate-linux.org/packages/licenses/iASL;
258 };
259
260 ijg = spdx {
261 spdxId = "IJG";
262 fullName = "Independent JPEG Group License";
263 };
264
265 inria = {
266 fullName = "INRIA Non-Commercial License Agreement";
267 url = "http://compcert.inria.fr/doc/LICENSE";
268 };
269
270 ipa = spdx {
271 spdxId = "IPA";
272 fullName = "IPA Font License";
273 };
274
275 ipl10 = spdx {
276 spdxId = "IPL-1.0";
277 fullName = "IBM Public License v1.0";
278 };
279
280 isc = spdx {
281 spdxId = "ISC";
282 fullName = "ISC License";
283 };
284
285 lgpl2 = spdx {
286 spdxId = "LGPL-2.0";
287 fullName = "GNU Library General Public License v2 only";
288 };
289
290 lgpl2Plus = spdx {
291 spdxId = "LGPL-2.0+";
292 fullName = "GNU Library General Public License v2 or later";
293 };
294
295 lgpl21 = spdx {
296 spdxId = "LGPL-2.1";
297 fullName = "GNU Library General Public License v2.1 only";
298 };
299
300 lgpl21Plus = spdx {
301 spdxId = "LGPL-2.1+";
302 fullName = "GNU Library General Public License v2.1 or later";
303 };
304
305 lgpl3 = spdx {
306 spdxId = "LGPL-3.0";
307 fullName = "GNU Lesser General Public License v3.0 only";
308 };
309
310 lgpl3Plus = spdx {
311 spdxId = "LGPL-3.0+";
312 fullName = "GNU Lesser General Public License v3.0 or later";
313 };
314
315 libpng = spdx {
316 spdxId = "Libpng";
317 fullName = "libpng License";
318 };
319
320 libtiff = spdx {
321 spdxId = "libtiff";
322 fullName = "libtiff License";
323 };
324
325 llgpl21 = {
326 fullName = "Lisp LGPL; GNU Lesser General Public License version 2.1 with Franz Inc. preamble for clarification of LGPL terms in context of Lisp";
327 url = http://opensource.franz.com/preamble.html;
328 };
329
330 lppl12 = spdx {
331 spdxId = "LPPL-1.2";
332 fullName = "LaTeX Project Public License v1.2";
333 };
334
335 lppl13c = spdx {
336 spdxId = "LPPL-1.3c";
337 fullName = "LaTeX Project Public License v1.3c";
338 };
339
340 lpl-102 = spdx {
341 spdxId = "LPL-1.02";
342 fullName = "Lucent Public License v1.02";
343 };
344
345 # spdx.org does not (yet) differentiate between the X11 and Expat versions
346 # for details see http://en.wikipedia.org/wiki/MIT_License#Various_versions
347 mit = spdx {
348 spdxId = "MIT";
349 fullName = "MIT License";
350 };
351
352 mpl10 = spdx {
353 spdxId = "MPL-1.0";
354 fullName = "Mozilla Public License 1.0";
355 };
356
357 mpl11 = spdx {
358 spdxId = "MPL-1.1";
359 fullName = "Mozilla Public License 1.1";
360 };
361
362 mpl20 = spdx {
363 spdxId = "MPL-2.0";
364 fullName = "Mozilla Public License 2.0";
365 };
366
367 msrla = {
368 fullName = "Microsoft Research License Agreement";
369 url = "http://research.microsoft.com/en-us/projects/pex/msr-la.txt";
370 };
371
372 ncsa = spdx {
373 spdxId = "NCSA";
374 fullName = "University of Illinois/NCSA Open Source License";
375 };
376
377 notion_lgpl = {
378 url = "https://raw.githubusercontent.com/raboof/notion/master/LICENSE";
379 fullName = "Notion modified LGPL";
380 };
381
382 ofl = spdx {
383 spdxId = "OFL-1.1";
384 fullName = "SIL Open Font License 1.1";
385 };
386
387 openldap = spdx {
388 spdxId = "OLDAP-2.8";
389 fullName = "Open LDAP Public License v2.8";
390 };
391
392 openssl = spdx {
393 spdxId = "OpenSSL";
394 fullName = "OpenSSL License";
395 };
396
397 php301 = spdx {
398 spdxId = "PHP-3.01";
399 fullName = "PHP License v3.01";
400 };
401
402 postgresql = spdx {
403 spdxId = "PostgreSQL";
404 fullName = "PostgreSQL License";
405 };
406
407 psfl = spdx {
408 spdxId = "Python-2.0";
409 fullName = "Python Software Foundation License version 2";
410 #url = http://docs.python.org/license.html;
411 };
412
413 publicDomain = {
414 fullName = "Public Domain";
415 };
416
417 qpl = spdx {
418 spdxId = "QPL-1.0";
419 fullName = "Q Public License 1.0";
420 };
421
422 qwt = {
423 fullName = "Qwt License, Version 1.0";
424 url = http://qwt.sourceforge.net/qwtlicense.html;
425 };
426
427 ruby = spdx {
428 spdxId = "Ruby";
429 fullName = "Ruby License";
430 };
431
432 sgi-b-20 = spdx {
433 spdxId = "SGI-B-2.0";
434 fullName = "SGI Free Software License B v2.0";
435 };
436
437 sleepycat = spdx {
438 spdxId = "Sleepycat";
439 fullName = "Sleepycat License";
440 };
441
442 tcltk = spdx {
443 spdxId = "TCL";
444 fullName = "TCL/TK License";
445 };
446
447 ufl = {
448 fullName = "Ubuntu Font License 1.0";
449 url = http://font.ubuntu.com/ufl/ubuntu-font-licence-1.0.txt;
450 };
451
452 unfree = {
453 fullName = "Unfree";
454 free = false;
455 };
456
457 unfreeRedistributable = {
458 fullName = "Unfree redistributable";
459 free = false;
460 };
461
462 unfreeRedistributableFirmware = {
463 fullName = "Unfree redistributable firmware";
464 # Note: we currently consider these "free" for inclusion in the
465 # channel and NixOS images.
466 };
467
468 unlicense = spdx {
469 spdxId = "Unlicense";
470 fullName = "The Unlicense";
471 };
472
473 vim = spdx {
474 spdxId = "Vim";
475 fullName = "Vim License";
476 };
477
478 vsl10 = spdx {
479 spdxId = "VSL-1.0";
480 fullName = "Vovida Software License v1.0";
481 };
482
483 w3c = spdx {
484 spdxId = "W3C";
485 fullName = "W3C Software Notice and License";
486 };
487
488 wadalab = {
489 fullName = "Wadalab Font License";
490 url = https://fedoraproject.org/wiki/Licensing:Wadalab?rd=Licensing/Wadalab;
491 };
492
493 wtfpl = spdx {
494 spdxId = "WTFPL";
495 fullName = "Do What The F*ck You Want To Public License";
496 };
497
498 zlib = spdx {
499 spdxId = "Zlib";
500 fullName = "zlib License";
501 };
502
503 zpt20 = spdx { # FIXME: why zpt* instead of zpl*
504 spdxId = "ZPL-2.0";
505 fullName = "Zope Public License 2.0";
506 };
507
508 zpt21 = spdx {
509 spdxId = "ZPL-2.1";
510 fullName = "Zope Public License 2.1";
511 };
512
513}