GNU/Solaris - When the fun begins...

Back in the day, when Scott McNealy was still the "chairman, president, founder, chief cook and bottle washer" of Sun, the company made a virtue of simultaneously loving and loathing GNU/Linux and the GPL.

On the one hand, giving love and sustenance to the developer communities that work around OpenOffice, Gnome and Firefox, and on the other, deploying or disparaging GNU/Linux in equal measure at every conflicting opportunity.

There were good reasons for Sun's ambivalence. Linux and other free software had stolen much of Sun's thunder in the server space and the data centre, but had also proved useful in other parts of the business, providing GNU tools for the power user, Samba to provide interoperability with Windows, a desktop for Solaris, and a platform for Looking Glass and the Java Desktop.

More importantly, Linux on commodity hardware has made severe inroads into Sun's chip business, and the company hasn't always known how to react.

It could even be argued that Sun has roots in open source. Bill Joy, who led the open source Berkeley Software Distribution (BSD) project in its early years, and contributed TCP/IP, vi, the classic in-line programming editor, NFS, and the csh shell, went on to become a founder of Sun. He became Sun's resident in-house technology guru, the master of Solaris and chief architect of Sun's technology strategy, before losing his religion and dedicating himself to other ventures. In 2000 he wrote a coruscating piece called "Why the future doesn't need us" about how "our most powerful 21st-century technologies - robotics, genetic engineering, and nanotech - are threatening to make humans an endangered species", and finally disappeared from Sun's orbit in 2003. But that's another story...

Smell the coffee

Although it has never fully embraced free software, Sun has always worked well with its developer communities. Nonetheless, Sun's announcement late in 2006 that it would release Java under the GPL came as something of a surprise, and was seen as a triumph for the GPL and a lifeline for Java. Marc Fleury, the founder of JBoss, the free software J2EE middleware platform, expressed a common sentiment when he said that he believed that the GPL would "extend the life of Java by at least fifteen years."

Sun's apparent conversion to the GPL and the world of free software may have been unexpected, but Fleury's take was that "the GPL is the best of both worlds, because [it] creates a very strong notion of intellectual property," and allows Sun "to monetise the Java ME environment." Not so long ago it would have been controversial to suggest that the GPL might be the most suitable open source licence for business applications. These days the idea is commonplace.

The Java announcement is already seen as a success. Sun has new leadership, and is no longer quite so ambivalent in its assessment of the value of the free software community. Possessed of a new vision of Sun's role in the brave new world of free and open source software, Sun followed up the Java declaration by hiring Ian Murdock, the founder of the Debian GNU/Linux community, as its chief operating systems officer, and hinted that it might release not only Solaris but also "the core intellectual property behind our multi-threaded Niagara systems", under the GPLv3, the free software community's latest and greatest licence, (and more recently, by purchasing MySQL, the open source database company).

The GPL was the original creation of Richard Stallman, the founder of GNU and the Free Software Foundation. GPLv3 was the result of months of argument, consultation and compromise among free software developers and corporate lawyers, but not everybody likes the GPLv3, and its most vocal opponent has been Linus Torvalds, who wants the Linux kernel to retain v2 of the licence. Stallman and Torvalds represent different wings of the free software movement. Torvalds is a pragmatist. Stallman sees himself as "an activist in the free software movement." Torvalds tends to the view that the anti-DRM clause in the licence is an unwarranted restriction. Stallman believes it to be a necessity.

The great leap forwards

The GPL has been a large part of the success of GNU/Linux. The current criticisms of the GPLv3 echo the criticisms that were made about the GPLv2 in the early 90s, that it was business unfriendly, and that GNU/Linux would never be taken up by industry. In fact, the GPL has proven to be the best guarantee of the integrity of GNU/Linux and its usefulness to industry, a factor that has influenced Sun's decision to license Java under the GPL, and to consider releasing Solaris under the GPLv3.

If this were to happen, it would represent a revolution for the computer industry. For the first time there would be two GNU operating systems going head to head in the enterprise, GNU/linux, licensed under the GPLv2, (as Linux Torvalds threatens), and GNU/Solaris, licensed under the GPLv3, (as Sun Microsystems promises). This scenario woudnt't be hurt at all by Sun's recent purchase of MySQL.

Sun may anticipate that releasing Solaris under the GPL will give it access to Linux developers and device drivers (as Torvalds suspects), but Linux has a long lead in the open source marketplace and the developer community. You don't gain the loyalties of the wider open source user and developer community merely by declaring yourself open source. That comes later.

Sun already has a community around the current version of OpenSolaris, which is released under the CDDL, Sun's own "open source" licence. For obvious reasons, the existing community isn't too keen on Solaris becoming available under the GPL, but if Sun really means to fulfill its mission of making Solaris "a better Linux than Linux", the GPL is the only option. It appears that most of Murdock's initial efforts are to replicate the "userland" features of Linux, from installation to package handling, but that won't come easy without the GPL and the participation of the wider community, and the CDDL is incompatible with the GPL, and doesn't fit the bill.

A third option is that Sun hedges its bets and releases Solaris under a dual license, retaining some of its more valuable features under the CDDL. This would be superficially attractive to Sun, but would ultimately defeat its purpose in releasing the OS under the GPL.

Vendors are willing to contribute their proprietary file systems and features to Linux under the GPL, because they benefit from a two-way traffic in the form of contributions from other vendors. If Sun wants Solaris to be "a better Linux than Linux", it has to play like Linux.

The fun begins

Solaris has some attributes, such as ZFS and dTrace, that make it desirable to the developer community, and Jonathan Schwartz, Sun's chief executive, keeps making the right noises. When storage company NetApp claimed that ZFS violated some of it's patents, both Schwartz and Bill Hilf of NetApp, quickly made statements reaching out for support from the open source community. "The rise of the open source community cannot be stifled by proprietary vendors," wrote Schwartz. "I guess not everyone's learned that lesson." ZFS is currently available under the CDDL, which inhibits it's direct inclusion in the Linux kernel. If Sun were to release Solaris and all its parts under the GPL, that's when the fun begins...

Intriguingly, Torvalds took the stance, before there were any hints of legal shenanigans between Sun and NetApp, that "we'd be better off talking to NetApp, and seeing if they are interested in releasing WAFL for Linux." WAFL, the Write Anywhere File Layout, is the NetApp equivalent of ZFS.

"And don't get me wrong:," he wrote on the Linux kernel mailing lists, "I think a truly open-source GPLv3 Solaris would be a really good thing, even if it does end up being a one-way street as far as code is concerned!"

Nobody is under any illusions that Sun wants to surrender its hold on Solaris, or the place that Solaris holds in the market. Paradoxically, Sun may be more unlikely to achieve these aims unless it is uncompromising, and releases the software under the GPL. Schwartz has thrown the ball in the air. He may run off it with it and refuse to play, but we can hope that this isn't true.

Torvalds says that Linux should be permissive, and should not carry DRM and patent restrictions, and should remain under the GPL v2. Stallman says that GNU/Linux should remain true to the ideals that allowed it to come into being, and move to the GPL v3. History has shown that the two positions are not as contradictory as they might at first appear.

The same arguments may be heard again in several years time when the Free Software Foundation announces the imminent release of GPLv4, and the GNU/Solaris developers argue about the wisdom of adopting a new, more radical, license, which tackles the issues of changing times and new impediments to the continuing freedom of software that we have not yet foreseen. By that time, a certain company in Redmond may be rushing to release the latest version of GNU/Windows under the GPLv4. Or maybe not.