Red Hat Changes Its Open-Source Licensing Rules (zdnet.com)
An anonymous reader quotes ZDNet:
When leading Linux company Red Hat announces that -- from here on out -- all new Red Hat-initiated open-source projects that use the GNU General Public License (GPLv2) or GNU Lesser General Public License (LGPL) v2.1 licenses will be expected to supplement the license with GPL version 3 (GPLv3)'s cure commitment language, it's a big deal. Both older open-source licenses are widely used.
When the GPLv3 was released, it came with an express termination approach that offered developers the chance to cure license compliance errors. This termination policy in GPLv3 provided a way for companies to repair licensing errors and mistakes... Other companies -- CA Technologies, Cisco, HPE, Microsoft, SAP, and SUSE -- have taken similar GPL positions... In its new position statement, Red Hat explained that the GPLv2 and LGPL, as written, has led to the belief that automatic license termination and copyright infringement claims can result from a single act of inadvertent non-compliance.
"We hope that others will also join in this endeavor," says Red Hat's senior commercial counsel, Richard Fontana, "to reassure the open source community that good faith efforts to fix noncompliance will be embraced."
ZDNet points out that the move to new licenses "doesn't apply, of course, to Linux itself. Linus Torvalds has made it abundantly clear that Linux has been, will now, and always shall be under the GPLv2."
When the GPLv3 was released, it came with an express termination approach that offered developers the chance to cure license compliance errors. This termination policy in GPLv3 provided a way for companies to repair licensing errors and mistakes... Other companies -- CA Technologies, Cisco, HPE, Microsoft, SAP, and SUSE -- have taken similar GPL positions... In its new position statement, Red Hat explained that the GPLv2 and LGPL, as written, has led to the belief that automatic license termination and copyright infringement claims can result from a single act of inadvertent non-compliance.
"We hope that others will also join in this endeavor," says Red Hat's senior commercial counsel, Richard Fontana, "to reassure the open source community that good faith efforts to fix noncompliance will be embraced."
ZDNet points out that the move to new licenses "doesn't apply, of course, to Linux itself. Linus Torvalds has made it abundantly clear that Linux has been, will now, and always shall be under the GPLv2."
My overly optimistic reaction, without having studied the details, is that other distributions will fear legal messes and will drop systemd.
Please don't anybody burst my bubble. Sigh.
If you're the copyright holder you can license the code any way you like. You can take a standard license text and add clauses to it. Typically people say they are licensing the code under the GPL with some exception. For example, GCC is licensed under the GPLv2 or later, with the exception added that the code generated by the compiler (your compiled executable) is not licensed under the GPL.
Of course you cannot take someone else's code that is under the GPL and add your own exceptions to the license without negotiating with the copyright holders.
As to the RedHat's statement about people believing the GPLv2 as written implies immediate termination of the license in the event of a license violation, I belief that's just how the US copyright law functions. By default *no one* has any right to use code that is copyrighted by someone else, except as granted explicitly by license. When that license is breached, the default position under US copyright law is that you have no rights to the code.
I support RedHat's proposal and I think it will generate some good will and ease some of the FUD that's out there.
My electric kettle comes with a 20 page instruction booklet. That doesn't make it hard to use. As much as anything it's about an organization covering it's ass with a FAQ.
The world's burning. Moped Jesus spotted on I50. Details at 11.
Regarding Linux, Linus Torvalds' own opinion is completely irrelevant, unless you wanted to use an extremely antiquated, practically useless version of Linux from the 90s.
The actual Linux kernel code is an incredible mish-mash of thousands of contributors' code, both companies and individuals. Each passing day brings more and more copyright owners into the Linux kernel, because each person retains copyright over their individual contributions, and each day brings at least one new kernel contributor.
In order to change the copyright license of the current Linux source code, ALL of the contributors of the current version of Linux -- or their estate in case of deceased people, or the liquidator company in case of bankrupt companies -- would need to agree to the license change. Even assuming that every last contributor could be convinced to agree to change the license, there would still be logistical problems in actually contacting all of them. Deceased contributors probably have invalid email addresses on file, and likewise for contributors who sent in patches from a corporate email address and have since moved on. Just the task of contacting the legal copyright holder of every line of Linux source becomes a nearly futile task, even if you go back to a hideously old and putrid version like kernel 2.0 or 2.2.
You might think that you could discombobulate some of the "long tail" of contributors by just removing any source lines (using a Git script) that were contributed by someone not in the top 100 contributors. If you did that, you might wonder, wouldn't that leave an almost-working kernel that the top 100 contributors could then carry forward with, fixing the little one-liners that drive-by patchers gave them here and there? And then you could surely hunt down a mere 100 contributors (or their estates) and change the license -- right? Well, no.
Per this -- http://www.remword.com/kps_res... : there are 19,817 kernel contributors just since 2005 (and quite a few more before then, as Linux was indeed quite popular and noteworthy among engineers in, say, 2004; people even made a halfway decent desktop OS based on it by this time). Half the people -- 9912 to be exact -- contributed 2 or fewer patch sets, which only amounts to 1% of the total patch sets. If we assume that, on average, over a large dataset, any two patchsets are equally likely to be any given size regardless of contributor (which may or may not be a safe assumption), that still means that 1 out of every 100 lines of code in the Linux kernel would have to be independently re-written by someone else if we removed the long tail of copyright owners.
And that would only reduce your total number of contributors by _half_; you'd still have 9000-some contributors who have 3 or more patchsets to their name. I wish that site would tell us what percentage of the codebase is contributed by, say, the last 15,000 people in the list of contributors sorted by number of patchsets. It would probably be something ridiculous like 20 or 30%, meaning that if you wanted to whittle down the number of copyright holders in the kernel to about 4000, you would have to re-write (independently, without peeking) about 1 in 5 lines of code on average. Eww.
Not to mention that randomly removing lines of code (or small but important fixes) all over the codebase would create a mess that probably wouldn't compile, and once it did compile, it'd need to be heavily tested, debugged and fixed just to get it nominally working on modern hardware.
So, yes, peoples' opinions about what the license of the Linux kernel "should be" are completely and totally irrelevant. We can't remove the code from a significant number of contributors to the kernel to whittle down the list, because doing so would spark a many-year project to get the kernel back to some semblance of what it is today. And we can't contact everyone and try to get everyone to agree to a license change, because you're probably going to be sim
> You're of course welcome to remove any clause from the GPL you wish. Linus Torvalds did just that when he licensed the kernel; the "or any later version" clause is removed.
https://www.gnu.org/licenses/o...
You may NOT modify the license and still call it GPL, nor use the GPL preamble.
If you grep the license, the GPL.org copy,
( https://www.gnu.org/licenses/o... )
you'll see there IS no "or any later version" grant in the license. Nothing was removed. Rather, you'll find that suggestion as an option after "END OF TERMS AND CONDITIONS", under "How to Apply These Terms to Your New Programs". It's a suggestion on how one can use the license, and is not part of the license itself.
What does appear in the license (10) is an explanation of what if means IF a program specifies "or any later version":
--
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.
--
Note first the first word "if". If the author choose to grant "or any later", the license says that means "either that version, or any later". Either, or. As in programming, in law "or" means something very different from "and". It does not mean "comply with this version AND every later version".
You can choose to follow v2 OR v3, you aren't required to comply with the combined conditions of every later version ever produced.
So if you re-distribute some of our code that's "GPLv2 or any later version", you may follow v2, or you may follow v3, at your option. You can choose to follow both. The GPL FAQ explains this as well:
https://www.gnu.org/licenses/o...
--
When a program says âoeVersion 2 of the GPL or any later versionâ, users will always be permitted to use it, and even change it, according to the terms of GPL version 2â"even after later versions of the GPL are available
--
When it says "v2 or later ... permitted to use it, and even change it, according to the terms of GPL version 2", that means they have to follow all of the conditions of GPLv2, and there are no other conditions. They may elect v2 and ignore any other versions. One of the conditions of GPLv2 is that if you distribute a modified copy, you must distribute it under GPLv2.
So for any software under "GPLv2 or later", you can choose to accept the v2 license, and distribute your modified version under the v2 license. You need not follow a version you don't even know exists, and need not distribute your changes under later versions. You must put your modifications under the same license you're using to allow you to distribute it - which can be v2 OR something else.