Darwin’s back in sync with OS X as of 10.4.5, larger questions remain

news
Feb 22, 20062 mins

There has been controversy about whether Apple is committed to maintaining the bulk of OS X as open source under its Darwin project. Every version of OS X has always had a matching source code release of Darwin for both the PowerPC and x86 architectures.

At the time of the release of OS X 10.4.4, Apple’s official Darwin open source tree contained only PowerPC code. I was, and others were concerned that Apple might hold back Apple proprietary source code that it had previously published to impede hackers from “adapting” OS X for use on non-Apple hardware.

Apple is duty-bound to publish source code for portions of the OS that are covered by the GNU Public License (GPL). Apple created its own open source license variant, the Apple Public Source License (APSL), presumably to make publication of GPL-clean code a voluntary exercise.

Doing my duty, I asked Apple whether Darwin for x86 was on the ropes and got no reply. I chose to keep the concern to myself and watch the sources.

I checked today and found that the Darwin 8.5 sources now have APSL code on the x86 side of the tree as well as the GPL code that preceded it. Darwin 8.5 should now be buildable and bootable on the x86 box of your choice. I’m pulling down the sources, but I won’t get to a build until next week.

I don’t yet know whether the Darwin x86 boot code includes support for the iMac/MacBook Pro EFI (Extensible Firmware Interface) in addition to traditional PC BIOS. Without that, it would be difficult to, as was possible on PowerPC, build a modified Darwin kernel and extensions, overwrite the ones shipped with OS X, and reboot real live OS X with your kernel and/or extensions. That was cool, but also extraordinarily useful for system developers.

Uncertainty still lingers. Apple hasn’t yet posted an official release announcement for Darwin 8.5 and there’s been no public statement regarding Apple’s commitment to keep Darwin in step and compatible with OS X. These statements would and will have a calming effect on Darwin and OS X system developers. The lack of them can’t be construed as a change in Apple’s open source strategy any more than the delay in posting Darwin 8.5 meant that Apple would never deliver a 10.4.5-equivalent release of Darwin.