# Mac-on-Linux

Mac-on-Linux (kurz MOL) ist eine Open-Source-Virtualisierungs-Software von Samuel Rydh (Ibrium), die unter Linux-Systemen, die auf der PowerPC-Architektur laufen, das Apple-Betriebssystem Mac OS virtualisieren kann. Nach eigenen Angaben war der Fokus der Entwicklung durch Samuel Rydh, Mac OS unter Linux/PPC nutzbar zu machen.
Neben den PCs der Power-Macintosh-Reihe läuft Mac-on-Linux auf allen weiteren Rechnern mit PowerPC-Architektur (Common Hardware Reference Platform), darunter Macintosh-Klone wie der Pegasos, aber auch der AmigaOne.
Da die derzeit letzte Version vom Juni 2007 stammt, ist es im besten Fall problematisch, Mac-on-Linux auf einem aktuellen Linux/PPC-System zu nutzen.

## Technik

Bei Mac-on-Linux handelt es sich nicht um einen klassischen Emulator, sondern um eine sogenannte virtuelle Maschine (siehe Virtualisierung). Es wird im Gegensatz zu vielen Mac-Emulatoren kein ROM-Image eines Mac-Rechners benötigt, um klassisches Mac OS bzw. Mac OS X in der virtualisierten Umgebung installieren und nutzen zu können. Für manche Funktionen nutzt Mac-on-Linux Teile bereits vorhandenen offenen Quelltextes von Basilisk II (X11 und Ethernet) und QEMU (QCOW-Format für virtuelle Festplatten).
Mac-on-Linux stellt dem Gastsystem folgende Komponenten zur Verfügung:
* CPU des Wirtsystems; unterstützt werden die PowerPC-Prozessoren 603, 604, G3 und G4
* MMU des Wirtsystems
* AltiVec-Unterstützung (ab PowerPC G4)
* Idle Sleep (nutzbar ab Mac OS 8.6 als Gastsystem)
* ein separates ROM-Image wird nur im “old world”-Modus benötigt (pre-Mac OS 8.5).
* Multi-Session-Unterstützung
* SCSI (generisch)
* USB (generisch)
* Audio (mit speziellem Treiber für Mac OS X 10.2 „Jaguar“ und neuer)
* Netzwerk (mit speziellem Treiber für Mac OS X 10.2 „Jaguar“ und neuer)
* CD-Brenner
* physische Festplattenpartitionen ebenso wie
* virtuelle Festplatten als QCOW-Abbilder (QEMU Copy-On-Write)
Auf dem Wirtsystem sind folgende Frontends implementiert:
* Vollbild-Video (fbdev, xdga)
* MMU-beschleunigte X11-Videoausgabe
Im Quellpaket von Mac-on-Linux liegen die Quelltexte für Mac-OS-X-Treiber bei, die unter Mac OS X kompiliert werden müssen. Voraussetzungen sind jedoch Xcode, das Mac-OS-X-10.2.8-SDK und das X11-SDK. Daraus lässt sich auch ein Installationspaket für Mac OS X erstellen, das dann auf Mac OS X 10.2 („Jaguar,“ 2002) bis Tiger (10.4, 2005) funktionieren sollte. Die Installation der MOL-Treiber ist auch unter einem nativ laufenden Mac OS X möglich, da die Treiber nur genutzt werden, wenn Mac OS X unter Mac-on-Linux ausgeführt wird. So lässt sich das Apple-Betriebssystem je nach Bedarf nativ oder unter Mac-on-Linux von derselben Partition nutzen. Unter Debian-basierten Linux/PPC-Distributionen gab es das Paket mol-drivers-macosx, welches die Treiber bereits in binärer Form enthielt.
Ein verwandtes Projekt ist der Emulator PearPC, der eine vollständige PowerPC-Emulation auf der x86-Architektur zur Verfügung stellt.

## Entwicklung

Geschaffen von Samuel Rydh wurde Mac-on-Linux unter dem Dach der Firma Ibrium im offenen Entwicklungsmodell gepflegt und weiterentwickelt. Laut der Versionsgeschichte begann die Entwicklung am 1. Juni 1997. Sieben Jahre später, am 21. März 2004, beendete Samuel Rydh mit der Veröffentlichung der Version 0.9.70 sein Engagement für MOL. Danach wurde das Projekt auf SourceForge von Joseph Jezak gepflegt, der Quelltext wurde in ein SVN-Repository überführt.
Dennoch hat sich seit der Veröffentlichung von Version 0.9.72.1 im Juni 2007 nicht viel getan. Einer der naheliegenden Gründe könnte Apples Umstieg auf die x86-Architektur sein, der 2006 abgeschlossen wurde. Dadurch ist es auf x86-Hardware möglich, Mac OS X/Intel (ab Tiger, Version 10.4.4, 2006) direkt zu verwenden (Hackintosh), für Mac OS bis Version 9 muss auf Emulationsprogramme wie SheepShaver zurückgegriffen werden.
Auf 64-Bit-PowerPC-Prozessoren wie dem G5, wie er im Power Mac G5, Xserve G5 und iMac G5 Verwendung findet, ist Mac-on-Linux nicht lauffähig, obwohl erste Anpassungen dafür bereits 2007 begonnen wurden.

## Kompatibilität

Mac-on-Linux unterstützt folgende Gastsysteme:
* Mac OS 7.5.2 bis 9.2.2
* Mac OS X (PowerPC) – offiziell unterstützt werden die Versionen 10.1 („Puma“), 10.2 („Jaguar“) und Panther (10.3)
* Linux (PowerPC)
Mac-on-Linux läuft nur auf 32-Bit-PowerPC-Rechnern. Damit ist der Power Mac G4 der schnellste Apple-Rechner, auf dem MOL zur Anwendung kommen kann, da die letzte und schnellste Power-Mac-Serie 64-Bit-G5-Prozessoren verwendet.
Die aktuelle Version 0.9.72.1 von Mac-on-Linux stammt vom Juni 2007 und wurde damals auf den Kernel 2.6.22 angepasst. Für neuere Linux-Versionen existieren vereinzelt Patches, doch auch diese folgen nicht dem aktuellen Stand der Kernel-Entwicklung.
Während Mac OS X Tiger (10.4, 2005) keine Probleme macht, funktioniert Mac OS X Leopard (10.5, 2007) (mit Stand 2017) nicht unter Mac-on-Linux.
Da die Apple-EULA die Nutzung von Mac OS auf Nicht-Apple-PCs untersagt, kann es legal nur auf Apple-Rechnern unter Linux verwendet werden, sofern die EULA im jeweiligen Land in diesem Punkt ihre Gültigkeit hat. In Deutschland ist diese Klausel als nichtig anzusehen, es darf also mit MOL auch auf jedem anderen PowerPC-Rechner ein legal erworbenes Mac OS virtualisiert werden.