Fedora Core on your Macintosh (Fedora PPC)
Because it's cool on your Macintosh! Many folk run Debian, some do Gentoo, Mandrake has a
smattering of users, as does SuSE (payware). Yellow Dog Linux is the
other popular alternative, but Fedora is definitely cool.
Note: This document will constantly be changing I'm sure, so
check back often...
Update (22/02/2005): Updated the fedora core 3 .repo file and added information about livna extras stuff.
Update (17/02/2005): New FC3 tree at
ftp://ftp.uk.linux.org/pub/linux/fedora-ppc/fc3-ppc/ with boot.iso for G5, and
the anaconda bug with the bmac Ethernet driver fixed. It also includes all the
errata up to today. If you already have a local copy of the tree from fedoraproject.org,
update it by rsync from rsync://ftp.uk.linux.org/ftp/pub/linux/fedora-ppc/fc3-ppc/
Update (15/02/2005): Mention Fedora Extras yum repo and how to install on a G5..
Update (08/01/2005): Added bits about dwmw2's repository for the new kernel where sleep works for iBook G4s and PowerBook G4s. Also, useful is fc3ppc.repo, which you can just place in /etc/yum.repos.d/.
Update (08/12/2004): We have
now launched a Fedora Core 3 testing tree, with ISOs! We know it is
hard to boot on G5 hardware, and the kernel doesn't include newer
iBookG4/PowerMac sleep patches, but we'll work on a kernel that will
have those patches available for an update soon. The important thing
now is to test, test, test! Read the release announcement.
Update (14/08/2004): We have a new mailing list! Post to email@example.com, and find out more list information at http://lists.infradead.org/mailman/listinfo/fedora-ppc.
I have several that I use to make sure Fedora works - an iBook 2.2
800MHz G3, an iMac DV SE+ 450, and a iBook 933MHz G4. Fedora is known
to run on Powerbooks, as well as the newer Dual-G5s with no sweat.
Things that will not work on your Mac however include: Airport
Extreme, and sleep on the newer iBook/Powerbook laptops. (Update:
sleep works in the Rawhide kernel and will work in FC4. There are also
FC3 kernels available with sleep support -- see below.)
The G5 is a 64-bit CPU, and not supported by the standard 32-bit kernel. However,
the kernel which is intended for IBM pSeries machines is also suitable for use
on the G5. You just need to persuade it to boot, which can be a problem because
the image in images/pseries/boot.iso isn't appropriately 'blessed' in
the way that Mac boot images need to be. We're working on getting a G5 boot image
built as part of Rawhide, and may produce an image for FC3 too. In the meantime, you
need to boot yaboot, which is on the 32-bit boot.iso, and somehow persuade it to
load and run the 64-bit vmlinuz and ramdisk.image.gz from the
ppc/chrp/ directory of the install tree.
However, there was a bug in the PPC64 kernel at the time FC3 was released, which
prevents its kernel from booting on the G5. The current FC3 erratum kernel does work
again, but that makes it a little more complicated to get a boot.iso for it, because
we have to regenerate the rest of the install tree to match. If you have a G5, you
may be better off installing rawhide.
Update: This is no longer true. The tree at
ftp://ftp.uk.linux.org/pub/linux/fedora-ppc/fc3-ppc/ should work
on the G5, as it is based on Fedora Core 3 including all the updates
up to February 2005, and has a 64-bit boot.iso in its images/mac64/ directory.
Using Fedora Core 3
Keep in mind that the current tree is known not to have a boot.iso for the G5s. The tree is available at http://fedoraproject.org/fedorappc/FC-3/ and you need the items in the isos/ directory - the first four are binaries, while the remaining are SRPMS (sources). The os/ directory contains a full FedoraPPC tree as well. Installation works thru several methods:
- Since the CD isn't blessed, you can burn the boot.iso from os/images as well as CD1, then use linux askmethod. When it comes to choosing the install medium, you can choose Local CDROM, and insert Disc 1.
- You can also just mirror all the ISOs (first four), and export it
via NFS, as per the method below. You do not need to mirror the tree,
just get the 4 ISOs and follow Daniel Owen's guide on Installing Fedora using NFS.
Remember to test the tree well, and report any bugs to Bugzilla, under the powerpc platform. We do have a tracker bug: #121179, so add a bug as a blocker if you wish.
What you need to do
- If you're actively tracking Rawhide (which is the
development tree of Fedora), and are a developer or a wanting tester,
there's no point getting the bootable ISOs that are currentlyreleased.
However, if installing directly from Rawhide, it is worthy to note that
mirroring the entire PPC tree to a local disk might be preferred during
the install - if Rawhide does a push, it and you're syncing then, it
might break your install! http://download.fedora.redhat.com/pub/fedora/linux/core/development/ppc/
is where you go to - mirror this locally (you can skip the debug and SRPMS, for instance).
A common command to rsync a tree would be: rsync -avP --delete --exclude=debug --exclude=SRPMS rsync://my.rsync.mirror .
- Burn the boot.iso file from images/mac (or images/mac64 depending on your machine.)
- If you want to dual-boot with OS X, make sure OS X is installed
first, and you've left some free space for your install of Fedora. When
you are installing OS X, click the Installer menu item, and go to the
Disk Utility. I just split my 40GB disk into two, equally.
- Setting up an NFS share on the machine where you mirrored the
Fedora development RPMs are what you need to do next. This is done
fairly simply, and a useful guide is one by Daniel Owen, titled Howto install Fedora
Core over NFS.
- Place the CDROM containing boot.iso into your Mac, then hold down
the C key (so you boot from the CDROM drive).
- Type linux, as it's the only yaboot option, then the
install starts. If the graphical install fails to start the X server,
you might need to restart and type linux text at this stage instead.
There are known problem with the graphical setup on iMac DVs and some other
machines which cause this.
- You now need to find a driver for your NIC if the installer did not pick it up automatically - using the "sungem or BMAC"
drivers generally work for eth0 (the wired Ethernet card), and then
allow DHCP to provide network information (or provide it manually). To
get the Airport working on machines that support it (like the iBook G3
or the older PowerBooks), you can use the "airport" modules (which load hermes and orinoco). Anaconda (the installer) has support for the input of an ESSID and a WEP key now as well.
- NFS Setup screen pops up, and you need the NFS server name and
the Fedora Core directory - fill those in appropriately.
- Now, the Fedora Core installation actually starts - I choose a
Workstation installation. This choice is up to you, of course.
- When it comes to disk partitioning, make sure you use Disk Druid
- the autopartitioning doesn't add the Apple Bootstrap partition (but
it works otherwise). I created about 18GB for /, using an ext3
filesystem, and a 512MB partition for swap. The Apple Bootstrap
partition is of size 1MB only - make sure its the first partition, even
before your OS X partition(s). The types marked "Foreign" are OS X
partitions (in my case, Apple HFS+). If you're using FC3, take careful note to which
partition / is, and which is the bootstrap -- you'll be needing this information later for yaboot.
- Network configuration is next, I've set it to use DHCP - this is
also where you can add a hostname if required.
- Firewall setup comes next, then language support, and the
timezone selection. Choose a root password, and let the install
continue! (this entails a bit of waiting till the packages are all
- If you're installing rawhide and you didn't have to boot with 'linux text'
then your installation is complete. The installer will ask you to press the
button to reboot -- do so, and your Mac should reboot into Fedora.
- If you had to use text mode, or if you're installing the FC3 tree, then you
have a little bit more to do. First break out into a shell -- this can be done via
Ctrl+Alt+Fn+F2. Then run 'chroot /mnt/sysimage'
- If you had to use a text install, then the X server will not be working after you
reboot. Prevent the system from trying to start it by editing the file
/etc/inittab file and changing the default runlevel to 3. You can do
this by running 'nano /etc/inittab', and changing the line which reads
'id:5:initdefault' to read 'id:3:initdefault' instead.
Alternatively, you might be able to install and use Xautoconfig (see below) or manually
configure your X server -- but just turning it off for now is the easiest option, so
you can play with configuring it properly on a live system.
- If you're installing the rawhide tree, you're done. Switch back (Alt-F1 or Alt-F7) to
the screen which is asking you if it's OK to reboot, and say OK. Or just reboot.
- The FC3 installer doesn't know how to make the system bootable on Mac, so you need to
do that for yourself. At this stage, you need to know which partition is your root
file system, and which is the Apple Bootstrap partition.
You can find the boot partition by using the parted utility; for example
by running 'parted /dev/hda print'. Note the minor number of the partition
with the boot flag set. You can also see which partition is the root file system
by typing 'mount'.
Disk geometry for /dev/hda: 0.000-28615.781 megabytes
Disk label type: mac
Minor Start End Filesystem Name Flags
1 0.000 0.031 Apple
2 0.031 0.058 Macintosh
3 0.059 0.085 Macintosh
4 0.086 0.113 Macintosh
5 0.113 0.140 Macintosh
6 0.141 0.390 Macintosh
7 0.391 0.640 Macintosh
8 0.641 0.890 Patch Partition
12 0.891 1.890 hfs untitled boot
10 128.891 9270.792 hfs Apple_HFS_Untitled_2
9 9270.793 27847.781 ext3 untitled
11 27847.781 28615.781 linux-swap swap swap
Table 1: An example of the output from parted.
- Then, run 'yabootconfig -r /dev/hda9 -b /dev/hda12 --kernel /boot/vmlinuz-* --initrd /boot/initrd-*', where -r is the root device, and -b is the boot device ON YOUR SYSTEM. The
example in the table above would be /dev/hda9 and /dev/hda12 as shown here, but yours will probably be
- Thats it. Exit, and reboot! You should now be able to boot into
Fiddling with yaboot
- You can now edit your /etc/yaboot.conf to add a few more
- add macosx=/dev/hda3 (replace with your specific
that Mac OS X can be booted
- add enablecdboot so that at the yaboot prompt, you
booting from CDs as an option
- Don't forget to run ybin when you've made your changes!
Getting X to work
system-config-display doesn't quite work yet for the iBook G4s (but
they work on the G3s and possibly lots of other video hardware).
Yellow Dog Linux provides Xautoconfig, which is a mighty useful tool -
Paul Nasrat has repackaged the .src.rpm, so all you have to do is
rebuild it. (src.rpm / pre-built RPM). X works
automatically after this tool is run.
Adding more interesting yum repositories
By default, you have to edit your /etc/yum.conf and make sure you're
using [development], rather than base/updates-released/updates-testing.
Otherwise, yum updates will not work - so only track the development
David Woodhouse provides the Fedora Core Updates, so a relatively useful yum.conf should look like:
name=Fedora Core $releasever - Release Tree
name=FC3 PPC Updates
Keep in mind that the updates [fc3-updates-ppc] mean that
you don't need to track Rawhide, if you've done the installation from
the Fedoraproject site. This can provide a lot more stabler system for
you, especially if you use your Mac often.
If you do wish to track Rawhide, something like this in your /etc/yum.conf will look about right (find your own local mirror though):
name=Fedora Core $releasever - Development Tree
There are also builds of Fedora Extras
for PPC. The current status can be seen at
http://peach.infradead.org/extras/, and build
logs of failed packages are visible in case you feel like lending a hand. The binary
packages are in another yum repository on ftp.uk.linux.org, but the noarch packages are
not included -- you can get those from elsewhere. To include Fedora Extras, add something
like this to your yum.conf:
name=Fedora Extras PPC Tree
name=Fedora Extras noarch packages
For Free World items (ala http://rpm.livna.org/), there are builds at:
name=Livna.org Fedora Compatible Packages (stable)
name=Livna.org Fedora Compatible Packages (unstable)
name=Livna.org Fedora Compatible Packages (testing)
Macs come with one mouse button, and Linux likes to have 3 mouse buttons. Editing /etc/sysctl.conf and adding dev/mac_hid/mouse_button_emulation=1 will fix this. Now pressing Fn+Alt on the keyboard will provide a right-click, and Fn+Apple key will provide a middle-click.
Sleep for the G4s
Linus' official kernel tree now supports sleep for iBook G4s as well as the
Powerbooks. These are meant to work well, and are in the Rawhide
kernel tree. David Woodhouse has been building FC3 kernels with the
sleep patches included. You can use his kernels by adding the following
to your /etc/yum.conf:
name=Fedora kernels for sleep
geekdocs | home - bytebot.net
$Id: fedorappc.html,v 1.14 2005/02/21 17:51:42 byte Exp $
Created: Sat May 15 03:19:38 EST 2004
Colin Charles <firstname.lastname@example.org>,