From: "Michał Górny" <mgorny@gentoo.org>
To: gentoo-commits@lists.gentoo.org
Subject: [gentoo-commits] repo/gentoo:master commit in: metadata/
Date: Tue, 22 Nov 2022 17:48:50 +0000 (UTC) [thread overview]
Message-ID: <1669139240.2e265190e0aa73ff8ed81c97a7e120bbc7078250.mgorny@gentoo> (raw)
commit: 2e265190e0aa73ff8ed81c97a7e120bbc7078250
Author: Michał Górny <mgorny <AT> gentoo <DOT> org>
AuthorDate: Sun Nov 13 11:51:25 2022 +0000
Commit: Michał Górny <mgorny <AT> gentoo <DOT> org>
CommitDate: Tue Nov 22 17:47:20 2022 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=2e265190
metadata: Add license-mapping.conf for SPDX license mapping
Add a file defining mapping of SPDX-2.0 license identifiers to Gentoo
ebuild licenses. This was originally discussed on Gentoo Bugzilla [1],
the submitted to the gentoo-dev ml [2].
The proposed file uses the common key-value format used for
configuration files. Currently only `spdx-to-ebuild` section is defined
but other kinds of mapping can be added in the future. As described
in the top comment, it provides the ability to map SPDX-2.0 license
identifiers along with the `+` and `WITH` operators to arbitrary
Gentoo LICENSE strings (including all-of and any-of groups).
The initial list was based on cargo-ebuild's license.rs [3],
courtesy of Leonardo H. Neumann and Georgy Yakovlev. I have done some
changes, particularly removed some incorrect mappings and added more
variants from the same license groups (e.g. GPL variants). Ulrich
Müller has noticed a number of problems and given helpful suggestions.
A parser for this file format is implemented in pycargoebuild [4].
[1] https://bugs.gentoo.org/706472
[2] https://archives.gentoo.org/gentoo-dev/message/01924bb71411696dce04445d85da508d
[3] https://gitweb.gentoo.org/proj/cargo-ebuild.git/tree/src/license.rs?id=b4314edc5bb672f5e94dcbc996f443e98fdb4dba
[4] https://github.com/projg2/pycargoebuild/
Closes: https://github.com/gentoo/gentoo/pull/28256
Signed-off-by: Michał Górny <mgorny <AT> gentoo.org>
metadata/license-mapping.conf | 178 ++++++++++++++++++++++++++++++++++++++++++
1 file changed, 178 insertions(+)
diff --git a/metadata/license-mapping.conf b/metadata/license-mapping.conf
new file mode 100644
index 000000000000..07dbda9b2f83
--- /dev/null
+++ b/metadata/license-mapping.conf
@@ -0,0 +1,178 @@
+# Copyright 2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+# Mapping of SPDX-2.0 licenses to Gentoo repository licenses.
+#
+# Keys are <license-id>[+] [WITH <exception-id>].
+#
+# License and exception identifiers are case-insensitive but please follow
+# the case used in SPDX. "WITH" exceptions are matched exactly,
+# i.e. "Apache-2.0 WITH LLVM-exception" will not match plain "Apache-2.0".
+# The "+" operator prefers exact match but falls back to the variant without,
+# i.e. if "MPL-1.0+" is not defined, the mapping for "MPL-1.0" is used.
+#
+# Values are ebuild-style LICENSE terms, possibly including multiple
+# licenses (implicit all-of group) and all-of/any-of groups.
+
+[spdx-to-ebuild]
+0BSD = 0BSD
+AFL-2.1 = AFL-2.1
+AFL-3.0 = AFL-3.0
+AGPL-3.0 = AGPL-3
+AGPL-3.0+ = AGPL-3+
+AGPL-3.0-only = AGPL-3
+AGPL-3.0-or-later = AGPL-3+
+Aladdin = Aladdin
+AMPAS = AMPAS
+Apache-1.0 = Apache-1.0
+Apache-1.1 = Apache-1.1
+Apache-2.0 = Apache-2.0
+Apache-2.0 WITH LLVM-exception = Apache-2.0-with-LLVM-exceptions
+APL-1.0 = APL-1.0
+APSL-2.0 = APSL-2
+Artistic-1.0 = Artistic
+Artistic-1.0-cl8 = Artistic
+Artistic-1.0-Perl = Artistic
+Artistic-2.0 = Artistic-2
+Beerware = BEER-WARE
+BSD-1-Clause = BSD-1
+BSD-2-Clause = BSD-2
+BSD-3-Clause = BSD
+BSD-4-Clause = BSD-4
+BSL-1.0 = Boost-1.0
+bzip2-1.0.5 = BZIP2
+bzip2-1.0.6 = BZIP2
+CC-BY-2.0 = CC-BY-2.0
+CC-BY-2.5 = CC-BY-2.5
+CC-BY-3.0 = CC-BY-3.0
+CC-BY-4.0 = CC-BY-4.0
+CC-BY-NC-4.0 = CC-BY-NC-4.0
+CC-BY-NC-ND-2.0 = CC-BY-NC-ND-2.0
+CC-BY-NC-ND-2.5 = CC-BY-NC-ND-2.5
+CC-BY-NC-ND-3.0 = CC-BY-NC-ND-3.0
+CC-BY-NC-ND-4.0 = CC-BY-NC-ND-4.0
+CC-BY-NC-SA-1.0 = CC-BY-NC-SA-1.0
+CC-BY-NC-SA-2.5 = CC-BY-NC-SA-2.5
+CC-BY-NC-SA-3.0 = CC-BY-NC-SA-3.0
+CC-BY-NC-SA-4.0 = CC-BY-NC-SA-4.0
+CC-BY-ND-3.0 = CC-BY-ND-3.0
+CC-BY-ND-4.0 = CC-BY-ND-4.0
+CC-BY-SA-1.0 = CC-BY-SA-1.0
+CC-BY-SA-2.0 = CC-BY-SA-2.0
+CC-BY-SA-2.5 = CC-BY-SA-2.5
+CC-BY-SA-3.0 = CC-BY-SA-3.0
+CC-BY-SA-4.0 = CC-BY-SA-4.0
+CC-PDDC = CC-PD
+CC0-1.0 = CC0-1.0
+CDDL-1.0 = CDDL
+CDDL-1.1 = CDDL-1.1
+CECILL-2.0 = CeCILL-2
+CECILL-B = CeCILL-B
+CECILL-C = CeCILL-C
+CPAL-1.0 = CPAL-1.0
+CPL-1.0 = CPL-1.0
+CPOL-1.02 = CPOL
+curl = curl
+ECL-2.0 = ECL-2.0
+EPL-1.0 = EPL-1.0
+EPL-2.0 = EPL-2.0
+ErlPL-1.1 = ErlPL-1.1
+EUPL-1.1 = EUPL-1.1
+EUPL-1.2 = EUPL-1.2
+FSFAP = FSFAP
+FTL = FTL
+GD = gd
+Glulxe = Glulxe
+gnuplot = gnuplot
+GPL-1.0 = GPL-1
+GPL-1.0+ = GPL-1+
+GPL-1.0-only = GPL-1
+GPL-1.0-or-later = GPL-1+
+GPL-2.0 = GPL-2
+GPL-2.0+ = GPL-2+
+GPL-2.0-only = GPL-2
+GPL-2.0-or-later = GPL-2+
+GPL-2.0-with-classpath-exception = GPL-2-with-classpath-exception
+GPL-2.0 WITH Classpath-exception-2.0 = GPL-2-with-classpath-exception
+GPL-2.0-only WITH Classpath-exception-2.0 = GPL-2-with-classpath-exception
+GPL-2.0-with-font-exception = GPL-2-with-font-exception
+GPL-2.0 WITH Font-exception-2.0 = GPL-2-with-font-exception
+GPL-2.0-only WITH Font-exception-2.0 = GPL-2-with-font-exception
+GPL-3.0 = GPL-3
+GPL-3.0+ = GPL-3+
+GPL-3.0-only = GPL-3
+GPL-3.0-or-later = GPL-3+
+GPL-3.0 WITH Font-exception-3.0 = GPL-3-with-font-exception
+GPL-3.0-only WITH Font-exception-3.0 = GPL-3-with-font-exception
+GPL-3.0+ WITH Font-exception-3.0 = GPL-3+-with-font-exception
+GPL-3.0-or-later WITH Font-exception-3.0 = GPL-3+-with-font-exception
+HPND = HPND
+ICU = icu
+IJG = IJG
+ImageMagick = imagemagick
+Info-ZIP = Info-ZIP
+Interbase-1.0 = Interbase-1.0
+IPA = IPAfont
+ISC = ISC
+JSON = JSON
+LGPL-2.0 = LGPL-2
+LGPL-2.0+ = LGPL-2+
+LGPL-2.0-only = LGPL-2
+LGPL-2.0-or-later = LGPL-2+
+LGPL-2.1 = LGPL-2.1
+LGPL-2.1+ = LGPL-2.1+
+LGPL-2.1-only = LGPL-2.1
+LGPL-2.1-or-later = LGPL-2.1+
+LGPL-3.0 = LGPL-3
+LGPL-3.0+ = LGPL-3+
+LGPL-3.0-only = LGPL-3
+LGPL-3.0-or-later = LGPL-3+
+Libpng = libpng
+libpng-2.0 = libpng2
+libtiff = libtiff
+LPPL-1.2 = LPPL-1.2
+LPPL-1.3c = LPPL-1.3c
+MirOS = MirOS
+MIT = MIT
+MIT-advertising = MIT-with-advertising
+mpich2 = mpich2
+MPL-1.0 = MPL-1.0
+MPL-1.1 = MPL-1.1
+MPL-2.0 = MPL-2.0
+NPL-1.1 = NPL-1.1
+OFL-1.0 = OFL
+OFL-1.0-RFN = OFL
+OFL-1.1 = OFL-1.1
+OFL-1.1-RFN = OFL-1.1
+OLDAP-2.7 = OPENLDAP
+OpenSSL = openssl
+OPUBL-1.0 = OPL
+OSL-1.1 = OSL-1.1
+OSL-2.0 = OSL-2.0
+OSL-2.1 = OSL-2.1
+PHP-3.0 = PHP-3
+PHP-3.01 = PHP-3.01
+PostgreSQL = POSTGRESQL
+PSF-2.0 = PSF-2
+psutils = psutils
+Python-2.0 = PYTHON
+QPL-1.0 = QPL-1.0
+Rdisc = rdisc
+RSA-MD = RSA
+Ruby = Ruby
+Sendmail = Sendmail
+SGI-B-2.0 = SGI-B-2.0
+Sleepycat = Sleepycat
+SSPL-1.0 = SSPL-1
+TCL = tcltk
+TCP-wrappers = tcp_wrappers_license
+Unicode-DFS-2016 = Unicode-DFS-2016
+Unlicense = Unlicense
+Vim = vim
+VOSTROM = VOSTROM
+W3C = W3C
+Watcom-1.0 = Watcom-1.0
+WTFPL = WTFPL-2
+Zend-2.0 = Zend-2.0
+Zlib = ZLIB
+ZPL-2.1 = ZPL
next reply other threads:[~2022-11-22 17:48 UTC|newest]
Thread overview: 57+ messages / expand[flat|nested] mbox.gz Atom feed top
2022-11-22 17:48 Michał Górny [this message]
-- strict thread matches above, loose matches on Subject: below --
2025-05-10 6:06 [gentoo-commits] repo/gentoo:master commit in: metadata/ Ulrich Müller
2025-03-14 10:34 Michał Górny
2025-02-12 22:30 Patrick McLean
2025-01-29 9:48 Michał Górny
2025-01-20 13:52 Ulrich Müller
2024-09-05 12:55 Michael Orlitzky
2024-08-26 16:43 Arthur Zamarin
2024-02-24 10:26 Michał Górny
2024-02-12 21:02 Ulrich Müller
2024-01-15 9:17 Ulrich Müller
2023-12-30 9:58 Ulrich Müller
2023-01-07 8:17 Ulrich Müller
2022-10-22 10:54 Ulrich Müller
2022-10-22 10:54 Ulrich Müller
2022-07-18 15:49 Jakov Smolić
2021-08-13 9:03 Ulrich Müller
2021-08-08 23:14 Ulrich Müller
2021-07-11 21:12 Ulrich Müller
2021-06-23 17:55 Ulrich Müller
2021-05-19 8:12 Michał Górny
2020-11-26 13:32 Sam James
2020-09-26 12:15 Ulrich Müller
2020-03-05 5:57 Michał Górny
2020-03-05 5:57 Michał Górny
2019-12-09 20:44 Ulrich Müller
2019-12-09 20:30 Aaron Bauman
2019-11-02 11:45 Michał Górny
2019-10-04 20:25 Andreas K. Hüttel
2019-08-05 20:39 Zac Medico
2019-03-16 4:22 Michael Palimaka
2019-02-02 17:25 Michał Górny
2018-12-24 21:20 Ulrich Müller
2018-12-20 22:55 Ulrich Müller
2018-05-20 0:20 Andreas Hüttel
2018-05-14 5:49 Ulrich Müller
2018-05-14 5:47 Ulrich Müller
2018-02-19 17:49 Michał Górny
2017-11-28 11:20 Michael Palimaka
2017-11-21 20:09 Michał Górny
2017-11-21 17:48 Michał Górny
2017-11-10 17:19 Michał Górny
2017-10-13 20:57 Ulrich Müller
2017-10-13 20:53 Ulrich Müller
2017-07-15 2:22 Brian Dolbec
2017-04-21 5:37 Jason Zaman
2017-01-14 15:51 Manuel Rüger
2016-05-04 5:15 Jason Zaman
2016-01-20 15:36 Justin Lecher
2016-01-18 9:48 Mike Frysinger
2016-01-18 9:48 Mike Frysinger
2016-01-17 6:48 Robin H. Johnson
2016-01-15 10:44 Justin Lecher
2015-10-14 14:56 Julian Ospald
2015-08-25 0:21 Mike Gilbert
2015-08-15 16:56 Julian Ospald
2015-08-11 4:01 Mike Frysinger
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1669139240.2e265190e0aa73ff8ed81c97a7e120bbc7078250.mgorny@gentoo \
--to=mgorny@gentoo.org \
--cc=gentoo-commits@lists.gentoo.org \
--cc=gentoo-dev@lists.gentoo.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox