Updated on 14-mar-2021 with webbrowser and diskperformance info.
As an Apple fan I've been collecting some vintage hardware. The Powermac G5 was bought from a video editor like five years back and was actually used by her up till that point. After booting it and enjoying the pretty inside, the machine was stored on the attic.
This year I was actually planning on getting rid of all the vintage stuf and took it down to take pictures. But as interest in the local equivalent of E-bay was underwhelming and the machine was in my office now anyway, I figured I try to have some fun with it.
This is my write up on the process. Let me start by saying that I'm quite pleasantly surprised there are working sets of current operating systems software for computer hardware that was produced more than 15 years ago. #FLOSSPOWER
First attempt: OpenBSD
At first I figured OpenBSD 6.8 would be a good choice, as it is current and macppc is still supported. The install was rather painless, but I ended up with no working webbrowser and glitches in the graphics output (colors were off). The system was totally usable as a console system, but I figured I'd try something else. Finding software that is somewhat current and supports powerpc machines is obviously getting harder and harder.
Debian hasn't supported powerpc for years, but after some Internet searching I found a 'ports' section that listed architectures that might work but lacked 'official' support from the Debian community. And yes it still has powerpc on the list.
Having tinkered with these machines in the past, I knew USB booting was either out of the question or generally really painful. So back to the attic to find my USB attached DVD writer and blank DVD's.
Boot image and installer
I ended up downloading two ISO files from the ports section: one labeled Debian 10.0 and one labeled 10.0.0. The 10.0 was like two years old, the 10.0.0 was current. I burned both to DVD and tried booting. The 10.0.0 would boot fine, but after a couple of questions the installer broke.
The 10.0 image booted fine and the installer seems to work OK. The only issue I ran into was partition issues when trying to use the 'LVM + encryption' option. Apparently this step does not add the needed 'yaboot' partition. On a second try I used the automatic 'use whole disk' option and that worked for me.
During the install I mostly used defaults and that worked OK. At the time I did not have a working debian mirror at hand and the ones listed in the installer are the default ones not carrying powerpc packages. So I skipped that and finished the install.
The installation itself was rather painless and produced a system that could boot. Jay!
ISO can be found at https://cdimage.debian.org/cdimage/ports/10.0/powerpc/iso-cd/](hhttps://cdimage.debian.org/cdimage/ports/10.0/powerpc/iso-cd/)
First boot and remote access
After the first boot succeeded I had no working debian repo set up yet. Because the DVD is the netinstall image, it only
contains a minimal set of packages, producing a console based system. Yet, I wanted to remote access the machine from my
daily driver machine. Thankfully the
openssh-server package is in the netinstall ISO, so I used that to install an
openssh server. This way I could easily run the commands from my main laptop and save the output for future reference.
# apt install -y openssh-server
Then just figured out the IP address of the system to remotely access it over my home network:
$ ip a
Still not fond of modern ethernet interface naming in Linux :). In this case this produced something like this:
eelco@swordfish:~$ ip a 1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000 link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00 inet 127.0.0.1/8 scope host lo valid_lft forever preferred_lft forever inet6 ::1/128 scope host valid_lft forever preferred_lft forever 2: enP1p4s15f0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000 link/ether 00:0a:95:a7:XX:XX brd ff:ff:ff:ff:ff:ff inet 192.168.XX.XX/22 brd 192.168.XX.XX scope global enP1p4s15f0 valid_lft forever preferred_lft forever inet 192.168.XX.XX/22 brd 192.168.XX.XX scope global secondary dynamic enP1p4s15f0 valid_lft 12180sec preferred_lft 12180sec inet6 XX.XX/64 scope global valid_lft 7198sec preferred_lft 3598sec inet6 XX.XX/64 scope link valid_lft forever preferred_lft forever
After that I spend some time finding a Debian mirror for powerpc. When I found it, I added it to
/etc/apt/sources.list and probably removed the DVD entry.
deb http://deb.debian.org/debian-ports unstable main
Then a ran a standard
# apt-get update && apt-get -y dist-upgrade to get the latest versions of all installed packages.
The system complained that the packages signatures could not be checked as the key was missing. More internet searching
found me this package that I downloaded and install using dpkg:
I downloaded the package from my laptop, used scp to copy it the the G5 and installed it:
wget http://ftp.br.debian.org/debian/pool/main/d/debian-ports-archive-keyring/debian-ports-archive-keyring_2019.11.05~deb10u1_all.deb scp debian-ports-archive-keyring_2019.11.05~deb10u1_all.deb 126.96.36.199:
On the powermac:
# dpkg -i /home/eelco/debian-ports-archive-keyring_2019.11.05~deb10u1_all.deb
That fixed the trust issues. Reran the
# apt-get update && apt-get -y dist-upgrade that worked fine now.At that point
I realized the machine was installing packages from the 'unstable' repositories.
When initial updating was done, I searched for a meta package to install and xfce graphical system and found it in the
task-xfce-desktop package. That required a lot of packages and coffee may have been consumed while waiting.
That still did not produce a graphical login screen, so I manually added and enabled the 'lightdm' display manager:
apt-get install lightdm systemctl status lightdm systemctl restart lightdm
This 'just worked'. So I was able to login via the greeter and got the nice XFCE desktop I posted earlier.
Also I installed the 'neofetch' package as it seems compulsatory to become part of the
eelco@swordfish:~$ neofetch _,met$$$$$gg. eelco@swordfish ,g$$$$$$$$$$$$$$$P. --------------- ,g$$P" """Y$$.". OS: Debian GNU/Linux bullseye/sid ppc64 ,$$P' `$$$. Host: PowerMac7,2 ',$$P ,ggs. `$$b: Kernel: 5.10.0-4-powerpc64 `d$$' ,$P"' . $$$ Uptime: 37 mins $$P d$' , $$P Packages: 2158 (dpkg) $$: $$. - ,d$$' Shell: bash 5.1.4 $$; Y$b._ _,d$P' Resolution: 1920x1200 Y$$. `.`"Y$$$$P"' Terminal: /dev/pts/1 `$$b "-.__ CPU: PPC970 (2) @ 2.000GHz `Y$$ GPU: AMD ATI Radeon 9550/9600/X1050 Series `Y$$. Memory: 722MiB / 5436MiB `$$b. `Y$$b. `"Y$b._ `"""
Webbrowsing / doing actual stuff
The system comes with ephipany webbrowser and I also found libreoffice to be installed. Libreoffice started without any issues and was rather quick about it. Ephypany started too, but was unable to render any webpage.
I tried installing the firefox-esr package, but it has unmet dependencies:
root@swordfish:~# apt-get install firefox-esr Reading package lists... Done Building dependency tree... Done Reading state information... Done Some packages could not be installed. This may mean that you have requested an impossible situation or if you are using the unstable distribution that some required packages have not yet been created or been moved out of Incoming. The following information may help to resolve the situation: The following packages have unmet dependencies: firefox-esr : Depends: libevent-2.1-6 (>= 2.1.8-stable) but it is not installable Depends: libhunspell-1.6-0 but it is not installable Depends: libvpx5 (>= 1.6.0) but it is not installable E: Unable to correct problems, you have held broken packages.
Then I tried installing Chromium and fell for the chromium-dsu trap again. Which does not run and actually is a game. There is no chrome/chromium package for ppc that I know off.
Trying more webbrowsers
Failing to use ephypany without any clear error messages and failing to install firefox, I looked for other options. By closely browsing a list of packages, I came up with a couple of options to try: qutebrowser, konqueror and surf. All options installed OK but all failed to provide a usable experience. konqueror more or less rendered some things, but was painfully slow.
A tip on the Facebook 'linux on powerpc' group pointed me to Artic Fox and Spiderweb. Both webbrowsers work pretty fine on my machine!
-rw-r--r-- 1 eelco eelco 44875666 Mar 14 08:04 arcticfox-27.11.0.ubu12deb8-linux-powerpc.deb -rw-r--r-- 1 eelco eelco 42395914 Mar 14 08:04 spiderweb-2.2.3.linux-powerpc.deb
They can be dowloaded via https://randommacstuff.blogspot.com/p/powerpc-mac.html
The system has quite some screensavers installed, some looking really retro. Some look very funky. I'm not quite sure if it is art or a bug :-)
Is there a Debian stable for macpcc?
No there isn't. I figured some off my issues may be solved by running an older stable version instead of unstable. But as I found out on the #debianppc IRC channel, there is no such thing at this point in time.
testing HDD versus SSD
I wanted to see if the system could benefit from a SSD instead of a traditional harddrive. I did a small test using hdparm and found the following results. I ran the commands multiple times just to be sure.
root@swordfish:/mnt# dmesg | grep sda | grep logical [ 4.255931] sd 1:0:0:0: [sda] 1953525168 512-byte logical blocks: (1.00 TB/932 GiB) root@swordfish:/mnt# hdparm -t /dev/sda /dev/sda: Timing buffered disk reads: 282 MB in 3.00 seconds = 93.90 MB/sec root@swordfish:/mnt# dmesg | grep sdb | grep logical [ 4.256637] sd 2:0:0:0: [sdb] 1000215216 512-byte logical blocks: (512 GB/477 GiB) root@swordfish:/mnt# hdparm -t /dev/sdb /dev/sdb: Timing buffered disk reads: 400 MB in 3.00 seconds = 133.16 MB/sec root@swordfish:/mnt#
So it seems the SSD maxes out the SATA bus which is good. There is quite a good difference, even more so if you would test with the original disk. This test was done with a 4 year old 1TB HDD and a recent Samsung SSD. For me the difference does not warrent the permanent use of SSD in the system. the HDD is fine enough for now.
thanks for your interest
Please feel free to comment on whatever platform you found a link to this post.