5 ms·
I don't think GPL2 -> GPL3 is a valid example of that. Usually it is to dual-license with a non-open-source license or some other incompatible open-source lice
by nnutter 10y ago
I don't think GPL2 -> GPL3 is a valid example of that. Usually it is to dual-license with a non-open-source license or some other incompatible open-source licenses.
The GPL "upgrade" clause,
> Each version is given a distinguishing version number. If the Program specifies a version number of this License which applies to it and "any later version", you have the option of following the terms and conditions either of that version or of any later version published by the Free Software Foundation.
- bluejekyll 10y agoI think you missed the if clause: > If the Program specifies a version number of this License which applies to it and "any later version", I'm no lawyer, but I think the source has to mention that explicitly. So it's not true of ALL gpl projects. In this case though you are right because nano, it appears, specifies it's license as: > License: GNU General Public License v3 or later So, while true in this case it's not always true (see Linux kernel license, GPLv2, no upgrade).
- cyphar 10y agoMost GPL projects do this. I don't have access to my box, but if you did a search for licenses you'd find many use "or later" (and in fact a lot of code within Linux uses "or later" as well). So practically it's a very common upgrade path. And some people will actually email every contributor to ask to relicense the code.
- mkesper 10y agoIf your licence is GPLv2 only (like for example the linux kernel), there is NO upgrade path.
- cyphar 10y agoActually, a lot of code in the Linux kernel is GPLv2-or-later. Its just that there's a lot of GPLv2-only code that means the final product is GPLv2-only. In fact there was a time when Linus asked people to show their opinion on the licensing exactly by doing that and specifying in every file what the author licensed their changes under.
- ArneBab 10y agoMercurial went the hard road and asked all contributors to relicense under GPLv2 or later.
- ArneBab 10y agoDual-license with a proprietary license is not allowed by the papers you sign when assigning copyright to the GNU project. »We promise to always keep the software free. This promise extends to any successors in the copyright, meaning that even if the FSF were to go away the freedom of all users to share in the contributions wouldn't.« — https://www.fsf.org/bulletin/2014/spring/copyright-assignment-at-the-fsf https://www.fsf.org/bulletin/2014/spring/copyright-assignmen... This is the difference between copyright assignment to the FSF and most other copyright assignment.
- cm3 10y agoWhile surely better than Google or Ubuntu, the new license can still be non-proprietary but highly controversial.
- cyphar 10y agoIf that happened, people could fork the projects immediately and continue under the old licenses. Sure, the FSF would be able to distribute code in an unfriendly license, but the community backlash would be so bad they wouldn't even consider doing that.
- thomasahle 10y agoIt's possible that this has been 'fixed' with GPL3. I just know Linus used it as a reason not to change the license of the Linux kernel.
- cyphar 10y agoLinus explicitly opted out of the "or any later version" clause because he doesn't agree with the ideals of free software (seeing it as more of a practical convenience). All versions of the GPL have had an upgrade clause, mainly so that GNU projects can upgrade the license. Not to mention that much of the code inside Linux is under GPLv2-or-later, but because some of it is GPLv2-only the whole work is GPLv2-only.
- synchronise 10y agoOut of curiosity, how much code is actually GPLv2 only, and how hard would it be to replace those sections with code that was GPLv2+?
- cyphar 10y agoA lot of the core code (and dissapointingly, btrfs) is GPLv2-only. So rewrites are unlikely, you'd have to ask contributors to update the license. Just do a grep for "at your option", since that's the wording in the copyright header to specify that it's released under GPLv2-or-later, tells me that it isn't that great. It's around 10000 files (Linux has ~50000 files) so it's ~20% of files. This doesn't account for documentation or files that don't specify that they are under GPLv2-or-later.
- synchronise 10y agoWas there any specific reason that license was chosen for btrfs that you know of?
- cyphar 10y agoMy guess is >Oracle. They want to make the minimum possible community contribution.