My first experience with Linux on a PPC machine was Pegasos PPC and Debian. Last weekend I upgraded my Cube G4 450 Mhz and with a blazingly fast 120 GB 7200 RPM WD drive (for just $58!) to replace the default (and extremely slow) 20 GB Maxtor IDE drive. In this vast drive space, there is enough room for more than one operating system, so I decided to install Yellow Dog Linux 3.0 (and then upgrade to 3.0.1 via APT) as an addition to Mac OS X 10.3 Panther. Read more for my impressions of YDL 3.0.1 and check some screenshots too.
There are several choices for an alternative OS on the Mac platform, and that includes Linux and NetBSD among a few others. In Linux land, there are releases from Debian, Gentoo, SuSE, Mandrake and a few smaller distros not well maintained or tested. It’s pretty time-consuming to figure out how to properly install Debian and Gentoo on a Mac – a bit more involved than their x86 versions. SuSE and Mandrake, on the other hand, seem to make PPC commercial releases on a “by the way” mode: their focus is not too much on the PPC platform. Enter Yellow Dog Linux, the only alternative OS with full focus and support on the PPC platform and the only Apple reseller that has the right to install a non-Apple OS on Apple machines!
If you have seen Red Hat’s Anaconda installer, you have esentially seen YDL’s too. It is a pretty easy procedure to follow. Not many parts are different except maybe when you create the /boot partition you need to specifically choose an “Apple bootstrap” partition and not just a /boot one. Installation went fine, yaboot boot manager installed great too, only problem was that it thought that my nVidia GeForce2 MX was 16 MB instead of 32 MB. That was easily fixable by a drop down menu with more GRAM sizes. A more serious problem came later when my 19″ monitor was set via the /etc/X11/XF86Config to do 1400×1050, while I had specifically asked it to do 1280×1024 during the X configuration in Anaconda. Editing the XF86Config file with a text editor fixed the problem. Overall, the installation is a nice experience and works well for the most part. I don’t think that typical Mac users would have any problem with it.
YDL correctly found all hardware devices: the NIC, the Airport (802.11b) card (though read ahead to see some problems), the sound card, the 2D graphics card, the USB speakers, the Firewire driver is up and running.
YDL boots very fast with this new hard drive, even though the Cube is not a speedy machine anymore. In fact, YDL loads much faster in the Cube than Fedora/RHL9 loads on my AthlonXP 1600+ with a pretty modern IDE drive too. This was a pleasant surprise. After fixing the X problem I describe above, I was up and running with Gnome. All the well-known applications are there: Evolution, OOo, Gimp, Mozilla… KDE is also installed and while its apps load slower than the Gnome 2.2.0 ones, KDE overall seems to be snappier and consume less CPU time for simple tasks, compared to Gnome.
Installing new RPM applications has to be via the command line, as it seems that YDL doesn’t include the Nautilus shell extension (like Red Hat Linux 9 does) to install RPMs via a GUI.
Yellow Dog Linux includes most of the programs that someone would require to run on a home PC and also as a home or small-business server. The office suite is there, a great email client and web browser and of course, Apache, PostgreSQL, mySQL and other servers are all available for the Unix geeks to fiddle with.
The OS does not differ substantially from any Linux distribution that you might have used and if you have used Red Hat Linux 8/9, it is pretty much the same experience. For those Mac users who have never used a Linux, expect to get an easy-to-use graphical environment, but with the occasional need to use the terminal to do a few common things, such as installing a new app.
A nice addition to the system is that XMMS supports mp3s, even if RHL’s doesn’t. The YDL guys have re-compiled the original XMMS package and its libraries and not the Red Hat SRPM. Of course, this has resulted in the loss of the nice Bluecurve XMMS skin that comes with RHL and adds to the overall desktop consistency. However, there is no Xine, Mplayer, Totem, Ogle or VideoLAN installed, so there is no way to run some video formats or playback DVD.
There are not many third-party RPMs to be found (/contrib and FreshRPMs have about 100-120 packages altogether), so the user might need to compile by hand some apps that x86 Linux users enjoy. Additionally, it would be nice to see more YDL system updates except bug fixes, for example, the option of the faster Gnome 2.4.
For those who buy the YDL 3.0.1 version, there is a new kernel that supports better the HFS+ Mac OS X partitions and you should be able to mount them and exchange data.
I personally feel that the strength of YDL is in the server space though, and there I didn’t see any problems. Apache loaded and worked fine on my home network with PHP and MySQL, running a local copy of OSNews’ code and doing some development with it. The fact that mySQL is installed by default on the system is a big plus over running OSX, because under OSX it is quite an involved process to get mySQL or PostgreSQL up and running.
First Impressions Do Count
Unfortunately, in the beginning, I found that I couldn’t connect to the net, despite the correct network configuration during the installation of the OS. Trying to load redhat-config-network would die out with python errors saying something like “wireless driver was compiled with blah-blah #14, but this application feature #12, so expect problems”. Despite that incomprehensible error, it gave me clues that the Airport card inside the Cube is what YDL didn’t like. Bringing eth1 down (that’s the airport card) wouldn’t solve the problem though, because the OS wouldn’t put the eth0 (that’s the NIC) as the default second interface, even if it was “up”. Please note that I don’t have my wireless router installed yet (just lazy…), so the Airport inside the Cube is actually serving as a base station when on OSX for our 3 laptops here; that’s why I need it in there. But YDL should have defaulted to eth0 after bringing eth1 down, which it didn’t. I had to edit /etc/modules.conf and edit out the airport module and reboot. After doing that, I could access the net via eth0 and redhat-config-network wouldn’t die on load.
The actual version I installed was YDL 3.0, but 3.0.1 is available via online update. I tried to upgrade immediately after solving my ethernet problem described above. Unfortunately, YUM (the YDL updater) wouldn’t download all the RPMs needed for the update and even after using other mirrors it would die out with an error (“ERROR: Url return no content-length – something is wrong”) on random packages each time. And the instructed “yum clean headers” didn’t do a thing to Yum (searching on the YDL mailing lists I saw that others had the same problem too). I found this version of the application included with YDL to be buggy at best.
To update the system I used APT which is installed by default, but thankfully without (the also buggy on PPC) Synaptic. Getting apt going was also fiddly, I had to edit /etc/apt/sources… file and enter new mirrors there, because it couldn’t see YDL’s own ftp site either (the site was up, mind you), and I had to comment out the “base” URLs because it was looking for some files that were available on neither the YDL ftp site nor on the mirror one. So, after having only the “update” packages allowed to be used by APT, APT did finally download and upgrade my system to 3.0.1.
There is no 3D support for my GeForce2-MX due to the closed nature of the Nvidia drivers, so some of the installed games (e.g. TuxRacer, Chromium) wouldn’t run on acceptable software GL speed. The only other hardware I tried that was not supported on my installation is the iSight Firewire web camera.
My biggest complaint is rapid performance degradation when doing some “simple” things. While the OS and the apps load very fast, performance when moving windows around (especially under Gnome, on KDE the problem was not big), or when playing simple 2D games like LTris (which I have run very comfortably on slower machines than this Cube), or when doing other very simple tasks, take 100% of the CPU time. The Cube might not be the fastest machine around, but it is still considered an absolutely usable *Mac* machine. It even beats many if not all G3-based iBooks at 800 Mhz and is close to the performance of an iBook G3 900 Mhz, which are machines still sold by Apple until yesterday (Here’s my XBench, but personal usage experience also confirms this).
“Hardware Browser” dies on start up, every time. As for OOo, it would also die if I tell it to import my address book from (the non-existent) Netscape (the YDL people just told me that the bug was fixed recently on their CVS). Many KDE apps didn’t have a Title when launched under Gnome (known Metacity bug many months ago). KSnapshot will die if you try to save a .png from inside Gnome (works under KDE, same bug I saw on my FreeBSD). And finally, I can’t browse my WinXP samba share, the same bug as in Red Hat/Fedora (works fine with all other OSes and other Linuxes, it seems to be a Red Hat-specific bug).
Yellow Dog Linux needs some more PPC-specific engineering, bug clean up, optimization and caring, from my point of view. There may be some Apple hardware that runs YDL a bit more effortlessly, but simply porting over Red Hat Linux just doesn’t cut it, I require some innovation and differentiation from the OSes I run. I know that the YDL guys are trying hard with limited engineering resources to support all this new Apple hardware that comes out once in a while, but that’s not enough to make Mac OS X switchers happy. Mac users are used to the “just works” philosophy and YDL doesn’t offer that right now. With fiddling, I am sure you can make this OS do what you need it to do, but I don’t see the point of leaving a Unix that runs most of the same apps and just works (Mac OS X) to dual boot with another one that requires fiddling (YDL). I also want to see active changes on the default Gnome and/or KDE that differentiates their product from their competition’s, even if just some cosmetic flourishes. I want to see something more exciting than “a Red Hat Linux with more bugs than the original, but on a PPC“.
Don’t get me wrong, I quite like YDL and it will absolutely stay on my Mac, it is still the easier to install and find support for online (and it has a freely downloadble version). I have a Mac (actually I have two), because I want things to work out of the box, as advertised. YDL has the easiest installation and support of any of these alternative OS systems and so is in the unique position to get more Mac users. But for these users to stay locked on YDL or at least to dual-boot, they need to have this “wow” that they get out of their Mac OS X every now and then. They need a good reason to do so, a reason that I haven’t found yet (except running some pre-installed/pre-configured server software that saves installation time compared to OSX Client, and satisfying their OS curiosity).
Unfortunately for any alternative OS in the Mac platform, the standard’s bar is too high, set by Mac OS X, no matter if YDL is after a niche market or not and not competing head to head with OSX. OSX for PPCs and Windows on x86 are the “demons” that all alternative commercial OSes will have to face and compete with in one way or another. And in my opinion, YDL has the best potential of them all.
Hardware Support: 8/10
Ease of use: 7/10
Credibility: 6.5/10 (stability, bugs, security)
Speed: 7/10 (throughput, UI responsiveness, latency)
Related reading: “Why I Ditched MacOSX for Linux – A Yellow Dog Linux 3.0 Review“