Beyond Linux Apps: Mac on Linux

We’ve all heard it: Linux has no applications. Despite the availability of many professional desktop applications for Linux, such as Star Office and Corel WordPerfect Office, the rumour of the dearth of applications for Linux persists. In fact, it does have some truth in it, at least for users of nonstandard versions of Linux such as PPC/Linux.

Last time we looked at productivity applications for your PPC machine, and before that we looked at replacing Photoshop with GIMP, but what if you really want to run Quark XPress or need access to Photoshop’s CMYK features?

What do you do if you need to use an application that doesn’t exist under Linux and has no real equivalent? Some Linux users can reboot into Windows on a separate partition or hard drive. This is an awkward, but useable solution.

However, what do you do if you’re running Linux on a PPC machine? Well, you can reboot into the Mac OS (or AIX or BeOS, depending on your machine). Fine. However, as with so many things in Mac land, there is a more elegant alternative.

Why not just run your Mac OS applications under Linux?

Introducing Mac on Linux

If you are running Mac OS X and need to run an application that has not been “carbonised” – that is, an application that has not been ported from the old Mac OS to OS X – the machine will boot the classic environment and run your application there. This means that Mac OS X emulates an older version of the Mac OS and runs the application through it.

Clever, but it’s nothing new. VMWare and WINE allow Linux users to run Windows applications on their x86 systems, SheepShaver allows BeOS users to run the Mac OS in a window, and any Power Macintosh (that is, PPC-based Mac) runs old applications for the 680×0 based machines using an invisible emulation process (incredibly, even parts of the OS were run under emulation until the release of Mac OS 8.5).

Now Mac-based Linux users have a similar application, and best of all, it’s open source.

Illicit Use of Mac on Linux

Users of non-Mac OS PPC hardware are no doubt wondering if they’ve just been given a Mac for free, or rather, can they boot Mac OS on their, for example, IBM RS/6000 using Mac on Linux? Well, there really is no easy explanation for this.

Legally, no. You must have a machine licensed to run the Mac OS, be that an actual Apple Macintosh or one of the many clones that were produced by the likes of Motorola and Umax in the mid-90s.

Technically, however, it’s a different story. Apple loves standards – or at least they love helping to create them and then subvert them.

Any tech-savvy Mac user will remember the acronym CHRP, meaning Common Hardware Reference Platform. This was a hardware standard developed by Apple and other tech companies wanting to replace the Intel x86 chipsets. Unfortunately, not much ever came of it. However, there are some of these machines about, and some based on the PReP subset, and there is no technical reason why you can’t run the Mac OS on them in conjunction with Mac On Linux. This is because the Mac OS no longer needs a hardware ROM in order to boot. Since Mac OS 8.5 there has been a file lurking in the System Folder named MAC OS ROM. This file effectively replaces the physical ROM chip found in older (pre-G3) Macs, without which the OS refused to boot.

Users of x86 systems, however, can forget about it. Mac on Linux is a Power PC native application and requires one of the following CPUs to run: PowerPC 601, 603, 603e, 604, 604e, G3, or G4.

Installing and Running Mac On Linux

Installing Mac on Linux is easy – not quite “Mac easy,” but it is simple nonetheless. It is important to remember that you must be running a distribution of Linux that uses the 2.2.10 kernel or later.

After downloading the RPMs, issue the following command:

rpm -i mol-version.ppc.rpm

Alternatively, those without the Red Hat Package Manager – or the brave – can download the source and compile it themselves.

Next, invoke the commands below. This copies the Mac OS ROM file from the Mac OS System CD.

mount -t hfs /dev/cdrom /mnt
strip_nwrom "/mnt/System Folder/Mac OS ROM" /usr/lib/mol/rom/rom.nw

The above instruction assumes that you intend to use Mac OS 8.6 or later. Should you wish to use an earlier version, you will need to grab a copy of the ROM and make it into a ROM image, using the ROM Grabber utility, which is available from the MOL downloads page. This is reason enough to use a version of Mac OS later than 8.5. The MAC OS ROM file from Mac OS 8.6 onwards will work on any PPC Mac.

Finally, invoke the boot command from the bash shell:

startmol

The Mac OS should now be booting. If it is displaying a flashing question mark instead of booting, this means that the Mac OS cannot find a suitable partition to boot from. It is looking for an HFS partition with an working System Folder. If this happens, you must configure MOL manually. Edit the /etc/molrc file and make the appropriate volume available.

Performance Issues

Running software through emulation or API layers will always cause some loss of performance. However, depending on you machine and what kind of application you want to run, it may well be worth it for the sake of convenience, especially given how long the Mac OS (and Linux) can take to boot.

Some software is not designed to be booted up for a bit of quick work. While you may want to quickly load an image editor to alter file formats or up a word processor to fire off a letter, it is difficult to see why you would ever want to run the likes of Quark XPress for a few seconds. In cases like this you would probably be better off rebooting natively into the Mac OS.

Users of Mac OS X and older versions of Photoshop, which has as yet not been Carbonised (ported to OS X native code), will know that heavy duty graphics manipulation under emulation is a pain. PPC/Linux users would be better served by rebooting to Mac OS 9 or using the Linux native GIMP, which offers most of Photoshop’s features at – wait for it – no cost.

However, the performance tests for Mac On Linux are rather revealing. The Linux Icebox section of famed Mac website ResExcellence found that Mac On Linux was only slightly slower than the OS X classic environment. I cannot compare like for like, as I currently run PPC/Linux on an iMac G3/233 and OS X on a Power Mac G4/400, but I will state this: MOL seems to be little or no slower than classic, even on this older machine.

If your Mac OS requirements are more in the AppleWorks or MYOB accounting vein, then MOL is perfect.

Compatibility Issues

Mac on Linux does have some downsides. First of all, if you’re using a Mac based on the PowerPC 603e, such as a Power Macintosh 4400 or many PowerBooks, you’ll need to apply a kernel patch. Luckily, this is included in the RPM, in the /usr/doc/mol-0.9.58/ folder along with the appropriate instructions for running it.

Users of early Power Macintosh G4 machines also have a minor issue to resolve. MOL is incompatible with the Mac OS ROM file included on the Mac OS 8.6 CD that shipped with the original G4s. However, later ROMs, such as 1.6 and 1.8.1 are available from the download page.

MOL is also incompatible with many peripherals, such as SCSI scanners, some USB scanners, USB storage, and so on. FireWire is patchy, as Linux currently has incomplete drivers.

One final sad note is that MOL is not compatible with MkLinux, the only version of Linux that runs on some oddly configured older Power Macs, such as the Performa 5320.

Conclusions

All in all, Mac on Linux can only be a good thing. The performance hit which your system suffers by using it is minimal, to say the least, and it opens up a whole world of applications to PowerPC Linux users. Though the Mac OS must still boot, not forcing you to halt Linux is a fantastic boon.

Perhaps the best thing about MOL is that it makes Linux a true alternative to Mac OS X for users of older Power Macs that simply won’t run Apple’s next generation operating system. By offering similar features to the classic environment in OS X, it allows users to have the power of Unix alongside the familiarity and legendary ease of use of the Mac. Without MOL, Linux would not compare to the functionality of OS X, but with it you can really get productive on your computer. After all, isn’t that why you bought a Mac in the first place.

However, the best news has been kept for last. Though I haven’t personally tried it, apparently MOL will boot BeOS, and Mac OS X compatibility is being worked on. Imagine that, a computer than can run Mac OS 9.1, Mac OS X, BeOS, and Linux. Now that is a workstation.

If you’re interested in running Linux or BSD on PowerPC Macs, consider joining our Linux on PowerPC Macs group on Facebook.

This article was previously published in Linux Magazine (UK).

Keywords: #maconlinux #ppclinux

Short link: http://goo.gl/iTrqSB

searchword: maconlinux