It's Not Copyleft

Sat, 1 Oct 2016

Someone recently pointed me to Jonathan Riddell's blog post "In Defence for Permissive Licences; KDE licence policy update."

In there he seems to be claiming that any free software license that requires preservation of the license notice (and almost all do) means that anyone getting a copy gets those original permissions. Essentially that all such licenses are some form of copyleft. This is nonsense, as I'll explain.

But first I wanted to mention that he seems to contradict himself.

In paragraph #3, while he's making the claim, he talks of misconceptions: "One is that it allows you to claim additional restrictions to the code and require anyone you pass it onto to get a different licence from you. This is nonsense..."

But then when talking of MIT he says "you can even sublicence it, make a additional licence with more restrictions..."

So which is it? Can you add more restrictions or not?

Anyway: You can, as I'll explain.

His whole point is that the license requires the notice to remain there. So what? Yes, someone may voluntarily pass on the source code and the freedoms to copy, modify, etc. but they're not required to. They're only required to include that particular blob of text, not to actually give you those permissions. There is a subtle difference.

Because, just like the license says, it can be sublicensed. Let's imagine a program under a proprietary software license that also just happens to incorporate some code under MIT. Let's also imagine that said proprietary program just happens to come with source code and so you can see the source and that blob of text from the MIT license.

Let's further imagine that this proprietary software license came with terms that, among other things, said "you agree not to share any part of the software (including by extension the MIT-licensed parts because it's part of the software), and also not to modify it. If you do not agree you may not get or use our software. If you use the software outside of these license conditions we shall call you a "pirate" and put you in jail for years." Clearly non-free. And yet it doesn't contradict anything that the MIT license has said because it did say I could sublicense and, in this imaginary scenario, in my sublicense I grant only the right to "run" the software.

Further, that license says only that I have to leave that blob of text in there. It doesn't say I actually have to give you those rights. It doesn't say can't require you to give up those rights as a condition of getting my source-available-but-proprietary program. It also doesn't forbid someone from requiring you to agree to terms to not exercise your free software rights as a condition of getting their proprietary program.

Sure that blob of text may be in there but that doesn't necessarily mean anything. Because, just like Jonathan said, it can be sublicensed. And so as a result while the text may be present it's inoperative in those cases where you've agreed to different terms to not exercise any rights you may have otherwise had.

And that's really the crux of the issue, I think.

In order to qualify as a copyleft, the original license would have needed to have terms requiring that the operative license to be the original license and not something else and a requirement that someone can't forbid you those rights or ask you to give them up.

This is precisely what the GPL does. You can combine other things into GPLed works (as long as they have license terms compatible with the GPL) but the GPL requires that the operative license when you distribute it be the GPL and to actually grant those rights.

If you want to be sure that everyone has the right to run, study, and share the software then use a strong copyleft license like the GNU GPL and support enforcement efforts to ensure that it actually happens in practice. (An unenforced GPL is, similarly, just lip service.)

This is why things like the GPL are longer: Because they try to address more things than the permissive licenses do.