> • “GPLv2 or later” give to both but can't take code from either one.
Sure it can. It only has to choose when it does.
If I combine a program that is v2+ with a v2 patch, I can redistribute the result under v2-only license.
If I combine a program that is v2+ with a v3 patch, I can redistribute the result under v3-only license.
If I combine a program that is v2+ with a v3+ patch, I can redistribute the result under v3+ license.
Posted Sep 27, 2013 19:26 UTC (Fri) by southey (subscriber, #9466)
[Link]
All of your examples are illegal! These all require changes in the license especially as each change further restricts the original license. You cannot relicense any code unless you are the only copyright holder.
While you could redistribute the package under a different but compatible license, it is would be wrong include all included code under that compatible license. Rather the original program will always remain GPL v2 or later and only your patch will be covered under the compatible license you choose.
GNU's healthy now, and will soon be moreso
Posted Sep 27, 2013 22:19 UTC (Fri) by hummassa (subscriber, #307)
[Link]
You are not relicensing. You are distributing under the terms the copyright holders allowed you to distribute. Go read all the terms of the GPLv2 and v3 a couple of times and you'll get some illumination after some time.
GNU's healthy now, and will soon be moreso
Posted Sep 27, 2013 22:33 UTC (Fri) by hummassa (subscriber, #307)
[Link]
I will clarify this a little bit:
When you say:
"You can redistribute this work (and derivatives) under the terms of the GPL, version 2 or later", then you are saying:
A. you can redistribute this work (and derivatives) under the terms of the GPLv2
B. OR you can redistribute this work (and derivatives) under the terms of the GPLv3
C. OR you can redistribute this work (and derivatives) under the terms of the GPLv3.1
and so on.
If you need to redistribute some work that is a derivative of both a GPLv2 work (terms under letter A, above) and a GPLv2+ work (A|B|C|...), you still have the option of distributing it under the terms of A. Likewise, if you need to redistribute some work that is a derivative of both a GPLv3+ work and a GPLv2+ work (B|C|... and A|B|C|... respectively) then you still have the option of distributing it under the terms of B|C|... etc etc.
GNU's healthy now, and will soon be moreso
Posted Sep 27, 2013 22:26 UTC (Fri) by coriordan (guest, #7544)
[Link]
There's no legal problem.
The only way to distribute a combination of v2+ and v3+ is to abide by v3 (or a later version when one is published). So it's fair to tell people that the project "is under v3". It's simplifying slightly, but not to the extent of being misleading.
To be precise, the project doesn't have a licence. The works (authors' works) have licences.
(If I unilaterally claimed that every part of the project, including the v2+ parts written by others, was v3+, or if I edit all the other authors' copyright notices to say v3+, then yes, either of those acts would be illegal, but that's not the case here.)
GNU's healthy now, and will soon be moreso
Posted Sep 29, 2013 18:03 UTC (Sun) by jzbiciak (✭ supporter ✭, #5246)
[Link]
The main issue is that the original project is unlikely to want to change its license terms in order to accept a contribution into its mainline. So, while you can legally combine code in the ways you list and redistribute the result in the resulting intersection between licenses, the original project would probably reject the submission because it changes the licensing for the whole project.
I'm pretty sure that's what was meant by "give to both but can't take code from either one." If my project starts as a GPLv2+ project and wants to remain a GPLv2+ project, it cannot accept a V2 patch, V3 patch or V3+ patch into mainline.