
|


|
|
Introduction
A few months ago I decided to get a powerbook g4 for a few different reasons. Namely, the quality and speed of the architecture, the crisp widescreen 15.2" display, slot-loading dvd drive, and all of the other built in features that they managed to fit in a 1" thick titanium cased laptop. I, myself, am not too much of a mac person, but I really wanted some variation from the normal x86 architecture and compatible hardware.
Try #1, Mac OS X
Once I got the machine, I tried out MacOS X, because of all of the good things I heard about it. It ended up being everything it was supposed to be, but it lacked a few fundamental features that I required. Namely, dvd support, pcmcia support, and application support. I managed to get a lot of *nix stuff compiled on it, but the OS seemed too overloaded and bulky compared to what I was used to (OpenBSD).
Try #2, OpenBSD
Naturally, my next choice was OpenBSD. I tried installing it natively (2.8 at the time), and the installation failed misurably due to the lack of support. This caused me to try running x86 OpenBSD under VirtualPC. This was a fairly easy task, but required a small amount of work recompiling the kernel for network device support and some other quirks in VirtualPC's emulation implementation (more info can be found at Peter Bartoli's OpenBSD on the VirtualPC Page), I also helped him fix some of the other problems he was having in getting it to work properly. This option worked, but wasn't very realistic for the work I was doing, mainly because of the speed problems inherent in VirtualPC.
Eventually, when OpenBSD 2.9 came out, it included PowerBook G4 support. I tried it out, but found the general support to be very lacking. Namely, no sound support, limited video card support, no pcmcia, and really buggy keyboard handling and vt emulation. I decided I needed to look for a different option until OpenBSD's support was more mature.
Try #3, NetBSD
Next, I figured that NetBSD should be able to run it fine since it runs on virtually everything else. I soon found out I was wrong. When I first looked at installing NetBSD, they mentioned I'd have to update my firmware in order for it to install. I did so and went ahead with the installation, and for some reason it would't boot properly (probably because of the broken adb support). Later I found out that they had patched the adb problem and it should work on tibooks, so I tried it then, and it would just give me a blank screen. I then read that tibooks with a upgraded firmware are unable to boot with the NetBSD kernel and I'd have to return mine and get a new one with a lower firmware in order for it to work. Well,.. needless to say, someone updating the NetBSD macppc page really screwed up. However, I do believe that a lot of work is being done to fix all of this and provide really good support in the next version of NetBSD (very much looking forward to this).
NOTE: I ended up trying this after linux, and the support is awesome. Make sure you install from a NetBSD snapshot > 08012001 if you have a tibook with the upgraded firmware. I'll be posting info on getting full driver support for NetBSD soon.
Try #4, Linux-PPC
After testing out installs for debian, linuxppc, and redhat, I decided on linux-ppc. Although it is based on the annoying redhat package management scheme, I managed to BSD'ify it as much as possible. The rest of this page will outline the steps I took to get it installed and get everything working properly.
Step 1 - Installation
After I decided on linux-ppc, I decided I needed to install it with specialized options to work minimalistically, and efficiently. Here are the basic steps I used to installing it.
Creating the Install CD
Create a Linux-PPC install cd using the ISO available on the ftp site [ftp://ftp.linuxppc.org/linuxppc-2000-Q4/install/Macintosh/lppc-2k-q4.iso].
You will need to grab Nero Burning Rom in order to burn this [http://www.ahead.de].
After you install Nero, you will need to launch it and close the wizard.
Then, go to File Menu -> Burn Image.
Select the iso image.
Change the type of image to HFS.
Insert a blank cd and Write.
Prepare Your Machine for Install
Before you install Linux-PPC, you will want to re-partition your laptop.
Boot off of the Software Restore cd that came with your tibook by holding down "C" while booting.
Fire up the Drive Setup and repartition so you have at least 2 unused partitions for your linux install (make sure to allocate the right amount for your swap partition).
You must also make sure you have a boot partition (should be around 100mb or so) which *ABSOLUTELY MUST* be a Standard HFS volume, and your normal MacOS parition, which must also be Standard HFS if you want your linux install to be able to read it.
Now, format your new partitions and install any MacOS stuff you want.
Install Linux-PPC
Insert your Linux-PPC boot cd and boot onto it by holding down "C" when you start up.
While it's doing the countdown to bootup, hit the spacebar to get the options menu.
Choose the Ultra-Safe Video Mode Install and hit enter.
It should boot up into the graphical install program and present you with a menu.
At the menu, choose the Partitions button to go to the partitions configuration.
Choose to edit your partition information and set your linux partitions to their corresponding types (linux native/swap), and your boot partition to /boot.
Save your changes to the partition table and reboot.
Boot back into the install by repeating the first 3 steps.
Now, go back to the Partitions menu and format your new linux partitions.
Then mount all of the linux volumes making sure you mount '/' first, also remember to turn your swap on.
Now, go back to the main menu and choose Packages.
I only selected the base install packages by only selecting the stuff in the first top level section and deselecting everything else, I'd suggest installing whatever you want, but make sure you do not install XFree86.
Now, go ahead and install the packages.
Once completed, go ahead and reboot into MacOS.
Once you're in MacOS, go to your Startup Disk control panel and set your boot partition to boot off of.
Now, look in your boot partition and find a yaboot.conf which should have been installed by the install program.
You will need to edit it to reflect the following.
Now, reboot your machine and it should boot off of the boot partition and into your install of Linux-PPC!
Configuration
First thing you'll want to do after installing Linux is get 32-bit color and sound working.
You'll first need to download the newest kernel and build it.
Make sure you enable ATI Rage 128 Support in your Framebuffer settings, and PowerMac DMA Support in your Sound configuration. Here's my config file for 2.4.5-pre1.
Now, compile your kernel and install it in /boot partition.
Edit your yaboot.conf file to reflect the following.
Now, reboot and make sure everything starts up properly, if there's any problems, just boot off of LUNIX OLD.
If you loose your wide screen framebuffer, you'll have to run /usr/sbin/fbset -g 32.
If everything boots properly, now you will need to install XFree86-4
You'll need to download all 3 tgz's of XFree86 off of the XFree86 ftp site (depending on the version available) and compile it using the linux-ppc options.
Once it's compiled and installed you'll need to configure it. Here's my config file for XFree86-4.0.2.
Now, you should be able to start up X with full 32-bit color and wide screen support.
Airport Support
Since airport support isn't included in the 2.4.x kernel, you will have to compile a module for it. I managed to find one for 2.2, and modified it to work with 2.4.x as well as work with the wirelesstools package. Follow the below steps to get it setup.
First, you'll want to enable wireless support in your kernel (or if you used my template, you should be fine).
Second, you'll need to download my hacked airport module source from here and compile it.
Install the module into the /lib/modules/contrib directory.
To install the module, use a command similar to: /sbin/insmod /lib/modules/contrib/airport.o channel=9 transmit_rate=5 eth=1 station_name=myname network_name=networkname enc=3133731337, and put it in your startup so it gets loaded automagically.
Now, to configure your card and set various options, you can install the wirelesstools package.
Mac-On-Linux
Another nice feature with using Linux on your Mac is the ability to run MacOS emulated under Linux. It runs extremely fast and the support seems pretty decent.
To install it, the easiest thing to do is to just install the molrpm off of the linux-ppc cd or an updated one off of the ftp site. Then you will need to recompile your kernel with Mac-on-Linux support compiled in as a module. Or if you used my config file you should be alright.
Now, run molvconfig to setup your framebuffer screen.
Now, mount your main hfs volume for MacOS somewhere (we will assume /mnt/hfs).
Generate your boot rom by using a command similar to: /usr/bin/strip_nwrom "/mnt/hfs/System Folder/Mac OS ROM" /usr/lib/mol/rom/rom.nw.
Now, unmount /mnt/hfs so you can boot mac-on-linux in rw mode.
Configure Mac-on-Linux by editing your /etc/molrc file, this is what I use.
Now, you should be able to boot up macos by using the command startmol.
Ending Notes
This should get you setup with Linux on your laptop. To boot into MacOS while you're starting up, the best way I've found is to hold down the option key to get the boot menu, and choose your Hard Drive. If you have any suggestions, comments, or questions, please send me an email :).


|
|
|

|

|