Debian GNU/Linux on the Apple PowerBook G4 15" 1GHz (Albook)
by Marc O. Gloor


Powerbook
Technical Specification
  • Apple PowerBook G4, 15" Display (Aluminium aka Albook)
  • CPU: PowerPC G4, 1GHz RISC-architecture
  • 60GB harddisk Ultra ATA/100
  • RAM: 256MB memory (DDR SDRAM)
  • 167MHz bus system
  • 512KB SRAM On-chip L2 chache
  • DVD-ROM/CD-RW (buitlin)
  • AirPort Extreme wireless (802.11g)
  • 10/100/1000BASE-T Gigabit Ethernet (RJ45)
  • Modem 56K V.92 (RJ11)
  • Bluetooth, FireWire 400, Firewire 800
  • USB 2.0 (480MBit/sec)
  • PC Card slot (Type I, Type  II)
  • preinstalled but uninstalled: Darwin Kernel, Mac OS X (Panther)
  • Operated by: Debian GNU/Linux (testing, sarge)
  • Tech-Spec Sheet [.pdf.gz, 51kb]


Why installing Linux on an Apple notebook and not OS X?

I never used Apple hardware before but I was unhappy with that big amount of Wintel stuff around (bad performing CISC architecture, low quality, ugly design, preinstalled Microsoft operating system,  licence agreements...) so I decided to buy my first Apple PowerBook in late 2003. Since then, I decided to prefer Apple hardware in future because I would never change my equipment anymore.

Some friends and Linux newbies regularly ask my the following question:

            "Why do you prefer Linux on your Apple Powerbook? It doesn't make sense, because off..."

I only may repeat my answer again and again, it's a matter of opinion:

            "It's completely irrelevant for me which commercial operating system is delivered with the hardware I acquire. I'm Linux user and Linux will handle it."

Certainly, CPU performance is an advantage, but for me not the most important reason to replace commercial Mac OS X with Linux. Due the fact that I installed Linux on several i386 (pentium) and Sparc (Sun workstation) systems (notebooks and servers) in the past, I prefered to install Linux on my PPC hardware again, in my case, an Apple Powerbook. Linux is stable and secure, Debian GNU/Linux is a high quality OpenSource Linux distribution with a great packaging subsystem and many other feautures. The pretty nice design of the Powerbook and the fact, that there is a high performing RISC CPU inside (no Intel CISC arch.) was the decision to acquire a Powerbook performing Linux on it.


Collecting informations and prerequisites

It took about a week setting up my powerbook and getting all devices fully working. The information you'll find around the www is quite confusing and often out of date but btw the only way to get more information about howto progress with the installation. Instead of describe a detailed step-by-step installation, I'll give you a brief overview about things that I installed which are different or additional to common descriptions of howto setup Linux on a PowerBook.


Installation summary

I suppose that you plan to install Linux instead of a dualboot setup with Mac OS X. In this case, the only reason to boot Mac OS X is to be able to boot a Linux kernel. This initial setup kernel must support ATA100 disks, otherwise the kernel hangs with a root fs panic (an example of my kernel 2.6.x .config):

<*>     Include IDE/ATA-2 DISK support
[*]         ATA Work(s) In Progress (EXPERIMENTAL)

On my system, I didn't used a Debian CD-ROM installation set. After booting my first Linux kernel, I installed the further Debian base packages via  FTP which works fine for me. After the base installation, I replaced the installation kernel with a kernel 2.6.0-test11 from the benh kernel tree and compiled a new one for my personal purposes, here is my 2.6.0-test11 kernel .config. Since official Linux kernel 2.6.3 vanilla (Tue Feb 17 CET 2004), the kernel is fully PPC capable too, no more need for benh random devel snapshots. In fact the rsyncs will probably go away soon. Here's my current kernel 2.6.3 kernel .config (use at your own risk).

Compiling kernels needs about 30min. After that, I installed my hourmeter package which displays the time operation hours. To get the Powerbook buttons working, I compiled and installed the newest pbbuttonsd rel. 0.5.7, after that, CD-ROM eject key, brightness and volume switch do a good job. I updated the system to Debian 3.1 stable (sarge) in October 2005.

Setting up XFree86 was not trivial because of some troubles with the Radeon 9600 video card, the solution for my problem was that I downloaded the newest XFree86 from CVS (XFree86 Version 4.3.99.901 - 4.4.0 RC 1) which took about 5 hours to compile the new X11 environment on my 1GHz Powerbook, here is my XF86Config [.gz, 1kb], use with care! If you plan to disable the trackpad/touchpad you just need to uncomment the related entry in my XF86Config, make sure that Kernel mouse support is disabled (example of my XF86Config):

Section "InputDevice"
        Identifier  "Mouse0"
        Driver      "mouse"
        Option      "CorePointer"
        Option      "ZAxisMapping"    "4 5"
        Option      "Protocol"        "IMPS/2"
        Option      "Emulate3Buttons" "true"
        #Option      "Device"          "/dev/input/mice"     # trackpad
        Option      "Device"          "/dev/input/mouse2"   # the mouse
EndSection

After investigating some Sound and Video manuals, I was able to use sound finally and video with the prefered programs (xmms, ogle, bplay). The builtin Mathshita Non-SCSI writer must be mounted using the SCSI compatibility drivers from the Linux kernel, after that, cdrecord works fine. I updated X11 to XFree86 Version 4.5.0 in October 2005.


Linux/PPC related login and welcome screens


Because I don't like the default look-and-feel from the 'xdm' display login manager (XFree86) I patched Login.app-1.2.1.tar.gz against my Linux/PPC Login.app_1.2.1-ppc patch.gz [.gz, 1kb] which leads to my Linux PPC/RISC login screen especially designed for Linux/PPC users. If you would like to have the same login screen as I have, download and extract Login.app 1.2.1 (downloadable from the source of your choice), change into the Login.app directory and apply the patch using 'zcat Login.app_1.2.1-ppc patch.gz | patch -p1'. Build and install Login.app as described in the documentation. My patched version of Login.app_1.2.1-ppcpatch.tar.bz2 [.gz, 1kb] is downloadable from my repository.  My X11 loginscreen and my fvwm welcome screen looks then as follows:

Login.app login screen fvwm welcome screen
fvwm-welcome.xcf.gz [.gz, 22kb]
fvwm-welcome.xpm.gz [.gz, 11kb]


The fvwm login screen can be configured by adding the following lines to your .fvwm2rc:

"I" Module FvwmBanner /full/path/to/your/fvwm-welcome.xpm
*FvwmBanner: NoDecor
*FvwmBanner: timeout 5


Open items / unsolved issues

Miscellaneous

Special thanks to Thanks to Benjamin Herrenschmidt and other PPC  contributors. If you have any question, send my an e-mail or talk with me under #debianppc at irc.debian.org (nick marculix). For additional information about UNIX software on mobile systems, check also http://tuxmobil.org


$Id: powerbook.html,v 1.32 2020/11/21 11:13:30 gloor Exp $
Author:
marc_dot_gloor_at_u_dot_nus_dot_edu


home