Linus Says No GPLv3 for the Linux Kernel
HenchmenResources writes "Late Wednesday a posting from Linus Torvalds appered on the the Linux Kernel Mailing List. In it Linus states that the Linux Kernel will remain under the GPLv2. Types Linus,"The "version 2 of the License, or (at your option) any later version" language in the GPL copying file is not - and has never been - part of the
actual License itself.""
What is that thing about developers having to turn over their private keys? I don't think anything that stupid is even considered for GPLv3.
I wish there would be a rational and friendly discussion. Is that too much? Have we come thus far?
This comes as no great surprise. How could Linus convert it to v3, even if he wanted to? There are thousands of individual copyright holders to contact (not everyone released it under "any later version"). For some of them, that's going to require a seance and/or JLH, since they are dead now. I consider this a non-story, personally, we knew this was going to happen before v3 was even announced.
Either, one entity holds the copyrights, and are free to change the license. Or, the copyright holders have agreed upon submitting their code, to allow the thing to be released as "GPL v2 or later".
Dvorak on Doomtech
Here is the full text as it took me several times to get past the MySQL errors with too many connections:
Date Wed, 25 Jan 2006 17:39:16 -0500 (EST)
From Linus Torvalds
Subject Re: GPL V3 and Linux - Dead Copyright Holders
On Wed, 25 Jan 2006, Chase Venters wrote:
>
> This means that when the code went GPL v1 -> GPL v2, the transition was
> permissible. Linux v1.0 shipped with the GPL v2. It did not ship with a
> separate clause specifying that "You may only use *this* version of the GPL"
> as it now does. (I haven't done any research to find out when this clause was
> added, but it was after the transition to v2).
Bzzt. Look closer.
The Linux kernel has _always_ been under the GPL v2. Nothing else has ever
been valid.
The "version 2 of the License, or (at your option) any later version"
language in the GPL copying file is not - and has never been - part of the
actual License itself. It's part of the _explanatory_ text that talks
about how to apply the license to your program, and it says that _if_ you
want to accept any later versions of the GPL, you can state so in your
source code.
The Linux kernel has never stated that in general. Some authors have
chosen to use the suggested FSF boilerplate (including the "any later
version" language), but the kernel in general never has.
In other words: the _default_ license strategy is always just the
particular version of the GPL that accompanies a project. If you want to
license a program under _any_ later version of the GPL, you have to state
so explicitly. Linux never did.
So: the extra blurb at the top of the COPYING file in the kernel source
tree was added not to _change_ the license, but to _clarify_ these points
so that there wouldn't be any confusion.
The Linux kernel is under the GPL version 2. Not anything else. Some
individual files are licenceable under v3, but not the kernel in general.
And quite frankly, I don't see that changing. I think it's insane to
require people to make their private signing keys available, for example.
I wouldn't do it. So I don't think the GPL v3 conversion is going to
happen for the kernel, since I personally don't want to convert any of my
code.
> If a migration to v3 were to occur, the only potential hairball I see is if
> someone objected on the grounds that they contributed code to a version of the
> kernel Linus had marked as "GPLv2 Only". IANAL.
No. You think "v2 or later" is the default. It's not. The _default_ is to
not allow conversion.
Conversion isn't going to happen.
Linus
Quality Hosting e3 Servers
Discussion over GPLv3 has been going on for quite some time now even though the draft has just now emerged. He has mentioned a few things, one is that he has no problem with DRM in the kernel, whereas GPLv3 is Anti-DRM. Also Linus opposed having his developers have to make their private keys available, which was stated in the article.
I think he's thought it though, and I think the decision makes sense. No one says you have to increment from GPLv2 to GPLv3, it is at your option. RMS make the license more restrictive, too restrictive, therefore Linus said no.
http://software.newsforge.com/article.pl?sid=06/01 /17/1454213&from=rss
DRM clause I guess?
"Complete Corresponding Source Code also includes any encryption or authorization codes necessary to install and/or execute the source code of the work, perhaps modified by you, in the recommended or principal context of use, such that its functioning in all circumstances is identical to that of the work, except as altered by your modifications. It also includes any decryption codes necessary to access or unseal the work's output."
http://gplv3.fsf.org/draft
The Linux kernel has _always_ been under the GPL v2. Nothing else has ever been valid.
Nothing to see here, please move along.
He who knows best knows how little he knows. - Thomas Jefferson
OK, I guess I see where the confusion comes from, but it still seems just like confusion. How on earth could this clause require Linus to release his private keys? There is no DRM in linux. No encryption or authorization codes are required to install and/or execute the work, and no decryption codes are necessary to access or unseal... you get the idea.
Is Linus on crack?
Tired of Political Trolls? Opt Out!
How can code released under the GPL be relicensed at all, even GPLv3?
1) Because the GPL license can optionally include the statement that it's covered by the GPL and/or any later version.
2) Because a copyright holder can relicense, dual-license and in general put any conditions he or she wants on their copyrighted work, including multiple different sets of conditions (licenses).
What you are asking is akin to saying "If someone lends a book to me on a set of conditions, how can they be allowed to lend it to someone else on different ones?".
If it can be, why can't I take it and license it with a BSD-style or completely closed source license?
Because you don't own the copyright.
I'm with you on this. I distruct Richard Stallman for the same reasons. I personally think he's gone off on a side road of his original mission. Originally, it was to provide a bunch of software that was open to all and protected by copyright. Now, it seems his mission is to attempt to destroy anything that isn't open to all and protected in the ways he wants to define it. The first is setting up a safe haven for intellectual ideas and the like. The second is waging a war. I don't want a war and have no time for it. I prefer to live and let live and have no problem with OSS and proprietary software coexisting. Stallman no longer wants to coexist so I've not supported his views for some time.
I made the same decision Linus did on a project I run. I like what GPLv2 says, I don't want someone at MIT deciding, years after I wrote my code, what the terms of the license on my code are by granting additional rights or restrictions. My application happens to be one that runs on a server and presents users with a web interface. As you'll recall, there were originally thoughts that v3 would require modifications to such applications to be available.
The guy that started the topic is the same !#@&% guy that offered to relicense the linux kernel for some $50,000 not some time ago.
http://lkml.org/lkml/2006/1/20/226
http://lkml.org/lkml/2004/10/23/186
OK thats just the kernel being talked about. What about the rest of GNU/Linux?? Will it move to GPLv3?
I'm primarily concerned with gcc, glibc and the likes. X has its own license that I'm OK with. The rest of the apps are not critical and easily replaceable. gcc glibc and the kernel are damn hard to replace... they exist alone. Others have competitors.
I dont want any of GPLv3 in my system just as I dont want any of SCO code in my system. Maybe the final GPLv3 will be more palatable than it is now.
"Give orange me give eat orange me eat orange give me eat orange give me you." -Nim Chimpsky
No, my statement is true: Philosophy does not yield code. People yield code. I was replying to the statement that the Linux kernel is more popular with both individuals and companies because it is more flexible (from a copyright standpoint) than HURD. This is the same reason why *BSD is popular with some people and companies -- they're not bound to the more restrictive GPL.
I'm sure "SlashdotMedia" will improve on all the wonders that Dice Holdings blessed us all with
This license is less free than others because of the new provisions. I predict that the new wording will drive more new projects to BSD style licensing.
heh. That depends on what you mean by free:
A) Free as in free to do what you like with. eg, GPLv2 is more "free" in this sense because businesses have more "freedom" to DRM or patent encumber software under this license.
B) GPLv3 has more restrictions in place to guarantee that software licensed under it is not encumbered by patents or DRM restrictions. Thus it guarantees that DRM and patent restrictions don't restrict people "freedom" to use the software.
BSD style is more free in terms of (A) and less free in terms of (B). For example I am "Free" to contribute secretly patented code to your BSD project and then take you to court for patent infringement when you distribute said software. Is that a freedom you intended to grant me or would you actually have preferred to use a more restrictive license after all?
As a user, you won't care. It *only* relates to software authors. A quick and dirty summary:-
- Public domain allows people to do anything they like with your code, including making minor mods and claiming it as all their own work, or making minor mods and selling the result as closed-source code.
- BSD allows reuse of your code or a modified version of your code, in anything (including commercial software), without releasing source, so long as they credit you. In other words you can't claim it as your own work.
- LGPL allows reuse of your code as a component part of a commercial software system - hence its alternative name of "library GPL". You don't need to release the code for anything that uses this code/library. However if you make changes to the LGPL code/library then you must release the changes. Again, credits are required.
- GPL goes a step further. If you use a GPL code/library component as part of your software, then you must also release *all* your software as GPL as well, otherwise you may not use that code/library component. Again, there's the requirement for releasing code and credits.
There's many other licenses, but you get the idea.
There's two different philosophies here that drive this.
The first is the Open Source philosophy (Linus and ESR are the drivers here). This says that if everyone works together, we can build something better than closed source software. But it doesn't invalidate the existence of closed source software - it acknowledges that this only works for mass-market software, so there will always be niches where closed-source is a better choice. Basically their drive is to help people do their jobs more efficiently.
The second is the Free Software philosophy (driven by RMS and the FSF group). This says that the very *existence* of closed-source software is immoral, and anyone using closed-source software (even in niches where no free equivalent exists) is guilty of immorality (RMS says that if no free software exists to do a job, then you should refuse to do that job). Software is therefore created as a moral imperative, rather than as a means to an end of carrying out some task (such as web browsing or word processing).
Grab.
"Which is why HURD will never see the light of day in any substantial fashion. Philosophy doesn't yield code."
If you simply want to argue over the semantics of whether or not philosophy yields code or people yield code, read no further; I have nothing to say to you. The point of this post realtes to substance, not semantics. (And before you stop reading, ask yourself this: what is philosophy without people?) Your second statement is clearly a generalization you're drawing from your first, and in incorrect one, at that. As GP alluded to, the GNU in GNU/Linux is all the utilities you use on the command line, up to and including the command line itself, and is under the copyright of the FSF. I haven't done recent SLOC counts on GNU vs. Linux, but I would be surprised if they weren't at least comparable - I'd expect that GNU actually has produced substantially more source code (that is used all the time by all manner of users and developers) than the Linux kernel itself these days. Back in 2002, RedHat 7.1 was studied and though the kernel was the largest single body of source (~2.5 million lines), there are GNU programs all over that quickly outstrip the kernel in sheer volume of source: gcc alone is huge (~900k lines), but emacs (~600k lines) and glibc (~600k lines) are both quite large as well. Those are only three GNU programs, the directory of FSF software contains (as an estimate) hundreds, including the Hurd itself.
Indeed, philosophy is a manner of viewing of the world and is expressed not by some abstract theoretical paper you write, but in how you choose to live and contribute your work to others. In this sense, philosophy is very much responsible for yielding code - do you honestly think that without the philosophical buy-in of its contributors, free software would be anything today?
The GPLv3 will be fundamentally incompatible with any program using the Trusted Computing, because all the necessary keys can never be revealed. I assume that is the point
Exactly.
And Linus's point is that that makes it fundamentally incompatible with other forms of code signing too. The whole "Trusted Computing" thing is just a logical extension of current code-signing practice, you can't ban one without affecting the other.
Example: You want your OS's auto-update mechanism to validate updates against your vendors' private key ? I do. That's how I trust it. Your OS is GPL v3 ? - then your vendor has to publish the keys. Bye bye trust.
[RMS says] anyone using closed-source software (even in niches where no free equivalent exists) is guilty of immorality
That's simply not true, and amounts to a gross misrepresentation of RMS' position.
What he says is: "If you value freedom, you will resist the temptation to use a program that takes away your freedom, whatever technical advantages it may have."
Which is a different thing altogether.
OK, so it appears Linus has decided that Linux will not be converted over to GPL v3. Lots of people have given philosophical opinions about this, but what if we step back and look at it from a purely practical point of view? What are the costs of converting to GPL v3, and what benefits would it provide to the Linux maintainers and users?
Possible benefits:
That's pretty much it as far as the positives for Linux, as far as I can tell. Now, what about the negatives?
So what is the bottom line? Converting offers basically no major advantage. GPL v2 is just as good as GPL v3 for the purposes of Linux. And, converting is a huge hassle. So, rather than looking at why Linus isn't converting the kernel over, why don't we ask this question: why should it be converted over? There doesn't seem to be any kind of compelling advantage.
My guess is that the same thing is going to apply to lots of other projects. Converting is a great big hassle, and it doesn't offer any big advantage, so people just won't bother.
If the kernel project guys really do not want GPLv.3-released code in their product because they consider it to be virally too restrictive, then fine. That is their prerogative and they don't need to include it. However, if the author of some highly-desired code really wants v.3 and doesn't care if it lands in the official kernel source tree, then the contrapositive applies: they can't force him to change it, either.
Remember, the GPL in its various forms is not restrictive; it is permissive. It starts with the default copyright restrictions allowing no copying of the code. It then generously gives permission to copy and use it while only asking for a few small acts of good behaviour in return.
"Now, it seems his mission is to attempt to destroy anything that isn't open to all and protected in the ways he wants to define it."
I rather doubt that. I think he is trying to fight the creation of an environment where free software is either illegal to run or technically impossible to run. Both are quite possible. After all, what good is software with no hardware to run it on? Stallman is right to worry about that point.
Stallman has ALWAYS considered non-free software immoral. He is "leading by example," so to speak. The problem is the hardware side is more difficult to handle, since fab equipment for chips is not a simple or inexpensive proposition.
I don't like the GFDL because of its invariant sections (primarily) and so in that regard I disagree with the approach he and the FSF have taken, but on the whole they seem to be facing up to some very unplesant possibilities and trying to put roadblocks across their ever being implemented. I'm reminded of two Lord of the Rings quotes:
"It needs but one foe to breed a war, not two."
"Those without swords can still die upon them."
Stallman is doing exactly what he has always done - respond to the threats as they become apparent. His approach to patents is another step in the same direction.
To paraphrase a sig I saw somewhere: "it's only paranoia if they AREN'T actually out to get you." Like security, license writers should be paranoid about threats to their intent. It's just too expensive to try hashing things out in court.
"I object to doing things that computers can do." -- Olin Shivers, lispers.org
Nice try, but it wouldn't work. You don't have legal rights to Linus' key. Section 12 states that if you cannot legally meet the obligations of the license (in this case, giving out Linus' key), you cannot distribute the code at all.
Since you can't force Linus to give up his key (it's under his copyright, and there's no obligation for him to give it up under the GPLv3), you simply can't distribute your embedded device to anyone with the GPLv3ed software included. Doing so would be a violation of the GPLv3.
The only time that you would have to give up a key is if you distribute the code in such a way that a key is required for custom modifications to work. Trying to do so using a key you don't have rights to falls prey to Section 12, meaning you can't distribute the software at all.
You are in a maze of twisty little relative jumps, all alike.
> People yield code. I was replying to the statement that the Linux kernel is more popular
> with both individuals and companies because it is more flexible (from a copyright
> standpoint) than HURD.
No.
Linux is more popular than HURD because at certain critical points in history it was "working" and "ready" for definitions of "working" and "ready" that could not really be applied to HURD at the time. Basically, Linux was in the right place at the right time. HURD never showed up to the party, and there was a licensing lawsuit connected with BSD at a particularly critical point in time which left it just a little behind in just the wrong ways at just the wrong time, allowing Linux to get "ahead" in terms of mindshare and popularity in the developer community. Consequently, there was a several-month time window, at a particularly important time in history (right about when a lot of college undergrads were first getting net access) when if you wanted a freely-available, freely-modifiable, freely-redistributable operating system, Linux was _the_ obvious choice. That gave it a leg up, got a lot of people involved with improving it, and made it the leading and most popular free OS. Nothing has yet managed to unseat it from that position.
Just to be clear, I'm not saying that the FSF's policies haven't hampered HURD development. They likely have. What I'm saying is that that is not the key important reason why Linux is ahead of HURD (both in terms of popularity and development cycle). The key reason is because Linus had working, usably complete code at an important time when the FSF (in terms of a kernel) did not.
If the timing had worked out differently, the HURD might have been in the leading position, in spite of the FSF's (admittedly rather strict) copyright policies. It is notable that a number of the FSF's *other* projects, despite said policies, are leading implementations in their respective niches, because those projects were finished to the degree they needed to be and working to the degree they needed to be when they needed to be. Emacs for instance was there enough and working enough (for _most_ of the folks who wanted an Emacs, albeit not for Lucent) that XEmacs is just another, somewhat less popular alternative, rather than completely eclipsing Gnu Emacs as Linux has done to HURD.
Cut that out, or I will ship you to Norilsk in a box.