tobias_platen's blog

Tobias Alexandra Platen's software freedom blog

Mac OS X Internals: A Systems Approach, by Amit Singh – is this book useful in a fully free world.

Mac OS X is a non-free operating system! This means it takes away your freedoms to use, study, share and improve the software.
Some people try to claim their freedom back by installing Mac OS X on a PC, ignoring the EULA and breaking copyright laws.
This is possible because the kernel of Mac OS X is free software under the Apple Public Source License. The DRM used to lock Mac OS X to Apple Hardware is described in the osxbook.

Mac OS X is based on the Mach kernel and uses components of FreeBSD,NetBSD and GNU. The Hurd, GNU’s kernel, is based on Mach 3.0. Before Mac OS X was released, Apple has contributed to a free software project called mkLinux.
The Mach kernel was ported to the PowerPC platform and used as a base for Mac OS X. Apple released Darwin under the APSL which is a free software license. Mac OS X without its non-free GUI is Darwin. GNU-Darwin was an attempt to help Mac users to enjoy the benefits of software freedom. GNU-Darwin replaces the non-free GUI with X11. Ironically the Bootable Installer CD of GNU-Darwin includes proprietary drivers.

The Mac OS X Internals book describes the architecture of Mac OS X and Darwin. GNU/Hurd is not mentioned in the book, but it shares parts of its architecture with Mac OS X. FreeBSD is used as a reference implementation by Apple. Most free operating systems ship with Webkit, CUPS ,and Grand Central Dispatch. Cocoa Programming on Mac OS X, Second Edition by Aaron Hillegass has a chapter about GNUstep and can be used with only free software. Both books can be used as a starting point for a free operating system compatible to Mac OS X.