I'm interested in helping evolve copyleft licensing, its one reason why I really like copyleft-next license. My own primary interest in helping evolve copyleft is I believe the current patent situation does a huge disservice to copyleft developers, in the worst case creating an environment where you are outlawed. To start, I decided to use copyleft-next for one of my projects, CRDA [0] about 3 years ago after it became clear, despite my best efforts in helping to share, that the BSD community had no interest in taking advantage of the regulatory framework we had created on Linux. I decided to use copyleft-next 0.3.0 once I learned that it was both a usable alternative to GPLv2 and GPLv3, and also outbound-compatible with GPLv2 and GPLv3.
I feel we need to evolve copyleft *slowly* with the community, to do this I feel now's a good time to seek a bit more clarity on GPLv2's compatibility and clarifications over its gains over GPLv2 and what the implications are of using copyleft-next 0.3.0 more broadly for GPLv2 projects. To that end can someone provide:
* A lay review of copyleft-next 0.3.0's GPLv2 compatibility. Is there anything that is obvious that makes it GPLv2 compatible ? If so what is is? Is there anything that makes it questionable if it is GPLv2 compatible? If so what is is?
* A lay review (perhaps a series of bullets) of what the main advantages of copyleft-next 0.3.0 are over GPLv2
Perhaps we can also work though an example. For instance, since CRDA is already copyleft-next 0.3.0 licensed, say I wanted to include code from it on a larger overall GPLv2 licensed code base, what are the implications if I did that to the larger GPLv2 licensed body of code? Would just the GPLv2 apply only on the larger body of code? This would be an important criteria for me to help evolve copyleft slowly. If this works as I expect it, then I take it the gains of doing this would be that I can help evolve copyleft by ensuring I can take back changes made in the larger GPLv2 code back to CRDA under copyleft-next 0.3.0. It still begs the question of *why* use copyleft-next 0.3.0. Other than helping move the discussion forward of copyleft evolution I think having a clear lay review of the net gains of copyleft-next 0.3.0 would be extremely useful.
[0] https://git.kernel.org/cgit/linux/kernel/git/mcgrof/crda.git/
Luis
On Wed, Mar 09, 2016 at 10:45:44AM -0800, Luis R. Rodriguez wrote:
To that end can someone provide:
- A lay review of copyleft-next 0.3.0's GPLv2 compatibility. Is
there anything that is obvious that makes it GPLv2 compatible ? If so what is is? Is there anything that makes it questionable if it is GPLv2 compatible? If so what is is?
- A lay review (perhaps a series of bullets) of what the main
advantages of copyleft-next 0.3.0 are over GPLv2
Hi Luis,
I can provide this, though I may not get to it for a couple of days.
For instance, since CRDA is already copyleft-next 0.3.0 licensed, say I wanted to include code from it on a larger overall GPLv2 licensed code base, what are the implications if I did that to the larger GPLv2 licensed body of code? Would just the GPLv2 apply only on the larger body of code?
The code from CRDA would be licensed under both GPLv2 and copyleft-next 0.3.0. The rest of the larger body of code would be under GPLv2.
Richard
On Wed, Mar 9, 2016 at 7:13 PM, Richard Fontana fontana@sharpeleven.org wrote:
On Wed, Mar 09, 2016 at 10:45:44AM -0800, Luis R. Rodriguez wrote:
To that end can someone provide:
- A lay review of copyleft-next 0.3.0's GPLv2 compatibility. Is
there anything that is obvious that makes it GPLv2 compatible ? If so what is is? Is there anything that makes it questionable if it is GPLv2 compatible? If so what is is?
- A lay review (perhaps a series of bullets) of what the main
advantages of copyleft-next 0.3.0 are over GPLv2
Hi Luis,
I can provide this, though I may not get to it for a couple of days.
Thanks *poke* :D
For instance, since CRDA is already copyleft-next 0.3.0 licensed, say I wanted to include code from it on a larger overall GPLv2 licensed code base, what are the implications if I did that to the larger GPLv2 licensed body of code? Would just the GPLv2 apply only on the larger body of code?
The code from CRDA would be licensed under both GPLv2 and copyleft-next 0.3.0. The rest of the larger body of code would be under GPLv2.
Excellent, thanks.
Luis
On Wed, Mar 09, 2016 at 10:45:44AM -0800, Luis R. Rodriguez wrote:
To that end can someone provide:
- A lay review of copyleft-next 0.3.0's GPLv2 compatibility. Is
there anything that is obvious that makes it GPLv2 compatible ?
Yes.
If so what is is?
Section 3 of copyleft-next 0.3.0 says:
3. Conditions for Distributing Derived Works; Outbound GPL Compatibility
If You Distribute a Derived Work, You must license the entire Derived Work as a whole under this License, with prominent notice of such licensing. This condition may not be avoided through such means as separate Distribution of portions of the Derived Work. You may additionally license the Derived Work under the GPL, so that the recipient may further Distribute the Derived Work under either this License or the GPL.
"Distribute" (a defined term in copyleft-next) would encompass GPLv2 "distribute". "Derived Work" (also a defined term) is defined in a way that is meant to correspond to "derivative work"/"work based on the Program" in GPLv2 and "modified version"/"work based on the Program" in GPLv3. "GPL" is defined to mean a version of the GNU GPL or GNU AGPL, including GPLv2.
The last sentence of Section 3 is based on the last sentence of MPL 2.0 section 3.3, which is generally understood to cause MPL 2.0 to be compatible with GPLv2 and certain other GPL-family licenses, although there is a difference in that copyleft-next is a strong (or at least "non-weak") copyleft license. The idea here is that you can form a Derived Work from code that is licensed under copyleft-next and code that is licensed under, say, GPLv2. Under section 3, you can give such code to a recipient under both copyleft-next and GPLv2. This gives the recipient the option to distribute the Derived Work (presumably a derivative work of the GPLv2 code) under GPLv2.
I hope that is clear. (In writing this, I see a way to improve the formulation of that last sentence in section 3.)
Is there anything that makes it questionable if it is GPLv2 compatible? If so what is is?
Well, I only noticed this now: maybe there is some argument that copyleft-next section 3 brings about a noncompliance with GPLv2 in situations where you are combining GPLv2 and copyleft-next code (because GPLv2 says you have to license the entire modified work under GPLv2). If so I'm not sure why I didn't notice that before. Anyway I think a simpler approach is possible here.
Now there is also section 4, which says:
You may Distribute a Covered Work incorporating material governed by a license that is both OSI-Approved and FSF-Free as of the release date of this License, provided that Your Distribution complies with such other license.
This wasn't meant to cover the situation where the non-copyleft-next "material" is under the GPL. I think the implicit understanding here was that the other license wouldn't necessarily clash with the strong (or non-weak) copyleft policy of copyleft-next. So probably you can't fit the GPL in this provision. I see a potential improvement here too.
I am going to try to make those improvements in the near future, probably also releasing the improved version as 0.4.0.
- A lay review (perhaps a series of bullets) of what the main
advantages of copyleft-next 0.3.0 are over GPLv2
* It is much shorter and simpler * It has an explicit patent license grant, unlike GPLv2 * Its notice preservation conditions are clearer * More free software/open source licenses are compatible with it (via section 4) * The source code requirement triggered by binary distribution is much simpler in a procedural sense * Recipients potentially have a contract claim against distributors who are noncompliant with the source code requirement * There is a built-in inbound=outbound policy for upstream contributions (cf. Apache License 2.0 section 5) * There are disincentives to engage in the controversial practice of copyleft/ proprietary dual-licensing * In 15 years copyleft expires, which can be advantageous for legacy code * There are explicit disincentives to bringing patent infringement claims accusing the licensed work of infringement (see 10b) * There is a cure period for licensees who are not compliant with the license (there is no cure opportunity in GPLv2)
Richard
On 04/26/2016 10:08 PM, Richard Fontana wrote:
I am going to try to make those improvements in the near future, probably also releasing the improved version as 0.4.0.
I have a potential 0.3.1 release which improves the provisions on license compatibility. https://github.com/copyleft-next/copyleft-next/blob/master/Drafts/copyleft-n...
BTW I realize now that I have not been using semantic versioning properly to the extent it is even meaningful for a non-software project such as this one.
Richard
On 03/09/2016 01:45 PM, Luis R. Rodriguez wrote: [...]
To that end can someone provide:
- A lay review of copyleft-next 0.3.0's GPLv2 compatibility. Is
there anything that is obvious that makes it GPLv2 compatible ? If so what is is?
Here's a response for copyleft-next 0.3.1 (I think simpler than the response I previously gave regarding 0.3.0):
Like GPLv2, copyleft-next requires distribution of derivative works ("Derived Works" in copyleft-next 0.3.x) to be under the same license. Ordinarily this would make the two licenses incompatible. However, copyleft-next 0.3.1 says: "If the Derived Work includes material licensed under the GPL, You may instead license the Derived Work under the GPL." "GPL" is defined to include GPLv2.
Is there anything that makes it questionable if it is GPLv2 compatible?
No. Well, the FSF hasn't expressed an opinion, but apart from that, no.
- A lay review (perhaps a series of bullets) of what the main
advantages of copyleft-next 0.3.0 are over GPLv2
The bullet points I previously gave for 0.3.0 (see: https://lists.fedorahosted.org/archives/list/copyleft-next@lists.fedorahoste...) are equally applicable to 0.3.1.
Not mentioned in those bullet points is the additional point that (unlike GPLv2) copyleft-next has a 'built-in or-later' provision, which means that you or others can use CRDA under copyleft-next 0.3.1.
Richard
copyleft-next@lists.fedorahosted.org