Under the name OpenSolaris, Sun officially announced an open source version of the Solaris operating system that's largely based on Solaris 10. Several intellectual property barriers remain to open-sourcing all of Solaris 10. As those hurdles are cleared, Sun intends to move more of Solaris 10's componentry into OpenSolaris' codebase. To qualify as open source, software must have an Open Source Initiative-approved license attached to it and, in OpenSolaris' case, that license is the Sun-authored and very recently OSI-approved Common Development and Distribution License (CDDL). During the announcement, both Sun chairman and CEO Scott McNealy and the company's executive vice president of software John "Johnny-L" Loiacano characterized the CDDL as a license that allays open source licensing confusion by removing ambiguities and "cleaning up" the licensing language. In the end, McNealy concluded, "We're committed to one word and that's sharing. "
But in addition to having introduced perhaps even more ambiguity into an already ambiguous environment (more on that in my analysis of the transcribed text below), will Sun's announcement further compartmentalize an already compartmentalized open source community? Read on.
Perhaps the most interesting among the list of commentators is IBM's vice president of standards, Bob Sutor, who in his blog entry, commended Sun for embracing the spirit of open source, but then added "As far as I understand it, Sun is not pledging these patents for use in any open source project as [IBM] did."
In terms of what IBM did, Sutor is referring to the 500 patents that IBM released for unencumbered use by any developer working on open source software that has any OSI-approved license attached to it (as opposed to a specific open source license such as the GNU General Public License). And Sutor's conclusion, which originally sent this hound on the hunt, is true.
What Sutor is referring to is that, apart from certain academic open source licenses such as the BSD and MIT licenses, most open source licenses, including both the GPL and CDDL, have reciprocal provisions in them that require derivative open source software to bear the same license as the code from which it was derived. What this means is that if code from the CDDL-licensed OpenSolaris were intermingled with code from the GPL-licensed Linux, then the resulting derivative work would technically be required to inherit the licenses from both, which is impossible because certain provisions in each license cancel out the other. (In other words, they're totally incompatible with each other.)
In fact, the entire open source community is compartmentalized along these licensing lines. For example, code from the Eclipse Project (started by IBM) cannot be intermingled with code from Mozilla because each of the those projects operates under their own, incompatible-with-the-other open source license. The net-net is that when a large company--be it IBM, Sun, or anyone else--donates code (as IBM has with Eclipse, and Sun has with OpenSolaris) to the open source community, the writing (and approval by the OSI) of a one-off license like the Eclipse Public License or the CDDL gives those companies a way to donate their code to the open source community (which in turn can enhance it to the benefactor's advantage) without that code leaking into a competitor's product (with a non-reciprocating license) in such a way that it can be used against the benefactor.
Nothing prevents IBM from building a product using CDDL-licensed code. But then, that product, which is technically a derivative of the CDDL-licensed code, must also be available under the CDDL, which then means all of IBM's contributions to it become available to anything else Sun is building under the CDDL (like OpenSolaris). So, to McNealy's point that Sun is committed to one word and that one word is "sharing," yes, Sun is sharing its code. But like a lot of other shared, open source code, that code has a firewall around it. CDDL or unlicensed code that's ready to take on the CDDL license can get it in, but nothing gets out. In other words, it's not universal sharing.
From the legal corner of the blogosphere, SCO whipmaster and master-miner of legalese Pamela Jones at Groklaw wrote:
...they are freeing up 1,600 patents, but not for Linux, not for the GPL world. I'm a GPL girl myself. So it's hard for me to write about this story on its own terms. I am also hindered by the fact that I've yet to meet a Sun employee I didn't like personally. But, despite being pulled confusingly in both those directions at once, in the end, I have to be truthful. And the truth is Sun is now competing with Linux. That's not the same as trying to kill it, but it's not altogether friendly either. Yet, at the teleconference, Sun said they want to be a better friend to the community. I feel a bit like a mom whose toddler has written "I LUV MOMMY" on the wall with crayons. Now what do I say?"
Answer? Just tell it like it is PJ. Just remember all is not as it seems.
Then, from across the pond comes a newsletter from the folks at Gentoo, which basically applauds Sun for the move and talks about how Gentoo is embracing OpenSolaris under the Portaris version of its Portage project. Portage, according to an e-mail I received from Gentoo senior manager Pieter Van den Abeele, is a metadata-driven package manager. One thing you can most definitely do with Gentoo is describe a final operating system installation in terms of what it can do (I'll take a router, a firewall, an Apache Web server, and a browser please) and then stamp out a version of Red Hat that does that. If you don't like the final work of art, using the same metadata, you can now stamp out a version of OpenSolaris that does the same thing. But, in addition to that, as best as I can tell from Van den Abeele's e-mail (please correct me if I'm wrong), you can pick and choose best-of-breed parts from any source code (regardless of the license that goes with those parts) and stamp out your own sort of Frankenstein. Said Van den Abeele:
Gentoo declares GPL licensed metadata about various applications and platforms in one big machine-readable, GPL-licensed knowledge base. Our users declare their feature requirements and preferences to our Package Manager "portage," which in turn using the knowledge base suggests a plan to build or enhance an operating system that will satisfy the user.
If my interpretation of what he's saying is right, then I'm declaring Gentoo the Napster of Open Source. To the extent that you can create a final package that mixes, matches, and violates every open source license known to man, Gentoo appears to be just the facilitator. This is reminiscent of how JBOSS couldn't distribute a soup-to-nuts Java-based application server, but it could tell you how to take what it built and merge with something else from Sun (a Java Runtime Environment) to come up with a free app server. Just don't forget that this sort of Frankenstein merger of code is exactly what SCO sued Autozone for.
And finally, the moment you've all been waiting for, a transcription of what was said, and my Between the Lines analysis.
McNealy: We have absolutely done something nobody else in the open source community has done and that is add intellectual property patent indemnification to it. Sun is assigning 1,600