Illumos sporks OpenSolaris
Spooning Oracle for now, but ready to fork
If you were hoping that someone would fork the OpenSolaris operating system, you are going to have to settle for a spork. You know, half spoon and half fork. That, in essence, is what the Illumos, an alternative open source project to continue development on the core bits of OpenSolaris, is all about.
The disgruntled OpenSolaris community has been ignored by Oracle since it acquired Sun Microsystems back in January, and the project's governing board has threatened to commit ritual suicide by the end of August to try to get Oracle participating in the open source Solaris development effort.
Development on OpenSolaris has all but stopped, and the project has really stopped being a community at all. So Garrett D'Amore, a former Sun and Oracle software engineer who worked on Solaris for many years, decided to do something about it.
D'Amore has been senior director of engineering at Nexenta Systems since May; he left Oracle, where he was a Solaris kernel and device driver architect, a few months after Oracle took control of Sun. Nexenta is one of a handful of companies that are backing alternative distributions of OpenSolaris, and therefore it has a vested interest in keeping OpenSolaris moving forward.
D'Amore gets his paychecks from Nexenta, so he wants OpenSolaris to continue to evolve as well. But the project is dead in the water and the community needs a new place to hang out and tweak code for inclusion in a code base.
That, in a nutshell, is what Illumos is all about - for now. D'Amore is adamant that Illumos is not a fork of OpenSolaris and it is definitely not an attempt to create an alternative distribution separate from OpenSolaris. This not an honest-to-goodness forking of the OpenSolaris code base. At least not yet.
What Illumos is doing is taking the core OpenSolaris kernel and foundation, which is called OS/Net or ON inside of the former Sun, and creating a repository and development community around that. ON includes the kernel, C libraries, shell and shell utilities, file systems, and networking functions of OpenSolaris.
"We are not a distribution in a normal sense," says D'Amore. "It is more of a code base." And one that Nexenta, Belenix, and SchilliX, who do create alternative distros for OpenSolaris, can in theory base their future releases upon if they don't like what is - or isn't - coming out of OpenSolaris.
The OpenSolaris community doesn't like the idea of the code being in control of a non-participating steward. "One big goal of the Illumos project is that is it not a slave to any corporate interest, be it Oracle or Nexenta or anyone else." D'Amore has invited Oracle to participate in Illumos, but like the OpenSolaris community, has not heard anything from the software giant.
Aside from the radio silence from Oracle concerning OpenSolaris, outside code contributors are not seeing their code approved by Oracle for inclusion in the OpenSolaris repositories, and binary releases that are missing in action, OpenSolaris has other issues that Illumos will deal with.
The biggest problem is that an important minority of the code distributed with OpenSolaris is closed source, something that has annoyed the OpenSolaris community for five years. Sun didn't allocate resources to fix this and neither has Oracle.
D'Amore says that a significant percentage of the libc C library (libc_i18n to be precise) is closed, as is the NFS lock manager, portions of the kernel's cryptographic framework and functions, and a bunch of important drives. D'Amore says that the situation is analogous to Apple's "Darwin" open source variant of its Mac OS operating system, which was missing just enough stuff to make it not truly an open source operating system.
So Illumos wants to fix that, and D'Amore put his
money time where his mouth is and spent the past couple of weeks coding the missing C library parts, which can now be slipstreamed into OpenSolaris where the closed source bits are now in the real release. Over time, D'Amore wants to solicit help and have the Illumos community spend the time and brainpower to get all of the code in the ON stack open source.
While not technically forking OpenSolaris, the Illumos project is most definitely going to continue development on the ON core code in OpenSolaris, submitting all of its code changes back to OpenSolaris for Oracle's inside Solaris techies to review and approve. (D'Amore says that outside contributors have not seen any OpenSolaris code tweaks approved by Oracle in months.) This cooperation with Oracle is the spooning part.
But D'Amore concedes that Oracle's interests with OpenSolaris will be necessarily different from those of the OpenSolaris community and the new Illumos, and this could lead to a formal break with OpenSolaris and Oracle. Sun's goal with OpenSolaris was to have as many free hands as possible coding as many drivers as possible and certifying OpenSolaris and then Solaris on as much machinery as possible.
This is a carbon copy of the approach the Linux community used to get Linux on the widest distribution of machines that the IT market has ever seen. (And probably will ever see.)