Warp 35

Soapbox of a GNU/Linux lovin' guy.
FOSS just works.

My Photo
Location: Groningen, Groningen, Netherlands

I'm a Dutch guy born in 1974. Growing up I went from a dreamer to halfway mature. In 2002 I met my life partner and I'm living happily with hime ever since. I'm seconded at Stork Technical services since 2001. Right now I'm pretty happy with where I'm at.

Wednesday, August 09, 2006

GPLv3 - draft 2

Keeping the core values intact.

The FSF is now halfway through the process of updating the GPL. The current proposal (Draft 2) for the future GPL V3 has had its share of tweaking, as a result of the first public review round. So far it has had positive effects, such as the narrowing of too broad requirements in Draft 1. Draft 2,in my opinion, is becoming a well worded and balanced document.

You would think that everybody would be happy about the positive progress made with the new version of the GPL. This, unfortunately, is not the case. There is a lot of opposition against the new DRM-clause in the proposal. The clause states that you are not allowed to use any kind of DRM (think of it as an electronic padlock) to lock users out of their rights to exercise the four freedoms (use, study, modify and propagate) on software covered by the GPLv3. From an FSF freedom point of view, it is a mere addition to further protect the ideas already embedded in the GPLv2.

The prime ideological principal of the FSF is that developers and users have a right to the four freedoms. These four freedoms guarantee the enduring freedom to use a computer without being beholden to third party interests. Anything that crosses the ability to exercise the four freedoms, is a threat to GPL-ed software. The FSF is taking precautions with the GPLv3 to adress the issue that DRM hardware can defacto override the rights granted in the GPLv2. Since the primary goal of updating the GPL is to protect the four freedoms, the DRM clause is not a separate new idea, it is an addition to close the loophole that is legal to the letter of the law, but counter to the intent of the GPL. Yet a lot of people have trouble understanding this.

Before the revision process of the GPL started, it was made very clear by Eben Moglen, that the GPL was and is the work of authorship by Richard M. Stallman. The GPL is not a free document. You are not allowed to change it. You may use verbatim copies. It could be that everybody feels like the GPL is ours, because it is one of the darling FL/OSS licenses. Still, just because the GPLv2 gives us the warm fuzzies, doesn't mean we have veto power over additions RMS and the FSF deem necessary. The GPL always was a take it or leave it license. All in all, the public review process is a very open and fair undertaking. RMS could have just handed down the new GPLv3 “as law”, but he opted for public commentary and revisions based in part on that commentary. RMS did more than he had to do.

Another misunderstanding seems to be the idea that the GPL is a Linux license. While Linux uses the GPLv2 and became very successful under it, the GPL is primarily a license written and used by the FSF to protect software written for the GNU project. GNU is a project with the goal of writing a completely free implementation of the UNIX (tm) Operating System. Started by Richard Stallman in the early eighties, the GNU project recreated the software pieces of a Unix system using the GPL as the governing license. In the early nineties the GNU project almost had all pieces together to be able to build a Unix-compatible OS. The only missing piece was a kernel*. GNU had started work on the HURD, but that project didn't yield a usable kernel in time. Here Linus Torvalds stepped in, who released the Linux kernel in 1991 under the GPLv2. GNU could be completed by filling in the gap with Linux.

* (A kernel is the piece of software at the core of an OS. It is, let's say, the super-driver that makes the pieces of hardware work together and it regulates the communication between the hardware and programs that run on top of it.)

What most people don't know or conveniently try to forget if they do know, is that Linux came to be, because Linus Torvalds could freely use a complete OS environment created by the GNU project. Linux still depends on GNU software to be of any use at all. We could go as far and say that Linux probably would not have been as successful if it didn't have the complete Operating System tools from the GNU project available. GPL + GNU + Linux was the winning combination, because all three components complemented each other and the GPL kept the whole system free.

The sad part about the struggle over the draft of the GPLv3, is that Linus Torvalds opposes the new proposal. Torvalds claims that the GPL is overreaching in its stipulations, when it takes on the DRM padlock. Torvalds thinks that software has no right to dictate how hardware interacts with it. In several statements Torvalds has said that the new GPL is based on hate, is unjust to hardware vendors and misses its goals. Torvalds solution to the threats of proprietization of free code by DRM and patents is to do essentially nothing to the GPL. His stance is that DRM can be stopped by not buying DRM hardware. Which would be the most effective way to kill DRM if the IT and content industry were free markets.

Torvalds seems misguided on a few things. First his assumption that the free market will sort this out. The free market has been disrupted for years. Multi-billion dollar interests have the money and the power to tip the advantage towards their goals. Governments are not as keen to keep the playing field level as they used to be. Anti-consumer laws have been passed, that were the sole result of lobbying efforts by the industry. These billion dollar interests are working very hard to wrest control from the end-users over their own computers. DRM is the magic word to enable failing business models and predatory monopolies to secure their future and make some more bucks on the side.

Imagine to be able to sell hardware that prohibits its user to do anything that the vendor doesn't like. A spyware chip on the motherboard controls every action a user can or cannot perform. Programs and content obey their masters, not you. DRM effectively makes everything you purchase rented, as outside interests can use the hardware against you to disable the use of purchased programs and content anytime they feel like it. Does anybody really think that a relatively small group not buying DRM hardware will make a difference against these anti-capitalistic influences?

The second mistake Torvalds makes, is his assumption that the GPL, as a software license, has no business dictating hardware requirements. The GPL, from its inception, has dictated requirements to hardware. Since the GPL forbids the linking of closed source software with GPL-ed software, the Linux kernel itself, being released under the GPLv2, has always dictated to hardware manufacturers that they can only interact with the kernel through open drivers. Torvalds never objected to that particular restriction on manufacturers, because it has made his own life as a software developer easier. Still, it is a tad silly to object to one requirement, while accepting and enforcing the other similar requirement.

Torvalds has stated that the Linux kernel will not move over to the GPLv3, when it is finalized. Adding that he himself will not relicense his own code under the GPLv3. His rationale, why the kernel as a whole will not move over, is pretty clear cut and valid. Torvalds stopped being the sole copyrightholder on Linux the day he released the kernel on the net. Torvalds can’t relicense it GPLv3, because he would have to get permission from every contributor with active code in the kernel. Some of those distributors are deceased. So his statement, that he won’t relicense his own code under the GPLv3, is a paper tiger. His refusal to relicense, is just a minor showstopper in light of the reality that there are too much rightsholders to be able to relicense easily. A symbolic protest against the update of a license that still upholds the ideals of freedom in every sense.

Some try to characterize this disagreement as an ego battle waged by RMS on Torvalds. Some say RMS doesn’t matter anymore, because Torvalds gave us Linux. RMS supposedly is trying to get back in the limelight. I think they are missing the point. RMS has never been about anything else than free software. He is concerned about the long term viability of it. Viability in this case does not mean uptake by corporations or Windows ex-patriots switching en masse. Viability means the continuing availability of the code under licensing conditions which give everybode the same rights and obligations. No ifs and buts. That is free software. It has been RMS’ unbending effort of spreading the word on free software that has gotten GNU and other FL/OSS projects so far. RMS has been a deciding factor in the way we look at the underpinnings of FL/OSS. To paint him as an unconsequential, raving lunatic is doing the man grave injustice.

The linux kernel is a tremendous achievement and it powers a lot of free, alternative Operating Systems in the GNU/Linux family. Nobody is trying to take away from Torvalds’ ability to push the technical enveloppe of the Linux kernel and his ability to organize and lead his kernel developers. Linux was the missing piece from the GNU puzzle and a very welcome one. However, does Linux, as the engine, invalidate the tremendous effort made by RMS, FSF, GNU, and all the people contributing to it? Is taking an entire OS enviroment and placing a kernel underneath it, enough to brush the GNU project by the wayside? It seems a lot of people think this way.

It is sad really that most GNU/Linux users only know of the Linux part of their OS, but don’t spend any time at all to understand the enormous contributions that were and are made by projects like GNU, X.org/Xfree86, KDE, Appache, Mozilla, and many others. I think it is this onesidedness that is influencing peoples judgement on this issue. There is this kneejerk reaction to Torvalds statements. “Ooh, Linus Torvalds says that the new GPL sucks. There must be something wrong with it!”. Automatically, RMS is demonized for “destroying” the GPL.

I wonder how many people have actually read the second draft and took the time to think the new clauses through, before joining the naysayers. The second draft of the GPL is being tarred and feathered, without any solid evidence that the license has gotten worse. The fear, uncertainty and doubt spreads like oil on water, in the wake of Torvalds statements.

The only positive note in this witch hunt is the fact that the GPLv3 will get a chance to prove itself in the real world. The moment GPLv3 is released, all of the GNU software will be dual licensed under the GPLv2 and GPLv3. This will be the moment the license gets accepted or struck down. The first signs of rejection will be very easy to spot. If nobody wants GPLv3, there will be a massive forking effort to keep the current crop of GNU software GPLv2. The FSF will go full steam ahead and apply the GPLv3 to newer patches, so forking will be the only way to keep all of the GNU collection under the GPLv2. My guess, though is that the GPLv3 will quietly pick up steam after it is released. Only projects with vested interests in the ability to close GPL-ed code with the DRM trick, will keep the GPLv3 out of the door.

© 2006 Ronald Trip. Verbatim copying and redistribution are permitted provided this notice is preserved.