To create new wiki account, please join us on #znc at Libera.Chat and ask admins to create a wiki account for you. You can say thanks to spambots for this inconvenience.
Developer:License: Difference between revisions
Jump to navigation
Jump to search
>Jreese mNo edit summary |
>Cajs No edit summary |
||
(6 intermediate revisions by 4 users not shown) | |||
Line 1: | Line 1: | ||
= Switch ZNC from GPL 2 to another license = | = Switch ZNC from GPL 2 to another license = | ||
See https://github.com/znc/znc/issues/ | See https://github.com/znc/znc/issues/311 | ||
== What we want? == | == What we want? == | ||
Line 9: | Line 9: | ||
** [http://logging.apache.org/log4cxx/ log4cxx] | ** [http://logging.apache.org/log4cxx/ log4cxx] | ||
* Ability to use stuff licensed under GPL 2 license in ZNC | * Ability to use stuff licensed under GPL 2 license in ZNC | ||
** [http:// | ** [http://atheme.net/iris.html Iris] or [http://qwebirc.org/ qwebirc] | ||
*** But iris is loaded as separate process, and ZNC communicates with it via socket, so it's not an issue, according to [http://www.gnu.org/licenses/gpl-faq.html#GPLPluginsInNF this] and [http://www.gnu.org/licenses/gpl-faq.html#MereAggregation this] | *** But iris is loaded as separate process, and ZNC communicates with it via socket, so it's not an issue, according to [http://www.gnu.org/licenses/gpl-faq.html#GPLPluginsInNF this] and [http://www.gnu.org/licenses/gpl-faq.html#MereAggregation this] | ||
* Anything else? | * Anything else? | ||
Line 17: | Line 17: | ||
=== [http://opensource.org/licenses/gpl-3.0.html GPL 3] === | === [http://opensource.org/licenses/gpl-3.0.html GPL 3] === | ||
Pros: | Pros: | ||
* | * Requires distributed changes to ZNC to be released under the GPL3. | ||
Cons: | Cons: | ||
* Incompatible with GPLv2 and thus conflicts with "What we want": [http://www.gnu.org/licenses/gpl-faq.html#v2v3Compatibility] | * Incompatible with GPLv2 and thus conflicts with "What we want": [http://www.gnu.org/licenses/gpl-faq.html#v2v3Compatibility] | ||
* "Stigma" of being a "viral" license, prevents some people or businesses from using or contributing back. | |||
=== [http://opensource.org/licenses/lgpl-3.0.html LGPL 3] === | === [http://opensource.org/licenses/lgpl-3.0.html LGPL 3] === | ||
Pros: | Pros: | ||
* | * Requires distributed changes to ZNC to be released under the LGPL3. | ||
Cons: | Cons: | ||
* ZNC is not a library (Don't need to be a library to use the "Lesser" GPL license. [[User:Jreese|Jreese]] ([[User talk:Jreese|talk]]) 17:19, 20 December 2012 (UTC)) | * ZNC is not a library (Don't need to be a library to use the "Lesser" GPL license. [[User:Jreese|Jreese]] ([[User talk:Jreese|talk]]) 17:19, 20 December 2012 (UTC)) | ||
* "Stigma" of being a "viral" license, prevents some people or businesses from using or contributing back. | |||
=== [http://opensource.org/licenses/Apache-2.0 Apache 2.0] === | === [http://opensource.org/licenses/Apache-2.0 Apache 2.0] === | ||
Line 31: | Line 33: | ||
* Most liberal license that still protects any project trademarks. | * Most liberal license that still protects any project trademarks. | ||
Cons: | Cons: | ||
* | * Allows distributed changes to ZNC to be re-licensed under different terms, or even stay closed-source. | ||
* Incompatible with GPL2.0 | |||
=== BSD ([http://opensource.org/licenses/BSD-2-Clause 2-clause] or [http://opensource.org/licenses/BSD-3-Clause 3-clause]?) === | === BSD ([http://opensource.org/licenses/BSD-2-Clause 2-clause] or [http://opensource.org/licenses/BSD-3-Clause 3-clause]?) === | ||
Pros: | Pros: | ||
* Extremely liberal license. | * Extremely liberal license. | ||
* 3-clause license restricts usage of | * 3-clause license restricts usage of project or contributor names for endorsing derived projects. | ||
Cons: | Cons: | ||
* | * Allows distributed changes to ZNC to be re-licensed under different terms, or even stay closed-source. | ||
=== [http://opensource.org/licenses/MIT MIT] === | === [http://opensource.org/licenses/MIT MIT] === | ||
Line 45: | Line 48: | ||
Cons: | Cons: | ||
* Basically identical to 2-clause BSD license. | * Basically identical to 2-clause BSD license. | ||
* Allows distributed changes to ZNC to be re-licensed under different terms, or even stay closed-source. | |||
=== Anything else? === | === Anything else? === | ||
== Comments == | |||
* The goal of being able to use both Apache-licensed and GPL2-licensed code in ZNC is not going to be possible. Apache license is not compatible with GPL2-only projects, and GPL2-only is not compatible with GPL3 projects. [[User:Jreese|Jreese]] ([[User talk:Jreese|talk]]) 17:26, 20 December 2012 (UTC) | |||
** Even if the codes are running in separate processes? ([http://www.gnu.org/licenses/gpl-faq.html#GPLPluginsInNF] [http://www.gnu.org/licenses/gpl-faq.html#MereAggregation]) [[User:DarthGandalf|DarthGandalf]] ([[User talk:DarthGandalf|talk]]) 18:18, 20 December 2012 (UTC) | |||
** In the case of Iris/Qwebirc, as long as the ZNC code itself is not linking to any of the GPL2 code, then there is no conflict; at that point, you are merely redistributing the GPL2 projects along with ZNC. But if you have to link to GPL2-only code from Apache or GPL3 code, that's where the problems begin. [[User:Jreese|Jreese]] ([[User talk:Jreese|talk]]) 17:08, 28 December 2012 (UTC) | |||
* I would suggest using one of the more liberal licenses, so that modules can officially be licensed under any terms the author wants to use. LGPL or Apache license probably make the most sense in this regard. [[User:Jreese|Jreese]] ([[User talk:Jreese|talk]]) 17:26, 20 December 2012 (UTC) | |||
== Useful links == | == Useful links == |
Latest revision as of 13:18, 9 April 2014
Switch ZNC from GPL 2 to another license
See https://github.com/znc/znc/issues/311
What we want?
- Ability to use stuff licensed under Apache license in ZNC
- Ability to use stuff licensed under GPL 2 license in ZNC
- Anything else?
The list
GPL 3
Pros:
- Requires distributed changes to ZNC to be released under the GPL3.
Cons:
- Incompatible with GPLv2 and thus conflicts with "What we want": [1]
- "Stigma" of being a "viral" license, prevents some people or businesses from using or contributing back.
LGPL 3
Pros:
- Requires distributed changes to ZNC to be released under the LGPL3.
Cons:
- ZNC is not a library (Don't need to be a library to use the "Lesser" GPL license. Jreese (talk) 17:19, 20 December 2012 (UTC))
- "Stigma" of being a "viral" license, prevents some people or businesses from using or contributing back.
Apache 2.0
Pros:
- Most liberal license that still protects any project trademarks.
Cons:
- Allows distributed changes to ZNC to be re-licensed under different terms, or even stay closed-source.
- Incompatible with GPL2.0
BSD (2-clause or 3-clause?)
Pros:
- Extremely liberal license.
- 3-clause license restricts usage of project or contributor names for endorsing derived projects.
Cons:
- Allows distributed changes to ZNC to be re-licensed under different terms, or even stay closed-source.
MIT
Pros:
- Extremely liberal license.
Cons:
- Basically identical to 2-clause BSD license.
- Allows distributed changes to ZNC to be re-licensed under different terms, or even stay closed-source.
Anything else?
Comments
- The goal of being able to use both Apache-licensed and GPL2-licensed code in ZNC is not going to be possible. Apache license is not compatible with GPL2-only projects, and GPL2-only is not compatible with GPL3 projects. Jreese (talk) 17:26, 20 December 2012 (UTC)
- Even if the codes are running in separate processes? ([2] [3]) DarthGandalf (talk) 18:18, 20 December 2012 (UTC)
- In the case of Iris/Qwebirc, as long as the ZNC code itself is not linking to any of the GPL2 code, then there is no conflict; at that point, you are merely redistributing the GPL2 projects along with ZNC. But if you have to link to GPL2-only code from Apache or GPL3 code, that's where the problems begin. Jreese (talk) 17:08, 28 December 2012 (UTC)
- I would suggest using one of the more liberal licenses, so that modules can officially be licensed under any terms the author wants to use. LGPL or Apache license probably make the most sense in this regard. Jreese (talk) 17:26, 20 December 2012 (UTC)