What the kernel guys are and aren’t (and really should be) saying about GPL v3

The kernel guys just put out a doc about their feelings on GPL v3. It is really a remarkable document, if for no other reason than that 30-ish kernel developers actually agreed on something :) My thoughts on it are that they are saying some very substantive things, but that they are dodging the real discussion- and maybe it is time for us to have that discussion again.

What they are saying, substantively*:

  • GPL v2 works just fine.
  • No problems are being solved by the new license.
  • The DRM clause limits what users can do, which contradicts the freedoms which users had under v2 and which might scare away both users and contributors.
  • The patent clauses would also scare away potential contributors.
  • The FSF is violating the trust of those who have used the GPL under the assumption that future versions would not be fundamentally different.

Freedom, and how it is defined, is really the issue that all these rotate around. How does it tie these together?

  • GPL v2 works just fine, and no problems are being solved by the new license- it does work fine, if you think that people using your code to build DRM-enabled products is acceptable. Otherwise it is very good- but clearly flawed.
  • The DRM and patent clauses limits users and scares away contributors- both of which are true, but assumes that DRM does not violate meaningful freedoms, and that patents are not a threat to our codebases. (Both of which are defensible positions, I believe, though I don’t agree.)
  • FSF is violating our trust by being ‘political’- which is true, if you think that FSF has never been political. If you’re sane, and realize FSF has from day 1 been political, then you might disagree with this :)

What the kernel guys really seem to want is a GPL 2.1 which reflects their very pragmatic approach to open source- take, as long as you give back. Past that, do whatever. What the FSF- and particularly Richard- wants is a GPL which reflects the FSF’s long-term approach to free software, where patents and DRM are another restriction (like binary software) that could reduce freedoms. Nothing in GPL v3 is inconsistent with FSF’s very long-term mission- to increase what they see as Freedom.

So really, as far as I can see, this is the old Open Source v. Free Software debate coming to a head again, in yet another guise. (Worse, it might be the GPL v. BSD license debate, where everyone argues about the definition of ‘freedom’, all over again.) I really don’t know where I stand on this, but I think it is clear most of the kernel developers are clearly in the Open Source camp. That’s fine- it is certainly their right, and frankly, I think they represent a majority of GPL v2 users. I do wish they had been more forthcoming in this inevitably important document, and spent less time confusing the issue. If they had, the document could have been a lot shorter, a lot sweeter, and a lot more accurate.

Let me make a stab at it, in fact, honestly trying to be as neutral as possible on the definition of Freedom:

“We believe that our particular community of GPL v2 users have come over time to a different definition of freedom than the FSF. We believe that the focus of the GPL should be on the elements that encourage collaborative participation, which include simplicity, enforced code-sharing, and end-user freedom. We reject the FSF’s attempt to define freedom in such a way as to include charged issues like DRM and patents, which our contributors disagree greatly about. As a result, we call on the FSF to stop the current discussion about GPL v3 and create a GPL v2.1, which does not seek to expand the Freedoms of GPL v2 in controversial directions, and instead focuses on strengthening and clarifying the terms of the current GPL so that we can more securely defend the rights and freedoms we believe we currently have, and which we have created a large community around.”

So, yeah. That’s really what it took them five pages to say. I think, put that way, they’ve got a fairly sound argument- clearly lots of people would want to use a GPL 2.1 that had the same focus as GPL v2, but with more refined legal safeguards. I personally would prefer a GPL v3, that prevents people from using my code to create devices whose primary purpose is to deliver DRMd content, and which protects me from the patent portfolios of companies which I may like but can’t trust. But clearly that is a difference of opinion that merely having an open comment period is not going to paper over.

It is telling, of course, that the kernel guys who wrote the paper (and Linus) did not participate in the open comment period. They could easily have done so, but I think at some level they know that this really isn’t about an issue they can discuss with the FSF. They must know that there is no way in hell GPL v2.1 is coming out of the FSF- convincing Richard to redefine what he sees as freedom (and the threats to it) is not ever going to fly. So they didn’t participate- they did an end-run. I wish they hadn’t run so far out, though.

Linus (as usual) says it very clearly and straightforwardly, but again, to the echo chamber of LKML and not to the FSF directly:

“My personal opinion is that a lot of the public discussion has been drivenby people who are motivated by the politics of the discussion. So you have a lot of very vocal GPLv3 supporters. But I think that the people who actually end up doing a lot of the development are usually not as vocal, and haev actually not been heard very much at all.

In some sense, the poll is a way for the people who actually do a lot of the work to show that the FSF doesn’t speak for necessarily even a very big portion of actual developers.”

Where he says ‘politics’ read ‘freedom’ and… yup. Sounds pretty familiar.

* They are saying a lot of other things that frankly I think they got very wrong. Another post about that shortly.