Recently I have caught myself deep into discussions on the extent of copyright applied to Free Software and how the copyleft effect plays a role in Software Freedom. On an Identi.ca message I said:
Free Software is NOT about the freedom to choose the license under which software made by others can be redistributed.
Let me expand a bit on copyleft compatibylity
Copleft is a property of some licenses that uses the right to authorize derivative works as a tool to control the license(s) under which such a derivative must be relicensed. For instance, the GNU GPL only permits larger works to be redistributed under the GNU GPL. No exceptions. One can argue how far this limitation can legally go and what is the border between “derivative work” and “collection of independent works”. While this distinction is clear for literary works, in software there are a lot of variants — one of which is “dynamic linking” — that make things far more complex and less cleancut. Because of this, I prefer to leave the matter unresolved and proceed under the assumption that “derivative” here is really a derivative, whatever that means.
Copyleft is quite rude. It says “I don't permit you to take my work and put it into any other license, even if you permit me to do so.” Some developers and projects have decided to mitigate this rudeness by issuing exceptions, like “you can also license a derivative on this other license(s).” The GPL v.3 acknowledges this practice and expressly permits to add certain exceptions to more liberal licensing, provided that the downstream recipient of the software is always permitted to strip off the exception and go for the strict version of the GPL. Some licenses, like the EUPL, have embedded this exception in the language of the license, so an EUPL project can mingle with a given number of licenses, like the gPL v.2 or the Eclypse license. This is called one-way compatibility clause. One way because once the downstream recipient has used the compatibility clause and licensed a derivative under a compatible license, the same work cannot be re-licensed back to the EUPL.
Ok they say, why don't we make all strong copyleft licenses reciprocally compatible, in other words, let's make a two-way compatibility regime. At face value, that seems just rational and fair. But this does not hold water even after a basic examination.
Let's strart with the most extremist position. One could say “let's make any license compatible with any OSI-approved other license”. The consequence is simply unthinkable. For instance, an Affero GPL licensed work could be modified to create a derivative and be distributed under — for instance — an ultraliberal license like the two-clause BSD. This would indeed simplify things, because it would reduce to nonsense most Free Software licenses and annihilate any copyleft of any sort. This would give free range to proprietarization.
But even if we restrict the area of compatibility to strong copyleft, a lot of problems arise. Strong copyleft licenses are the most complicate to draft, because the system is Free Software agnostic at best, and it favours proprietary licensing. Whereas if you want copyleft, there is a lot of legal hackwork in place. All this would be lost if relicensing was permitted. For instance, suppose that in license A there is a very cunning clause against “TiVoization”, which is not in license B. If Evilcompany X wants to avoid that clause to circumvent the spirit of copyleft, it can just use the compatibility clause and use license B. Now try to change “A” with GPL v.3 and “B” with GPL v.2, and you know why the FSF has decided to make them incompatible.
Suppose now that license A has a compatibility clause towards license B. And suppose that license B has a compatibility clause with license C, which is weak copyleft. That would make software under strong copyleft A available under weak copyleft C. Suppose that license A has an express patent license clause, and that B has it not. Evilcompany X can take the software, extend it with a patented part and license it under B, so if you want to use the extended software you must also take a patent license from X. So much for “reciprocity”.
Two way compatibility between strong copyleft license is simply impossible. The only way to achieve it is to renounce to the strong copyleft effect .Even then, there are so many things that can go wrong. Take the Mozilla Public License (MPL), which is a weak copyleft one (they say it is file-level copyleft). MPL has a patent licensing provision, therefore if you make it compatible with another license (by design and not by decision of the author), and this other license has a less clear or an ineffective patent licensing provision, you end up diluting all efforts to preserve freedom even within the single file upon which the copyleft should work.
Those who have embedded one-way compatibility into their license will now complain that it is not fair that the other way round is impossible. How come, they say, we recede from our copyleft to be compatible with yours, and you do not do the same in return? A nice argument, again, but rather nonsensical upon closer exam. The same can be said of who licenses software under a weak copyleft license, they would never say “oh, but this has gone into a proprietary application”, because that is the intended effect, they cannot demand that the proprietary application allows them to use the proprietary part, because that is provided by, well, copyleft. If your decision is to allow more liberal licensing from recipients, you must be coherent with your decision, can't have the cake and eat it. For the reasons sketched above, any request of reciprocity is a trojan horse to remove barriers to proprietarization. You can lower your barriers, but cannot demand that others lower theirs. One can advocate for weak or no copyleft, everybody is free to share their software under ultraliberal license or even dedicating it to public domain. This is not a reason to demand others to do the same.
The more copyleft exists, the more we will be protected against misappropriation and proprietarization. The less different copyleft Free Software licenses exist, the more commons will be shared on an equal footage. The two can go along quite well. But bear in mind that the only solution to the incompatibility problem of strong copyleft licenses is to avoid proliferation.
Comments are welcome via identi.ca @carlopiana