Skip to content

OSS License option comparisons

Francesco Di Nucci edited this page Mar 20, 2026 · 15 revisions

In Ghent we talked about a licensing quite a bit and decided that we needed our projects to be focused on OSS friendly licenses rather than corporate friendly. We cannot change the license of existing forked code without the permission of the existing code owners, but we can license any future changes as we wish. Since we may be choosing licenses for many different kinds of projects, it would be useful for a small group of people to collate and distill existing conversations and do any further research needed before we have legal review and make decisions.

In the Vox sync on March 10, a few people volunteered to facilitate this group:

If you're interested in participating, please ☝️ add your name and join the #sig-licensing Slack channel or #voxpupuli-sig-licensing on Libera.Chat IRC channel. There is a bridge connecting both.

There is great content and conversation on community-triage#92, and what's needed on this page is distilling that conversation and resolving as many open questions as we can.

🔔 Note: this page is intended to be freely edited to reduce the conversation to decision making points.

Licenses

AGPL 3

  • Source: https://www.gnu.org/licenses/agpl-3.0.en.html
  • Summary: "A modified version of the ordinary GNU GPL version 3. It has one added requirement: if you run a modified program on a server and let other users communicate with it there, your server must also allow them to download the source code corresponding to the modified version running there." [4]
  • Compatibility: ??
  • Impact: ??

GPL 2

  • Source: https://www.gnu.org/licenses/old-licenses/gpl-2.0.html
  • Summary: Strong copyleft license - any modified version of the work licensed under GPL and work derivated from it must be licensed under GPLv3 and provide source code. Superseded by GPL v3.
  • Compatibility: Cannot be combined with Apache2 licensed code.[0]
  • Impact: Probably we cannot use it due to Apache incompatibility.

GPL 3

  • Source: https://www.gnu.org/licenses/quick-guide-gplv3.html
  • Summary: Strong copyleft license - any modified version of the work licensed under GPL and work derivated from it must be licensed under GPLv3 and provide source code.
  • Compatibility: Lists Apache-2 as compatible, I'm not sure about MIT
  • Impact: ??

LGPL 3

  • Source: https://www.gnu.org/licenses/lgpl-3.0.html
  • Summary: Weak copyleft license - modified versions of the work licensed under LGPL must be released under LGPL and provide source code, while derivative works that interact with it through interfaces provided by the licensed work have no obligations to do so.
  • Compatibility: ??
  • Impact: ??

Compatibility Table

Licenses actually in use (by both Perforce and Voxpupuli) vs proposed licenses (license-only/license+later-versions)

Compatible: it means result is released under the proposed license. In this sense, GPLv3 is not "compatible" with LGPLv3 as combination would result in GPLv3

Current/New AGPL3/AGPL3+ GPL2/GPL2+ GPL3/GPL3+ LGPL3/LGPLG3+
AGPL-3.0 (only) ➖/🚫 🚫/🚫 [13] ⚠️/⚠️ [13] 🚫/🚫 [15]
Apache-2.0 ✅/✅ [15] 🚫/🚫 [0] ✅/✅ [0] ✅/✅ [15]
BSD-3-Clause ❔/❔ ✅/✅ [14] ✅/✅ [13] ❔/❔
GPL-2.0 (only) 🚫/🚫 ➖/🚫 [1] 🚫/🚫 [1] 🚫/🚫
GPL-2.0+ 🚫/🚫 [15] ➖/➖ ✅/✅ [1] 🚫/🚫
GPL-3.0 (only) ⚠️/⚠️ 🚫/🚫 [1] ➖/🚫 🚫/🚫
GPL-3.0+ ⚠️/⚠️ 🚫/🚫 [1] ➖/➖ 🚫/🚫
MIT (alias Expat) ✅/✅ [15] ✅/✅ [14] ✅/✅ [13] ✅/✅ [15]
MPL 2.0 ⚠️/⚠️ [15] 🚫/🚫 [14] ⚠️/⚠️ [13] ⚠️/⚠️ [15]

Warnings:

  • AGPL-3.0 (only) to GPL3/GPL3+ and opposite (?) - (...) you are allowed to combine separate modules or source files released under both of those licenses in a single project, which will provide many programmers with all the permission they need to make the programs they want. See section 13 of both licenses for details. [13]
  • MPL to GPL licenses - (...) the files that were originally under the MPL will be dual licensed under the MPL and the GNU license(s) [13][15]

Caveats

  • FSF advises to release software under “(L)GPL version 3 or any later version.”. This prevents issues like a software released as GPLv2-only that can't be licensed under GPLv3 as well, without restricting user rights or renouncing to new safeguards.[1][2]

References

Clone this wiki locally