Void Linux for PowerPC

foxlet

macrumors 6502
Original poster
Aug 5, 2016
277
391
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.

 
Last edited:

Lastic

macrumors 6502a
Mar 19, 2016
824
682
North of the HellHole
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 ?
 

swamprock

macrumors 6502a
Aug 2, 2015
942
1,253
Michigan
Looking forward to seeing the development of this port continue. Let me know if I can help out with any testing.
 

mmphosis

macrumors regular
Jan 3, 2017
112
119
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.
 

foxlet

macrumors 6502
Original poster
Aug 5, 2016
277
391
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!


[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.
 

Lastic

macrumors 6502a
Mar 19, 2016
824
682
North of the HellHole
  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 ?
 

foxlet

macrumors 6502
Original poster
Aug 5, 2016
277
391
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).
 

Lastic

macrumors 6502a
Mar 19, 2016
824
682
North of the HellHole
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

foxlet

macrumors 6502
Original poster
Aug 5, 2016
277
391
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

Lastic

macrumors 6502a
Mar 19, 2016
824
682
North of the HellHole
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
 

foxlet

macrumors 6502
Original poster
Aug 5, 2016
277
391
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.
 

Lastic

macrumors 6502a
Mar 19, 2016
824
682
North of the HellHole
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.
 

foxlet

macrumors 6502
Original poster
Aug 5, 2016
277
391
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).
 

heyimquinn

macrumors newbie
Jun 19, 2017
12
22
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

foxlet

macrumors 6502
Original poster
Aug 5, 2016
277
391
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

MisterBiro

macrumors member
Jun 27, 2015
55
24
Orange, CA
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?
 

Lastic

macrumors 6502a
Mar 19, 2016
824
682
North of the HellHole
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:

foxlet

macrumors 6502
Original poster
Aug 5, 2016
277
391
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

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