IMG_20180718_212603

Aaahh, memories….

A long time ago, in a decade far, far away, I dabbled with Linux on PowerPC hardware, specifically the PowerPC Macintoshes.  After lots of trial and error, I was able to get Yellow Dog Linux and Mandrake running on a Power Mac 8600 and then on a beige Power Mac G3 at my old job.  I also managed to get Debian installed on a Motorola StarMax 4000 MT which I still have in storage (if you’re not familiar with this model, it was a Power Macintosh clone from back in the mid-1990s).  I even got Ubuntu running on my iMac G5 and boy did that distro run circles around OS X Leopard back in the day!  That was the last Macintosh I would ever own before committing to Linux on the PC.

However, a few months ago, I acquired two Power Macintoshes from someone I know.  One is a Power Macintosh G4 “Sawtooth” which, unfortunately, won’t turn on (probably a bad power supply or a bad PRAM battery….or both).  The other is a Power Macintosh G5.  This particular G5 model is designated “Powermac7,3” which means it’s a dual 1.8 GHz G5 model with a NVIDIA GeForce FX 5200 Ultra AGP Pro card and PCI slots.  It came to me with Leopard installed on the hard drive.  Of course, a Linux geek like myself wouldn’t stand for this.  Thus, I replaced the hard drive and attempted to revisit my Linux/ppc days of yore.

Upon searching for a suitable Linux distribution, I quickly learned that support for the PowerPC was not as easy to come by in 2018.  Most distributions stopped supporting PowerPC (ppc) and even PowerPC64 (ppc64) with the exception of little-endian PowerPC chips from IBM (ppc64el).  While I did manage to find a Fedora ISO, it wouldn’t boot no matter what I tried.  I eventually decided to go with tried-and-true Debian and, after a lot of searching, I came across the Debian Ports page which keeps unofficial ports of discontinued platforms.  I downloaded the ISO for “sid” which is based on upcoming “buster” (v10) and burned it to a CD.

58109065-3cf0-4270-bf65-e410e131758e-original

Hello, yaboot!  It’s been a while…

Booting up from that CD on the Power Mac G5 and seeing the Yaboot prompt (Yaboot is a Linux boot loader for “NewWorld” Power Macs) brought back all those memories from my early Linux/ppc days!  I went through the netinstall and, after a few failed attempts to boot and then creating an ext2 /boot partition after realizing that Yaboot doesn’t support ext4, I was finally able to boot the installed system…..until the screen went blank.

a60e0ed5-6fbd-4152-a52f-b410b04ef7d5-original

Multiplexing with tmux.

Setting some kernel parameters to prevent this from happening allowed me to get the login prompt after it booted up, and I quickly began installing packages.  I got tmux (a terminal multiplexer, shown above) installed as well as many other packages like Window Maker, Fluxbox, and even the MATE desktop environment which was my ultimate goal.  After configuring my .xinitrc to load Xorg with a window manager / desktop environment, I ran startx and….it failed.  Doing some investigation online led me to news that the NVIDIA card and nouveau on PowerPC were to blame, and that getting it to work might require recompiling the kernel to use 4K page addressing instead of the default 64K.  My heart sunk.

Nevertheless, I wasn’t going to quit so easily.  After trying various changes to the kernel parameters and configuring device settings in Xorg.conf, my brain finally had an idea that was simple (and crazy) enough to actually work.  See, I had my monitor connected to the G5 using a VGA-to-DVI adapter.  After all of my failed attempts to get Xorg working, I decided to change out the VGA cable and adapter and use a dedicated DVI cable.  I also changed the kernel parameters to use “nvidiafb”.  After doing this, I rebooted the G5 and pessimistically ran “startx”.  A gasp of joy came out of my mouth as I saw Window Maker start in all of its NeXTSTEP-ish glory!  You can imagine the happy dance I did right after!

e870c6d3-2b86-4f8c-85cc-1a1266ca9524-original

Achieved the “NeXT” step! 🙂

I then configured .xinitrc to load MATE and, after managing to disable window compositing which would cause it to lock up the system, I was inside the MATE desktop and life was….OK.

I say OK because I have come across some hiccups (as if you haven’t already noticed with all that I’ve mentioned so far).  Pianobar and VLC crash with an “Illegal Instruction” message.  Firefox ESR won’t last a minute before crashing, and the latest kernel upgrade from 4.16.5 to 4.17.6 caused the fans to run at full blast (something that I remember from my old iMac G5).  Thankfully, after some more searching and comparing the modules loaded with the old kernel and the new kernel, I narrowed it down to the “windfarm” modules not loading on boot with the newer 4.17.6 kernel image.  Running “modprobe windfarm_core” from the terminal tamed the fans once again.  Not as straightforward as it was back in my early Linux/ppc days, but the Debian Ports maintainers for PowerPC do stress that we are running “sid”, aka “unstable”, and it is going to be unstable, so this behavior should be expected.  I’ve tried to send a bug report to inform them of this, but ReportBug freezes the desktop when it tried to report the bug (adding insult to injury), so, for now, I’ve added the windfarm modules myself to /etc/modules as a workaround until they fix it.

IMG_20180718_212603

If only the bug squatter didn’t have bugs…

Even with all of these quirks, it was nice to get Linux running on PowerPC hardware again.  And, if you do come across some old Power Macintosh hardware (preferably a G4 or G5) and some time to spare, you can give it a try for yourself.  You’ll find all the information you need on the Debian Ports page and the latest ISO can be found here (select ppc64 for 64-bit Debian to run on G5 Macs or select powerpc for 32-bit Debian to run on any Power Mac including the G5).

Once I have all (or at least most) of the kinks worked out, I hope to use this for some music production so I don’t have to rely so much on my Fedora laptop.  I’ve got Qtractor, QjackCtl, and some DSSI soft synths installed and my Yamaha S08 synth is supported via USB for MIDI input, so I’m ready to rock and roll!

Now, if only I could reduce those xruns some more…

 

573805188_m

 

 

 

8p9kcnx

Quite a while since my last post, so I figured I’d quench the thirst for some content.

My last post was about playing old text adventure (aka, “interactive fiction”) games from days gone by on your latest hardware using interpreters like Frotz.  This followup recording on Hacker Public Radio is on an Android application called Son of Hunky Punk.  I discuss the history of SoHP and attempt to get my copy of Zork to work with it…..and I did.

Be sure to check it out here. 🙂