PowerPCFAQ
This is the PowerPC FAQ.
This is work in progress see http://www.ubuntuforums.org/showthread.php?t=377978
Many more general questions have answers at CommonQuestions
General Questions
Which Macs are compatible with Ubuntu?
All NewWorld Macs should work. This means iMacs, iBooks, blue & white G3s, Lombard G3 PowerBooks and newer. The minimum system requirements are 256 MB of RAM and 3 GB of hard disk space. Users with less RAM or disk space may try Xubuntu.
Currently as of Feisty for iBooks/Powerbooks sleep, wireless, and external display are all supported with models having ATI graphics. Owners of the 12" Powerbook G4 models with the Nvidia graphics chip: sleep is not possible, because of insufficient hardware information from Nvidia.
Is Ubuntu supported on PowerPC?
Ubuntu 6.10 was the last officially supported PowerPC version of Ubuntu. Future versions will be community supported. This was announced on the mailing list.
Is Ubuntu still available on PowerPC?
Yes, see PowerPCDownloads for downloads.
Installing a derivative from an Ubuntu install disc
You will need to install using the Ubuntu CDs (see above). Then install the required *-desktop package. For example kubuntu-desktop.
To remove gnome, and the gnome apps run
sudo apt-get remove ubuntu-desktop sudo apt-get autoremove
If you are confident with the command line, you can do a minimal or server install from the alternate CD, and then add the required *-desktop package. This removes the need to uninstall Gnome.
How do I install Ubuntu on my Playstation 3?
Check out this link for more information on installing Feisty on the PS3:
https://help.ubuntu.com/community/PlayStation_3
What about OldWorld Macs?
All Macs prior to the original iMac are known as OldWorld Macs. You will need a Mac OS 9 install CD to correctly set up Ubuntu on an OldWorld Mac. Read this wiki for more help on installing:
https://help.ubuntu.com/community/Installation/OldWorldMacs
Installation
How do I get a Mac to boot from CD?
The simplest method is to hold down the 'C' key (for x86 Macs use the 'D' key) as you turn the power on. Once you hear the CD drive reading the disk you can release the key.
Yaboot Configuration
The file /etc/yaboot.conf can be edited to change the booting behavior of your PowerPC Linux machine.
Edit the file with root privileges:
sudo nano /etc/yaboot.conf
After editing and saving the file, you must run this to write changes to the boot partition:
sudo ybin -v
To have more boot menu options include these lines in your yaboot.conf:
enablecdboot enableofboot enablenetboot
To have yaboot default to booting to OS X include this line in your yaboot.conf:
defaultos=macosx
To change the colors of the yaboot screen include these lines below. Alter as desired. These settings below create a color screen similar to the OS X open firmware colors.
fgcolor=black bgcolor=white
To boot into single user mode type this at the yaboot prompt:
Linux single
Multimedia
See also RestrictedFormats and FreeFormats.
Java
As of Gutsy, an open implementation of Java (openJDK/IcedTea) has been available for use.
For Java support, install this package and its dependencies:
sudo apt-get install icedtea-gcjwebplugin
Video codecs and DVD playback
Add the http://medibuntu.org Medibuntu repository following instructions on Medibuntu.
Then install these packages:
sudo apt-get install ppc-codecs libdvdcss2
Flash, Flash video and Gnash
There is no Adobe Flash for PowerPC Linux but there are two free open source projects aiming to create a functional alternative - Gnash and swfdec.
Both of these work to a degree. Most simple flash animations work well, and sites such as youtube.com, lulu.tv and revision3.com have varying success.
These plugins are found in Synaptic under the names mozilla-plugin-gnash and swfdec-mozilla. (Note: Use konqueror-plugin-gnash instead in Kubuntu.)
If you would like to see a Linux/PPC§ version of Adobe's Flash Player, you might consider voting for (all) the appropriate bug reports, the first FP-883, the second FP-1397, and the third FP-1769, on the Adobe Bug System (registration required). Also as of writing this, there is a petitiononline.com entry open for signing.
Alternative ways to view Flash video content
You can download Flash video from a webpage to your hard disk and then watch the video with VLC. Firefox users can simply use the VideoDownloader extension (you will need to add the extension to the file - .flv for youtube). The package youtube-dl can also be used.
More generally, you can seethis page for browser bookmarks to download any flash video file to your hard disk.
Then simply open that .flv file in VLC and enjoy your youtube video. Note: You must have gnash or swfdec installed for the above methods to work, otherwise certain webpages will redirect you, claiming there is no flash installed.
Windows Media 9 codecs, Quicktime H.264 and others
sudo apt-get install vlc
VLC will play almost every codec on the planet, including the most recent windows media audio and video codecs.
Multimedia browser plugin
The totem plugin should play most all content, including trailers from apple.com. It should be installed by default, but if not, type this in a terminal:
sudo apt-get install totem-mozilla
Also make sure you have totem-gstreamer installed, and not totem-xine. Totem with the gstreamer backend seems to work better.
sudo apt-get install totem-gstreamer
If you'd like to try an alternative browser plugin, you can install the mplayer Firefox plugin. But this requires removing the totem plugin so there is no conflict.
sudo apt-get remove totem-mozilla
sudo apt-get install mozilla-mplayer
Realplayer
RealPlayer requires a couple of packages from Ubuntu. Please do this first:
sudo apt-get install libstdc++5 libstdc++5-3.3-dev
If you get an error which says "E: Couldn't find package libstdc++5", try the following:
For Lucid, download the package from the Debian Lenny repositories or via this link:
http://packages.debian.org/lenny/powerpc/libstdc++5/download
In the terminal, navigate to its location (maybe cd ~/Downloads) and issue the following command:
sudo dpkg -i libstdc++5
Now, download Realplayer 10.0.5 for PowerPC Linux here: https://player.helixcommunity.org/2005/downloads/
Look for the "RealPlayer 10.0.5 Gold 06/24/2005" "Installer link (experimental)" for Linux-ppc, about halfway down the page on the right.
Download the file. It will probably download to your Desktop.
Open a terminal, and change your location to the Desktop:
cd Desktop
and enter.
Now type the following and press enter to make the installer executable. [Alternatively, you can right click on the file, and go to Properties>Permissions> Check 'Execute' box.]
chmod +x realplay-10.0.5.756-linux-2.2-libc6-gcc32-powerpc.bin
Then to run the installer, type this in the terminal:
sudo ./realplay-10.0.5.756-linux-2.2-libc6-gcc32-powerpc.bin
and hit enter.
When it asks for the install directory, type /opt/RealPlayer
When it ask about configuring system wide links: hit enter. Defaults are fine.
Type realplay in a terminal and RealPlayer will start.
Drivers and Hardware
Will my wireless work?
The original Airport wireless cards work fine straight out of the box on Ubuntu.
Airport Extreme wireless cards require some setting up. See WifiDocs/Driver/bcm43xx for pre-Feisty information.
In Feisty the Airport Extreme support is built in, but you must fetch the firmware. Simply open a terminal and type:
sudo aptitude install bcm43xx-fwcutter
In Intrepid the package has been renamed, type:
sudo aptitude install b43-fwcutter
and reboot. Your Airport Extreme will now work.
A note about Airport Extreme and G-only routers
Once Airport Extreme is activated through the fwcutter method, it will only be broadcasting at 802.11b, or 11Mbps. This probably will cause problems when trying to connect to a router that is G-only. Often, this is a simple fix:
1) Log in to your router through a browser. (See your router's documentation for specific info. For example, for some Linksys routers, go to "192.168.1.1" in your browser and, leaving the username field blank, enter the default password "admin" to access the router's configuration panel.)
2) Find the option where you specify the Network Type, Wireless Network Mode, etc. - it should be an option that has "G-only" or something similar selected.
3) Change the network mode to "Mixed" or "B and G" or something similar.
4) Save your router settings and try to connect again. Hopefully everything will work!
Bluetooth Keyboard and Mouse
See this thread for help with a bluetooth keyboard and mouse:
http://ubuntuforums.org/showthread.php?t=224673
Enable sound with my Powerbook
The Feisty install fails to add the proper sound module to /etc/modules. To fix this,
sudo nano /etc/modules
and the at the bottom add snd-powermac to the list. Ctrl-X and 'Y' to save. Reboot, and sound will work.
Note: for TiBooks, there is currently a bug with sound. Read here for more info: https://bugs.launchpad.net/ubuntu/+source/linux-source-2.6.20/+bug/87652/
Current work around is to install a pre-2.6.20 kernel in Feisty.
Video settings for G3 iMac
Save the folowing as your /etc/X11/xorg.conf
# xorg.conf (X.Org X Window System server configuration file) # # This file was generated by dexconf, the Debian X Configuration tool, using # values from the debconf database. # # Edit this file with caution, and see the xorg.conf manual page. # (Type "man xorg.conf" at the shell prompt.) # # This file is automatically updated on xserver-xorg package upgrades *only* # if it has not been modified since the last upgrade of the xserver-xorg # package. # # If you have edited this file but would like it to be automatically updated # again, run the following command: # sudo dpkg-reconfigure -phigh xserver-xorg Section "Monitor" Identifier "Configured Monitor" HorizSync 58-62 VertRefresh 75-117 #ModeLine "1024x768" 78.75 1024 1044 1140 1328 768 781 784 820 +hsync +vsync #ModeLine "800x600" 62.40 800 821 901 1040 600 609 612 644 +hsync +vsync #Modeline "640x480" 49.90 640 657 721 832 480 481 484 514 +hsync +vsync EndSection Section "Screen" Identifier "Default Screen" Monitor "Configured Monitor" DefaultDepth 24 SubSection "Display" Depth 24 Modes "1024x768" "800x600" "640x480" #Virtual 1024 768 EndSubSection EndSection Section "Module" Disable "dri" EndSection Section "InputDevice" Identifier "Generic Keyboard" Driver "kbd" Option "XkbRules" "xorg" Option "XkbModel" "pc105" Option "XkbLayout" "us" Option "XkbVariant" "intl" Option "XkbOptions" "lv3:ralt_switch" EndSection Section "InputDevice" Identifier "Configured Mouse" Driver "mouse" EndSection Section "Device" Identifier "Configured Video Device" Option "CCEusecTimeout" "100000" #Option "UseFBDev" "true" EndSection
Enable DVI out on my Powerbook
Note: this is for a 15" TiBook. You may have to alter the MetaModes and CloneMode values according to your notebook. This should work with any ATI based *book.
This configuration creates mirroring. A dual-extended display is perhaps possible.
Edit your /etc/X11/xorg.conf file as specified below. Connect your second display.
Then press Ctrl+Alt+Backspace [Delete key] to restart X.
Your second display will then turn on.
You'll have to unplug the second display, and restart X again to revert back.
Section "Device"
Identifier "ATI Technologies Inc Radeon R250 [Mobility FireGL 9000]"
Driver "ati"
BusID "PCI:0:16:0"
#Option "UseFBDev" "true"
Option "AGPMode" "4"
Option "AGPFastWrite" "true"
Option "EnablePageFlip" "true"
Option "RenderAccel" "true"
Option "AccelMethod" "exa"
Option "backingstore"
Option "UseFWPLL" "true"
Option "MergedFB" "true"
Option "CRT2Position" "Clone"
Option "MetaModes" "1280x854 1024x768 800x600"
Option "CloneMode" "1280x854"
EndSection
How do I control trackpad behaviour?
Open a new terminal window and run:
sudo aptitude install powerpc-utils
to install the necessary utilities. In Feisty 7.04, this may already be enabled.
To enable tap, run:
sudo trackpad tap
To disable tap, run:
sudo trackpad notap
See
man trackpad
for more details.
3D video drivers, Beryl, Compiz
For technical background, see AcceleratedX.
There are no official ATI nor Nvidia 3D drivers for PPC Linux. Neither company has developed any, nor released hardware specs to create a good open source driver. However, the current open source developed ati driver works well for most ATI chips, and has somewhat stable 3D support.
You do not need to download drivers from Nvidia or ATI website. (There aren't any there for PPC Linux.) Currently, PPC Linux uses drivers which are built into the Linux kernel. To make sure the correct driver is enabled, you must edit the file /etc/X11/xorg.conf:
sudo gedit /etc/X11/xorg.conf
And look for the Driver line in the Device section:
Section "Device"
Driver "ati"For ATI users, make sure that the driver is specified as 'ati' or 'radeon' specifically for Radeon cards. ATI Rage 128 users, make sure that the driver is specified as 'r128'.
For Nvidia users, make sure that the driver is specified as 'nv'.
There is no DRM under PPC Linux for Nvidia chips, unfortunately.
The Nouveau project http://nouveau.freedesktop.org/wiki/ hopes to have 3D drivers for Nvidia very soon.
Beryl/Compiz should work under PPC Linux, assuming you have stable ATI drivers and good 3D going. Some ATI cards do not work well with 3D in PPC Linux, and others (particularly the recent iBooks/Powerbooks) seem to have very good results.
To test if your 3D is working (required for beryl or compiz), type:
glxinfo
in a terminal and look for "direct rendering: Yes" in the output, as well as a listing of glx extensions. You should be able to run glxgears to test that 3D is working:
glxgears
3D performance tweak for ATI Radeon cards
3D performance can be greatly improved for Radeon cards by adding a few select options to your xorg.conf file. We will be talking about setting options for the graphics card AGP bus. The default AGP bus mode setting that sets your cards data bus speed to the motherboard, is set to 1X. First you will need to find the maximum supported AGP speed for your desktop or laptop Mac. If you do not already know this information, you can find detailed specifications for your Mac at the link below.
The driver options we will be setting are "AGPMode" and "AGPFastWrite". As an example, my iBook G4 is equipped with an ATI Radeon 9550 that has an AGP 4X bus. Open /etc/X11/xorg.conf in your favorite text editor and add the following lines to your "Device" section.
Option "AGPMode" "4" Option "AGPFastWrite" "true"
Since my iBook uses a 4X AGP bus, I set AGPMode to "4". So if your Radeon card supports 8X, you would set AGPMode to "8".
In most cases you can also increase your 3D frame rate performance even more by disabling the option "UseFBDev" in the "Device" section of your xorg.conf file. Most of your frame rate performance increase will come from disabling the framebuffer.
Option "UseFBDev" "false"
Extend battery life and reduce heat output of your iBook or PowerBook
To help reduce power consumption of your ATI Radeon equipped iBook or PowerBook, the driver option "DynamicClocks" can be enabled. To enable dynamic clock scaling, add this line to the "Device" section of your xorg.conf file.
Option "DynamicClocks" "true"
Beryl/Compiz tips
Right click on the Beryl Manager, and pick Advanced Beryl Options>Rendering Path>Copy
And for Select Window Manager> Pick Compiz. Selecting Beryl makes the Beryl Manager crash and resort to the fall back window manager for some.
You may have to possibly add the following to the drivers section of your /etc/X11/xorg.conf:
Option "DRI" "true" Option "GARTSize" "64" Option "AddARGBGLXVisuals" "true"
This page has tips for ATI Radeon users:
http://www.howtoforge.com/ubuntu_feisty_beryl_ati_radeon
And here is the Beryl Wiki with PPC Linux info:
https://help.ubuntu.com/community/CompositeManager/CompizFusion
Sharing a printer with OS X
OS X can print directly to a Linux cups printer. There is no need to mess with samba or create users. To share your Linux cups printer with other OS X machines, simply replace your /etc/cups/cupsd.conf with the cupsd.conf file below, then restart cups (sudo /etc/init.d/cupsys restart).
Note: This is not PowerPC Linux specific and will work for any Ubuntu computer.
# /etc/cups/cupsd.conf # Simple CUPS configuration file for a print server # which serves printers within a private local area network. # - There is no need for additional security within the print server, ie only authorized # people can access the machine. # This setup also allows access to the CUPS "Administrative tasks" system # via your web browser to http://localhost:631 # File based on Ubuntu 5.10 (Breezy Badger) (Linux version 2.6.12-10-386) # Server Directives are explained in http://localhost:631/sam.html # 25/04/2006 # DavidTangye@netscape.net ConfigFilePerm 0600 LogLevel info Printcap /var/run/cups/printcap RunAsUser Yes Port 631 Include cupsd-browsing.conf BrowseAddress @LOCAL BrowseAddress 10.0.0.0/8 BrowseAddress 172.16.0.0/12 BrowseAddress 192.168.0.0/16 <Location /> AuthType None Order Deny,Allow Deny From All Allow From @LOCAL Allow From 10.0.0.0/8 Allow From 172.16.0.0/12 Allow From 192.168.0.0/16 </Location> <Location /jobs> AuthType None Order Deny,Allow Deny From All Allow From @LOCAL Allow From 10.0.0.0/8 Allow From 172.16.0.0/12 Allow From 192.168.0.0/16 </Location> <Location /printers> AuthType None Order Deny,Allow Deny From All Allow From @LOCAL Allow From 10.0.0.0/8 Allow From 172.16.0.0/12 Allow From 192.168.0.0/16 </Location> <Location /admin> AuthType None Order Deny,Allow Deny From All Allow From @LOCAL Allow From 10.0.0.0/8 Allow From 172.16.0.0/12 Allow From 192.168.0.0/16 </Location>
Keyboard backlight
For the light sensor and keyboard controls to work properly, the system must load the kernel module i2c-dev before starting pbbuttonsd. Since pbbuttonsd is probably already started, but unable to control the backlight without i2c-dev loaded, perform the following steps:
sudo modprobe i2c-dev sudo /etc/init.d/pbbuttonsd restart
Note, that while pbbuttonsd has a reload mechanism (so that it doesn't have to be stopped and started, as is done by restart), this is not sufficient; the restart is truly required.
To make this change permanent, add the following line on file /etc/modules:
i2c-dev
Troubleshooting
Ubuntu wont boot, hangs during boot, blank screen etc.
Check the PowerPC Known Issues page.
What about WINE, ndiswrapper, Adobe Flash 9?
Wine and ndiswrapper require x86 hardware, and therefore will not work on PowerPC hardware. However Qemu can be used, see below.
Developers or hackers can have a look at Darwine in place of Wine, which could be ported to Linux on PowerPC.
Adobe does not make Flash for PPC Linux, but there are free open source alternatives for PPC Linux users, such as Gnash. See the section about it above.
What about an x86 emulator?
sudo apt-get install qemu
The Qemu project is an open source CPU emulator, which can run under PowerPC Linux. It is possible to emulate x86 hardware and install Windows, or other operating systems. Windows emulation on PowerPC will run very slow, due to the very nature of what it has to do (translate x86 code to PowerPC). However, older versions of Windows (such as Win98SE) run OK in Qemu on PowerPC.
See Installation/QemuEmulator.
What is Mac-On-Linux?
sudo apt-get install mol
Mac on Linux will let you boot up the OS X partition of a dual boot system, inside Linux. It is also possible to create disc images, the same as with Virtualbox or VMware. It is not software-emulated, so the actual speed is very fast. MOL currently only works on pre-G5 processors, though ppc64 support is near completion.
The provided Ubuntu packages may work fine, but if not, it is recommended you fetch the latest mol directly from the sourceforge project and install following the included documentation:
svn co http://mac-on-linux.svn.sourceforge.net/svnroot/mac-on-linux/trunk mac-on-linux
Read more about MOL here, though these notes are somewhat dated:
Gutsy/Hardy PPC issues
The PPC version of Gutsy/Hardy has some major bugs in it, see the following articles and topics for general help :
How can I configure and compile my own kernel under PowerPC Linux?
Note: An alternative method is at this thread: http://ubuntuforums.org/showthread.php?t=453497
How to compile your own kernel. Useful to enable a low-latency kernel for audio work, or to have a recent kernel from kernel.org to attempt to reproduce bugs that may need to be fixed upstream. This process will leave you with kernel .debs to install.
1. Install the development tools needed, if you haven't already:
sudo apt-get install build-essential ncurses-base ncurses-dev fakeroot kernel-package
2. Fetch a kernel from http://www.kernel.org (there's a big blue arrow link at the top right of the page to get the latest stable kernel) and save it to your home directory.
3. Unpack the kernel sources:
tar -xvjf linux-[version].tar.bz2
4. Change to that new directory
cd linux-[version]/
5. Now time to make a default kernel configuration. For G5 machines, type:
make g5_defconfig
For all other macs, including G3 and G4 machines, type:
make pmac32_defconfig
For the PS3, type:
make ps3_defconfig
6. When that is done, type
make menuconfig
And now navigate around to enable other options that you may need. (Ex: wireless drivers, tvcards, low-latency kernel, etc.) If you don't enable what you need, you won't have it! Press space bar once to enable support as a module <M>. This is generally desired over built-in modules <*> in most cases. If you forget something, you can always go back to this step later and recompile your kernel.
Suggestions for a low-latency audio kernel:
Kernel Options -> Timer Frequency -> 1000 Hz Kernel Options -> Preemption Model -> (X) Preemptible Kernel (Low-Latency Desktop)
Wireless support:
Networking -> Wireless -> enable all IEEE 802.11 options as <M> module
Airport and Airport Extreme support:
Device Drivers -> Network device support -> Wireless LAN -> <M> Broadcom 43xx wireless support (mac80211 stack) Device Drivers -> Network device support -> Wireless LAN -> <M> Broadcom 43xx-legacy wireless support (mac80211 stack)
as well as enabling other wireless drivers as needed. If unsure of your wifi chipset, just enable all wireless drivers in this section.
When you are finished, keep hitting ESC to exit and say 'Yes' you want to save.
7. Now type
fakeroot make-kpkg clean
then start compiling:
fakeroot make-kpkg --initrd --revision=ppc32 kernel_image kernel_headers modules_image
specifying whatever revision designation you wish (ppc32, ppc64, ps3, etc). This will take a long time to compile, probably at least an hour with a 1GHz processor. This is a good time to go make coffee.
8. When it has finished compiling, just install the debs:
cd .. sudo dpkg -i <name of the kernel deb files such as linux-headers-2.6.x linux-image-2.6.x>
And now you are done! Reboot into your new kernel.
Installing the deb will automatically configure your machine to default to that new kernel. If desired, you can further edit the yaboot.conf file to specify default boot options.
9. [optional] Editing yaboot.conf to specify kernel boot options. WARNING: You must write yaboot changes to disk with ybin before rebooting. See final steps at end.
sudo nano /etc/yaboot.conf
One important tip: you must create a line in your yaboot.conf that says
default=imagename
to specify a default kernel image for your machine to boot. Otherwise yaboot will choose the first image listed as default.
To double check your exact image name, simply look in /boot for your kernel image.
ls /boot
Here is an example yaboot.conf with an entry for a 2.6.19.7 kernel image added:
## yaboot.conf generated by the Ubuntu installer
##
## run: "man yaboot.conf" for details. Do not make changes until you have!!
## see also: /usr/share/doc/yaboot/examples for example configurations.
##
## For a dual-boot menu, add one or more of:
## bsd=/dev/hdaX, macos=/dev/hdaY, macosx=/dev/hdaZ
boot=/dev/sda2
device=/ht@0,f2000000/pci@5/k2-sata-root@c/k2-sata@0/disk@0:
partition=3
root=/dev/sda3
timeout=100
install=/usr/lib/yaboot/yaboot
magicboot=/usr/lib/yaboot/ofboot
enablecdboot
enableofboot
enablenetboot
macosx=/dev/sda5
#defaultos=macosx
fgcolor=black
bgcolor=white
default=2.6.19.7
image=/boot/vmlinux
label=Linux
read-only
initrd=/boot/initrd.img
append="quiet splash"
image=/boot/vmlinux.old
label=old
read-only
initrd=/boot/initrd.img.old
append="quiet splash"
image=/boot/vmlinux-2.6.19.7
label=2.6.19.7
read-only
initrd=/boot/initrd.img-2.6.19.7
append="quiet splash"
10. Control-X and hit [Y] to save. Now write changes to the boot partition:
sudo ybin -v
11. Reboot and you will boot into your new kernel.
Where can I get more help?
Forums:
Apple PPC users (read-only archive)
Live assistance from others users is available with IRC via irc.freenode.net on #ubuntu-powerpc
PowerPCFAQ (last edited 2010-10-16 22:26:13 by Graham Perrin)