Will you keep this phrase with the GPL v3 too?
Yes, certainly. We cannot assume that GPL v3 will be perfect, that no further change will ever be needed.
What type of compatibility and interaction will GPL 3 have with previous version of the license?
Even small changes from version 2 of the GPL will result in an incompatible license. Two slightly different licenses, each saying that modified versions of a program must be distributed under the same license, are inevitably incompatible. That's why we suggest that programs permit use of future versions of the GPL. It is the only way they can migrate.
Linux (the kernel!) comes under GPL version 2. Quoting Linus's note:
Also note that the only valid version of the GPL as far as the kernel is concerned is _this_ particular version of the license (ie v2, not v2.2 or v3.x or whatever), unless explicitly otherwise stated.
What would you do if Linus chose to keep the kernel under GPL v2.0? Would you promote a fork led by someone else under GPL v3?
Only the developers of Linux can decide what to do about licensing of Linux. I hope they'll decide to convert back to "GPL version 2 or later" and subsequently upgrade to GPL version 3, but it's up to them. There's nothing in the matter for me to do.
Maybe you could talk about the common question that people have: a project under GPL that receives a patch under GPL 3. What happens?
If the project's current code permits use under "GPL version 2 or later," they can integrate that patch. However, the files where they have merged in the patch will have to say "GPL version 3 or later."
They also have the option of not using that patch, or asking the contributor to give permission for its use under "GPL version 2 or later."
If I take a patch under GPL 3 and merge it with a project under "GPL 2 or later," should I write that the new license for the whole project is GPL 3?
The merged program as a whole can only be used under GPL 3. However, the files you did not change could still carry the license of "GPL 2 or later." You could change them or not, as you wish.
And then include GPL 3 in the file named COPYING?
Yes, you should include a copy of GPL 3. If some files remained under "GPL 2 or later," then you should also include a copy of GPL 2.
Will GPL 3 include any specific clause for dual-licensed software?
The term dual licensing refers to various different kinds of policies. All they have in common is that the same developer releases the same code under multiple licenses, giving the user a choice of which license to use.
There is no need for the GPL, or any free software license, to contain a specific clause for this. If you want to release your program under two licenses in parallel, you can always do that, and the licenses in question need not be specially designed to make that possible.
Some companies, such as Google, use code covered by GPL to offer their services through the Web. Do you plan to extend GPL 3 copyleft to request code publication in this case too, considering this behavior like a product distribution?
Running a program in a public server is not distribution; it is public use. We're looking at an approach where programs used in this way will have to include a command for the user to download the source for the version that is running.
But this will not apply to all GPL-covered programs, only to programs that already contain such a command. Thus, this change would have no effect on existing software, but developers could activate it in the future.
This is only a tentative plan, because we have not finished studying the matter to be sure it will work.
How would it work?
If you release a program that implements such a command, GPL 3 will require others to keep the command working in their modified versions of the program.
Do you plan to define explicit punishments in the GPL 3 for people or companies that don't respect its clauses?
GPL version 2 already does this: it states that violating the license conditions terminates the license. We're considering changing the details a little, but not more than that.
I think this is an interesting topic. Sometimes we hear that a company violates the license conditions, but I think there is still a lot of confusion about what should happen next. Could you please explain what type of consequence it brings, and what "terminates the license" means concretely?
Legally, termination of the license means that that person or company no longer has legal permission to redistribute or modify the software in question. If it continues to do so without permission, it is copyright infringement, the copyright holders of the program can sue.
Copyright infringement is not necessarily wrong, but distributing software without respecting the freedom of the users is necessarily wrong. If we ever need to sue to enforce the GPL, the ethical justification won't be "you disobeyed us" but rather "you are trampling other people's freedom, and we are here to defend it."