Sun sure does pick funny licenses.

Beyond all the cranky emails and blog posts with dinner invitations, I still wonder: why no announcement that ZFS will be available under GPLv3?

Jonathan Schwartz says that Sun is “interested in seeing ZFS everywhere, including Linux, with full patent indemnity.”

If this is so, Jonathan, then tell us: will you be releasing ZFS under GPLv3, in its entirety? Because if you say yes, that basically ends all debate immediately, doesn’t it?

Hey, you can even keep it under CDDL as well, so that there’s no problem for those who want to link ZFS to non-GPL binaries. Since you are the copyright holders for the whole shooting match, it should be a simple matter to dual license ZFS under both CDDL and GPLv3. Right?

So let’s keep our eye on the ball, folks.

If Sun is serious about making ZFS available to all Linux distributions, then they will, at some point, dual-license ZFS — in its entirety — under GPLv3 and CDDL. If that happens, golf claps all around.

Let’s assume, for the sake of argument, that this does not happen. (And since Sun developers have basically said as much, I think it’s a reasonable assumption.)

So if it doesn’t happen, then one must ask the question: why not? Why might Sun choose not to dual-license ZFS under GPLv3 and CDDL?

This question is especially relevant when one considers that Sun has chosen to release Java, OpenOffice, and OpenSolaris under GPL or GPL+CDDL licenses.

We must thus infer that Sun sees some fundamental differences between the licensing implications around OpenSolaris/OpenOffice/Java and ZFS, right? And we must infer that such differences correspond to the licensing differences between GPLv3 and CDDL, right?

So what inferences might a reasonable person make?

Well… um… it’s patents, right? I mean, what else is there?

We all know that Sun has been very active in protecting ZFS through patents — 56 patents, according to Jeff Bonwick of Sun.

The most notable difference between the CDDL and the GPLv3 is that the GPLv3 has very explicit anti-patent language. The gist of this language: “no discriminatory patent practices around GPLv3 code.” The CDDL also has patent language, but it’s not nearly so anti-discriminatory; read section 2 of the CDDL for yourself, and look very closely at those cases where patent rights are explicitly not granted to licensees.

Thus, my inference: I personally suspect that Sun wants to reserve the right to assert, and thus cross-license, its ZFS patents selectively. CDDL allows them to do this. GPLv3 will not. Therefore, they will not dual-license ZFS, in its entirety, under CDDL+GPLv3.

Which means that Linux will not — in fact, cannot — incorporate ZFS. And the folks at Sun will continue to say, “look at how unreasonable the GPL is,” even though they happily put the GPL to work in all of their other projects. And then Sun folks point to the great work that FreeBSD is doing with ZFS… whereupon Theo punches Jonathan right in the mouth for being “duplicitous”. How’s that for gratitude? Heh heh heh. Those FreeBSD guys are feisty.

I could, of course, be completely wrong about all of this. I would be legitimately happy to hear someone from Sun tell me I’m wrong, and then prove me wrong by dual-licensing ZFS under GPLv3 and CDDL. Then everybody’s happy, and ZFS makes its way into Fedora 9, and the whole open source community grows and prospers, hurrah!

See, Jonathan, despite all the good stuff you’re doing at Sun, this is the kind of stuff that continues to make everyone suspicious. You say “remember, we can’t put ZFS under GPLv3 because GPLv3 doesn’t even exist yet,” even though you’ve already proclaimed that it’s precisely what you’re going to do with OpenSolaris. Why? Because it suits you to say “OpenSolaris will be GPLv3,” and yet somehow it does not suit you to say “ZFS will be GPLv3”, for some reason that you can’t quite explain. “Indulge me,” you say, and then you seem surprised and hurt when people like Linus (and Theo, heh) don’t.

ZFS under GPLv3+CDDL is a perfect example of something that should just happen. It works for everybody, it makes all the code as free as free can be, and because you own all of the code, you can just snap your fingers and make it so! But you don’t. And then reasonable people make reasonable inferences that you can’t quite reasonably refute.

Meanwhile, Linux keeps on getting better and more free. And it’s the GPL that has always made it so.

(p.s. IANAL, as though anyone needed a reminder of this.)

Sun sure does pick funny licenses.