After treading through many OS’es on my Powerbook G4, not one of them suited my needs completely. Even though OS X seems to fit a lot of my needs, there are Linux/UNIX applications and such that I’d much rather have. Many people have told me to try DarwinPorts and fink. Fink was just more of a pain then anything. It seemed to work out ok, but installing a ton of useless dependencies all over the place, and having to run X11 just to run them seems a little to “half-ass” for me. DarwinPorts had issues with being maintained, and didn’t work half the time. Someone mentioned Redhat’s Fedora Core 6 PPC port, and so thought I would give it a try.

Like any version of Fedora Core, the install was far from brutal. I started with a Desktop Install to minimize any conflicts that would cause the install to crash. Everything went great, and after it was done, X started without a hitch at 1024×854 using the Radeon drivers. At first, everything was recognized as far as I could see. The Airport Extreme even showed as a Broadcom Wireless card, but was not able to even enable it through ipconfig/iwconfig. I went ahead and used pirut, their new software installer; and went to look to see if by chance the Broadcom Firmware Cutter was in the list. Sure enough, bcm43xx-fwcutter was in the list. Unlike the version of FC I had used before, pirut didn’t require the the CDs, and instantly downloaded the packages it needed through my ethernet connection.

After the fireware cutter was installed, I booted back into my OS X partition, and copied the following file to my FreeBSD Samba server:

/System/Libraries/Extentions/AppleAirport2.kext/Contents/MacOS/AppleAirport2

I then went back to FC partition, and retrieved the Airport file from the Samba server. Then it was time to extract the firmware code, put it in the firmware directory, and load the driver:

bcm43xx-fwcutter ~/AppleAirport2
mv *.fw /lib/firmware/
depmod -a
modprobe bcm43xx

After that, eth1 had no issues what so ever. After doing this, nothing else was needed to make it work from now on. The problem that existed from the beginning was that the firmware didn’t exist in the firmware directory. You would get errors about how the microcode could not be found. Of course, since the firmware is an Apple product, such things cannot be packaged with another OS.

I then updated the packages per the up2date application (I think it’s still called that), and then restarted. After rebooting, bluetooth was recognized, and instantly enable. All the bluetooth apps were installed, and seems to be working just fine.

The only thing that has always bothered me about Redhat’s ditributions was that MP3 support stopped at the beginning of the Fedora Core era. So, like anyone else, I installed the Livna repo, and installed the codecs:

#rpm -ivh http://rpm.livna.org/fedora/6/ppc/livna-release-6-1.noarch.rpm
yum -y install gstreamer-plugins-ugly

After that was done, I of course deinstalled the livna repo since I want to stay as pure as possible with this install.

Last, it was time to tweak the touchpad to my liking. After installing the Synaptics touchpad package, I did the following to my xorg.conf:

Section "InputDevice"
         Identifier  "Apple Touchpad"
         Driver      "synaptics"
         Option      "CorePointer"
         Option      "SendCoreEvents" "true"
         Option      "Device"
         Option      "Protocol"
         Option      "HorizScrollDelta"
         Option      "SHMConfig" "true"
         Option      "MinSpeed" "0.30"
         Option      "MaxSpeed" "1.10"
         Option      "EdgeMotionMinSpeed" "200"
         Option      "EdgeMotionMaxSpeed" "200"
         Option      "FastTaps" "1"
         Option      "MaxTapTime" "0"
         Option      "AccelFactor" "0.030"
         Option      "HorizScrollDelta" "0"
         Option      "VertTwoFingerScroll" "1"
         Option      "HorizTwoFingerScroll" "1"
         Option      "CircularScrolling" "1"
         Option      "CircScrollTrigger" "0"
         Option      "FingerLow" "1"
         Option      "FingerHigh" "3"
         Option      "LeftEdge" "80"
         Option      "TopEdge" "80"
         Option      "RightEdge" "850"
         Option      "BottomEdge" "560"
         Option      "TapButton1" "1"
         Option      "LTCornerButton" "3"
 EndSection

The best part about this config is that the right side of the touchpad emulates the scrolling. Of course, instead of two fingers, it’s just one. I disabled the touch click, since it annoys me to no end.

All in all, I found this to be a great replacement for OS X on the powerbook. There are still a few more things to be done, but I’m still working on them. These things include, getting mouse button 2 and 3 to be emulated since xmodmap isn’t playing nice, and even emulation through sysctl doesn’t want to work. Last is the keyboard backlight. Pbbuttons didn’t seem to be a complete resolution since it decided to foobar my video, and make me worry that my screen was going to get hosed. Regardless, everything else has been great, and this distribution I’m sticking with for my Powerbook G4 (5,6).