4 ms·
Doesn't "GPLv2 or later" specifically allow you to fork into "GPLv2 only"? How can a license be incompatible with only the latter then?
by tpolzer 6y ago
Doesn't "GPLv2 or later" specifically allow you to fork into "GPLv2 only"? How can a license be incompatible with only the latter then?
- yc12340 6y ago> How can a license be incompatible with only the latter then? Your parent comment said no such thing. It says, that you need GPL v3 to be compatible with Apache 2. "Or later" clause on GPL 2-licensed project offers you a way to re-license the project under GPL v3.
- CrLf 6y agoIANAL, but “GPLv2 or later” allows you (the recipient of the license) to choose either GPLv2 or GPLv3 (i.e. the one that’s more convenient to you) but does not allow you to prevent others (the recipients of your modified version) from having the same choice. This goes both ways, “GPLv2 or later” cannot be changed to either GPLv2 or GPLv3 only without permission from everybody that has ever contributed to the codebase. The FSF requires copyright attribution from cotributors, that’s why they were able to switch their projects to GPLv3-only.
- yc12340 6y ago> “GPLv2 or later” cannot be changed to either GPLv2 or GPLv3 only without permission... What? Of course it can be changed to either. It literally says so in the license name.
- zvr 6y agoNo, it does not say such thing. “GPLv2 or later” says you are allowed to use it under GPLv2 or GPLv3 (for now). It does not allow to change it to GPL-2.0-only (to use the correct SPDX identifier).
- yc12340 6y ago> “GPLv2 or later” says you are allowed to use it under GPLv2 or GPLv3 I am afraid, that you are wrong. GPL does not govern usage of software at all. You don't need to agree to GPL in order to use GPL licensed software. This is literally said in text of GPL itself. The preamble ("this program is free software...") is not part of GPL itself — it is just short informative text. And you are misremembering, what preamble says. Citing from GNU website: > This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version. I believe, that we should erase all SPDX-whatever nonsense from Linux source code, and replace it back with proper preamble — least other users of GPL software start to misremember as well.
- Conan_Kudo 6y agothe SPDX short identifiers are a great way for people to misunderstand how the license works. The preamble that the FSF suggests makes it clear what it does, why it works that way, and how you can leverage it.
- yrro 6y ago> You don't need to agree to GPL in order to use GPL licensed software. I've wondered for some time how a user is granted permission to use GPL-licensed software; permission is not explicitly granted by the GPL, but it is required so that the user can copy the software to their computer, and into memory for it to be executed, is it not? (I am aware that the answer will vary by jurisdiction)
- CrLf 6y agoThe GPL does not explicitly grant permission to use the software, that is true. However, its terms are clear about the conditions in which you lose that right.
- skissane 6y agoIf I take a GPLv2-or-later work, change the license notice to say GPLv2-only (or GPLv3-only, or GPLv3-or-later), and distribute it with that modified notice, have I violated the copyright licenses or copyright law? IANAL but I believe the answer is "No". Now, if all I've done is change the license notice, my change is legally ineffective – anyone who receives it from me can change it back to the original GPLv2-or-later, and I have no legal recourse against them. However, if at the same time as changing the license, I also make (non-trivial) modifications to the code, then recipients cannot legally change the license back to the original GPLv2-or-later without either reverting my code changes or seeking my permission. (This is because I own copyright in my code changes as a derived work.)
- CrLf 6y ago> IANAL but I believe the answer is "No". The answer is "Yes". Think about it this way: the license is "GPLv2 or later", not "GPLv2" or "GPLv3". If you change the license notice, you are changing the terms in which people will receive the code from you. The GPL (both of them) clearly says you cannot do this. You have to distribute modified works under the exact same terms you received the original work, or you lose the right to use the software (both original and modified) yourself if you violate its licensing terms.
- skissane 6y agoThe standard wording for a GPLv2-or-later license (as recommended by the appendix of GPLv2 itself) is: > This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. Per that notice, I have an option of distributing it under the terms of GPLv2, or under the terms of the GPLv3, or even a GPLv4 if the FSF were to someday publish one. So, I decide to make use of that option and distribute it under the terms of the GPLv3. You can't argue that from the text of the GPLv2 or GPLv3 that I don't have the option which the license statement says that I do. The license statement applying the GPLv2 (or GPLv3) text is of greater authority than the text of the GPL itself. You can't use the later to cancel out the option granted by the former.
- Conan_Kudo 6y agoThe FSF does not do GPLv3-only, they do "GPLv3 or later" for their projects (or "LGPLv3 or later" if applicable).
- JoshTriplett 6y ago(This is not legal advice, but I do deal with software licenses professionally.) > IANAL, but “GPLv2 or later” allows you (the recipient of the license) to choose either GPLv2 or GPLv3 (i.e. the one that’s more convenient to you) but does not allow you to prevent others (the recipients of your modified version) from having the same choice. > This goes both ways, “GPLv2 or later” cannot be changed to either GPLv2 or GPLv3 only without permission from everybody that has ever contributed to the codebase. This is not the case. A dual license allows you to redistribute under one or the other license, or both. "GPLv2 or later" must necessarily allow distributing under GPLv2 or GPLv3, because otherwise it wouldn't be compatible with GPLv2 or GPLv3. You're also free to combine it with GPLv2-only code (in which case you must distribute under GPLv2-only), or GPLv3-or-later code (in which case you must distribute under GPLv3-or-later). > The FSF requires copyright attribution from cotributors, that’s why they were able to switch their projects to GPLv3-only. The FSF requires copyright assignment, but that's not why; any project under GPLv2-or-later may be changed to GPLv3-or-later. And new code would then be contributed under GPLv3-or-later. Also, the FSF doesn't like to use "GPLv3 only", for the same reason they don't like to use "GPLv2 only". FSF projects under GPLv2-or-later switched to GPLv3-or-later.
- andrewaylett 6y agoThis is where some BSD folks get frustrated by some GPL folks. Compiling code under BSD with code under GPL into the same binary is not _relicensing_. Each section of code still has the same license, and any binaries must abide by the intersection of the licenses. It is indeed the case that the intersection of GPL and BSD is equivalent to GPL and therefore allowed by the GPL, but the BSD license remains on the portions (of code and of binary) that are BSD licensed.
- llimllib 6y agoWouldn't it be the union of the licenses, not the intersection? Provisions of one license wouldn't go away because they're not present in the other?
- Tyr42 6y agoThink "most restrictive", when he says intersection. You can only do things allowed by all of them.
- Demiurge 6y agoI read it as intersection of the permissions is a union of restrictions. So, I think the point is that given the union of the restrictions, you get the most restrictive license in this case, the GPL.