Become a MacRumors Supporter for $50/year with no ads, ability to filter front page stories, and private forums.

foxlet

macrumors 6502
Original poster
Aug 5, 2016
278
416
I've been working on a port of a Linux distro that I've come to love recently. Void Linux is pretty speedy and keeps to a rolling release model (no outdated packages!). However, I noticed there was no ppc port (just x86_64, i686, ARM v6/v7/AArch64, and MIPS), so I took the time to get it on my G4.

Hopefully with some more work, it'll become part of the official release soon enough.

obW8t2e.jpg
 
Last edited:
It's already several times faster than Ubuntu. It uses runit instead of systemd, so bootup takes a few seconds to the TTY.

My questions if you would be so kind to check them when you can
  1. Mesa ?
  2. Which DE’s are available ?
  3. Web-browsers ?
  4. WiFi supported ?
  5. (Personally for me) qemu ?
  6. Brightness function keys work ?
  7. mplayer ?
  8. pkg’s or ports or compile from source ?
 
Looking forward to seeing the development of this port continue. Let me know if I can help out with any testing.
 
awesomeness. In the recent past, I've installed and tried Void Linux on x86_64 for all those reasons you mentioned: no systemd, pretty speedy and keeps to a rolling release model (no outdated packages!) I am surprised to see Void Linux running on PowerPC Macs. Time for me to take another look, and hopefully on PowerPC Mac -- very inspiring.
 
My questions if you would be so kind to check them when you can
  1. Mesa ?
  2. Which DE’s are available ?
  3. Web-browsers ?
  4. WiFi supported ?
  5. (Personally for me) qemu ?
  6. Brightness function keys work ?
  7. mplayer ?
  8. pkg’s or ports or compile from source ?

  1. Yep.
  2. I personally use KDE Plasma 5, but XFCE, Gnome, KDE4, MATE, Cinnamon, i3, dwm, and more are available.
  3. I use Chromium, but Firefox and many others are also available.
  4. NetworkManager is available and works with many DEs, but you can also opt for wpa_supplicant or other configurations.
  5. This was my distro of choice for setting up QEMU + VFIO to run Linux and macOS Mojave side-by-side!
  6. Yep.
  7. Void has a binary package system (XBPS), alongside its git-managed build system (xbps-src). The latter is being used to build the ppc port of Void (although the patches are not official yet).
[doublepost=1532497610][/doublepost]And now I've updated the kernel to 4.17 (following upstream), which also enabled networking (and SSH) for the first time!

QWR3dx1.png

[doublepost=1532497939][/doublepost]
Same here, if you can give me a guide how to install will be more to happy to try this on all my machines.

There is no guide (officially) just yet, as the bootloader hasn't been ironed out yet (it's down to the decision of picking between GRUB PPC or yaboot) and a remote repository does not exist yet.

A rootfs is available (https://share.furcode.co/index.php/s/cBmDrEWVhbOLypr) if you already have an existing Linux system that you can use to extract it to a new partition with tar.
 
  1. Yep.
  2. I personally use KDE Plasma 5, but XFCE, Gnome, KDE4, MATE, Cinnamon, i3, dwm, and more are available.
  3. I use Chromium, but Firefox and many others are also available.
  4. NetworkManager is available and works with many DEs, but you can also opt for wpa_supplicant or other configurations.
  5. This was my distro of choice for setting up QEMU + VFIO to run Linux and macOS Mojave side-by-side!
  6. Yep.
  7. Void has a binary package system (XBPS), alongside its git-managed build system (xbps-src). The latter is being used to build the ppc port of Void (although the patches are not official yet).

The above is all on PPC ? Chromium ?
 
The above is all on PPC ? Chromium ?

I'm talking about the distribution in general. The ppc port is new, and a working build was up just a few days ago. It's a one-man-effort, so I can't possibly get all packages built under ppc yet, but the assumption is that most of what is on the other architectures will work on here (being reasonable of course).
 
I'm talking about the distribution in general. The ppc port is new, and a working build was up just a few days ago. It's a one-man-effort, so I can't possibly get all packages built under ppc yet, but the assumption is that most of what is on the other architectures will work on here (being reasonable of course).

Thanks for clarifying that, let me know if I can be of any assistance, got 2 iBooks and a Powerbook that can be used extensively for testing.
 
  • Like
Reactions: mmphosis
I'm at the point of the install where I want to use xbps-install to fetch updates,kernel and grub but it fails
on https://repo.voidlinux.eu/current/ppc-repodata Not Found.

Any ideas ?

The port is not official, so there are no ppc binaries on any of the public repos. The chroot was only a guideline on installation. I did upload packages onto https://furcode.co/void/public/

To use it as a repository, try sudo xbps-install --repository=https://furcode.co/void/public [command]

You don't need to run any updates as the rootfs is already at the latest version, you only need to install the "linux" package to install the ppc kernel. You can then use an existing yaboot or grub to boot it (e.x /boot/vmlinux-4.17.6_1 root=/dev/sdx)
 
Last edited:
  • Like
Reactions: G4fanboy and Lastic
Ok got kernel installed via your repository, thanks a lot for that.

However I did all this using a Ubuntu Mate Live CD so I have no installed grub or yaboot.

I chose partition table msdos earlier and only have one big root partition called /dev/sda1.

yabootconfig installed via the Live CD won't let me install yaboot since there is no bootstrap partition.

Guess I should have chosen APM ?
[doublepost=1532626532][/doublepost]Will give it another spin on my dualboot Debian/Leopard PB G4
 
Ok got kernel installed via your repository, thanks a lot for that.

However I did all this using a Ubuntu Mate Live CD so I have no installed grub or yaboot.

I chose partition table msdos earlier and only have one big root partition called /dev/sda1.

yabootconfig installed via the Live CD won't let me install yaboot since there is no bootstrap partition.

Guess I should have chosen APM ?
[doublepost=1532626532][/doublepost]Will give it another spin on my dualboot Debian/Leopard PB G4

If you want the bootloader on disk, you need to choose APM as that's what OpenFirmware supports. Alternatively, you could try to use the Live CD's yaboot to specify the disk and partition where vmlinux is at.
 
Currently I got as far as adapting my /etc/yaboot.conf on my now thriple booting PB G4 12"

sda2 Bootstrap
sda3 Debian
sda6 Void
sda4 swap
sda5 Leopard

but I can't get Yaboot to find the correct disk ,messing around with partition , root UUID, OF device paths
[doublepost=1532632756][/doublepost]Ok got a bit further now.

Typed in the full "OF path:6,/boot/vmlinux-4.17.6_1 root=/dev/sda6" at the Yaboot prompt and got into Void Linux.
 
Currently I got as far as adapting my /etc/yaboot.conf on my now thriple booting PB G4 12"

sda2 Bootstrap
sda3 Debian
sda6 Void
sda4 swap
sda5 Leopard

but I can't get Yaboot to find the correct disk ,messing around with partition , root UUID, OF device paths
[doublepost=1532632756][/doublepost]Ok got a bit further now.

Typed in the full "OF path:6,/boot/vmlinux-4.17.6_1 root=/dev/sda6" at the Yaboot prompt and got into Void Linux.

Good to know that it worked! A good chunk of packages have been built (xorg, screen, buildtools, etc) if you'd like to try them out. You can also search through https://voidlinux.org/packages/ (although not all packages on that list have a ppc port yet).
 
Looking good! I managed to install it on my iBook G4, at least sort of. I haven't got yaboot properly set up since this is a single-boot machine but it boots, really quickly for such an old machine! :)

Since there's a lot of lacking packages, I can't get much to run. No wpa_supplicant, yaboot, not even the neofetch you showed off for some reason.

I have a Ryzen 5 1600 machine that I could use to cross-compile some packages over if you're interested. I can handle myself in Linux just fine.

Is there any other way I could help out? I'm REALLY interested in this project.
 
Last edited:
  • Like
Reactions: G4fanboy
Looking good! I managed to install it on my iBook G4, at least sort of. I haven't got yaboot properly set up since this is a single-boot machine but it boots, really quickly for such an old machine! :)

Since there's a lot of lacking packages, I can't get much to run. No wpa_supplicant, yaboot, not even the neofetch you showed off for some reason.

I have a Ryzen 5 1600 machine that I could use to cross-compile some packages over if you're interested. I can handle myself in Linux just fine.

Is there any other way I could help out? I'm REALLY interested in this project.

All the binaries I demoed should be in https://furcode.co/void/public already and can be installed through xbps-install. I've recently added Xorg and i3/dwm as well. There's around 613 packages available at this point.

If you're interested in cross-building, the ppc tree is available at https://github.com/foxlet/void-packages/
 
Last edited:
  • Like
Reactions: G4fanboy
As I'm not familiar with Void, is it literally just a case of cloning your git repo and running: ./xbps-src pkg <pkgname> to build the package of my choice?

I.e. is your repo pre-configured to have PPC as the target?
 
I couldn't get dhcp to work but managed to add a static IP to my Ethernet interface and set a default route to my gateway.

However when I use your repo and try to install something via xbps-install , it fails at downloading the binary packages because of an issue with the signatures ( I didn't have this issue during the chroot xbps-install of the kernel ).

Any idea ? Sorry to bother you with all these questions, just want to get git setup and xbps-src.

Bootwise I can confirm that it boots up in half the time (12 sec) that my Debian CLI only install takes to boot ( 24 sec )
 
Last edited:
As I'm not familiar with Void, is it literally just a case of cloning your git repo and running: ./xbps-src pkg <pkgname> to build the package of my choice?

I.e. is your repo pre-configured to have PPC as the target?

If you're on a native PPC system, xbps-src builds for ppc. If you're cross-compiling, you specify the architecture with the -a flag (as in ./xbps-src -a ppc pkg mypackage). Note than in either case, you need to initialize with a bootstrap first (./xbps-src binary-bootstrap when cross-compiling, or ./xbps-src bootstrap when native).
[doublepost=1532681536][/doublepost]
I couldn't get dhcp to work but managed to add a static IP to my Ethernet interface and set a default route to my gateway.

However when I use your repo and try to install something via xbps-install , it fails at downloading the binary packages because of an issue with the signatures ( I didn't have this issue during the chroot xbps-install of the kernel ).

Any idea ? Sorry to bother you with all these questions, just want to get git setup and xbps-src.

Bootwise I can confirm that it boots up in half the time (12 sec) that my Debian CLI only install takes to boot ( 24 sec )

Can you give more detail on the error? All the packages are signed and work fine here. Note that dhcp isn't enabled by default, you can do so with ln -s /etc/sv/dhcpd /var/service/ to enable the service.
[doublepost=1532681579][/doublepost]In other news, we got gears! :p

maE9QtT.png
 
Last edited:
Register on MacRumors! This sidebar will go away, and you'll see fewer ads.