diff options
author | Thomas Haller <thaller@redhat.com> | 2020-01-02 10:47:09 +0100 |
---|---|---|
committer | Thomas Haller <thaller@redhat.com> | 2020-01-09 11:34:55 +0100 |
commit | d9451fcc0b8816c84c38d5380efccfa12d79488c (patch) | |
tree | 05ac77d67a7f5f1a869c10c1cb2385c0341b0c41 | |
parent | 5fc1b1a681a1f81461509c868a758af464b1c8ab (diff) | |
download | NetworkManager-th/relicense.tar.gz |
license: add RELICENSE.md file to track consent/disapproval for relicensing under LGPL-2.1+th/relicense
-rw-r--r-- | RELICENSE.md | 74 |
1 files changed, 74 insertions, 0 deletions
diff --git a/RELICENSE.md b/RELICENSE.md new file mode 100644 index 0000000000..366e846005 --- /dev/null +++ b/RELICENSE.md @@ -0,0 +1,74 @@ +Relicensing NetworkManager GPL Code as LGPL-2.1+ +================================================ + +This NetworkManager project consists of the daemon, client tools, and libnm. +libnm is licensed LGPL-2.1+, while the rest is licensed under GPL-2.0+. + + +Why Relicensing? +================ + +Mixing two licenses in the same source tree is cumbersome: + +1) We want to share code internally and reuse it. In particular under "shared/" directory +there are internal static libraries that get linked both into LGPL and GPL code. +That implies that this shared code itself must be LGPL licensed. Being unable to +move code around within our source tree is a painful restriction. Possibly we get +that wrong sometimes, wrongly moving GPL code as LGPL (either directly or by rewriting +it based on GPL code). + +2) For example keyfile and ifcfg-rh implementations are GPL licensed as they +are historically part of core. It would be useful to add this functionality +to libnm, so that libnm users can handle the file formats directly. That is +not possible without relicensing. + +3) Maybe one day we would relicense the entire source tree as LGPL-2.1+ to avoid +this issue. This would require agreement from all copyright holders. + + +Full relicensing (point 3) is a large effort, or maybe even impossible. However sometimes +we may need to evaluate whether small parts can be relicensed (points 2 and 1). This +file keeps track of copyright holders that agree or disapprove to such a license change. + + +Which Code? +=========== + +This applies to all GPL-2.0+ code in commit a3e75f329446a93a61ca4c458a7657bd919f4fe6 ([1]) and +all its parent commits. + +Since commit a3e75f329446a93a61ca4c458a7657bd919f4fe6 ([1]), the CONTRIBUTING file ([2]) makes +it clear that all new contributions must to be provided under terms of LGPL-2.1+. So this +approval process is only relevant for GPL-2.0+ code from before that. This was also announced on +the mailing list on June 12 2019 ([3]). Note that the announcement was still talking about LGPL-2.0+ +but in the meantime we only request LGPL-2.1+ ([4]). + +- [1] https://gitlab.freedesktop.org/NetworkManager/NetworkManager/commit/a3e75f329446a93a61ca4c458a7657bd919f4fe6 +- [2] https://gitlab.freedesktop.org/NetworkManager/NetworkManager/blob/a3e75f329446a93a61ca4c458a7657bd919f4fe6/CONTRIBUTING#L37 +- [3] https://mail.gnome.org/archives/networkmanager-list/2019-June/msg00006.html +- [4] https://gitlab.freedesktop.org/NetworkManager/NetworkManager/commit/3c36231706a9314f6bf03901dd13923cd32a5457 + + +Consent/Disapproval about What? +=============================== + +Whether the copyright holder agrees to relicense the code in a3e75f329446a93a61ca4c458a7657bd919f4fe6 +and its parents under terms of LGPL-2.1+. + + +How to Track Consent/Disapproval? +================================= + +The consent/disapproval is tracked in this file for the copyright holders +who made their wish known. In the list below [Y] indicates consent while [N] +indicates disapproval. +To express the wish either send an email to our mailing list <networkmanager-list@gnome.org> +or open a merge request against this file, adding your name to the list. Then this +file will be updated to track the information. The git commit messages in the history +of this file will give details when/how an entry was added. + + +Consent/Disapproval List +======================== + +- [Y] Thomas Haller <thaller@redhat.com> |