Hi everyone,
I just wanted to share a recent personal milestone. After a few days of intensive compiling and debugging, I’ve successfully bootstrapped a complete, native Void Linux base system (almost 1,000 packages) for ppc64le directly on my Talos II.
I used Void's xbps-src environment to build everything from source. If anyone else is looking to try this, here are a few technical hurdles I ran into and how I bypassed them:
- Kernel 6.18 & pSeries LPAR code: The build initially failed on papr-hvpipe.c. Since our machines run on PowerNV (skiboot) and don't need IBM's PAPR w/ LPAR virtualization overhead, I temporarily patched out the failing code with preprocessor macros. My ultimate goal is to build a leaner kernel with CONFIG_PPC_PSERIES completely disabled.
- x265 compilation errors: The x265 package tripped over AltiVec/VSX hardware optimizations during the 10-bit depth build pass. I had to explicitly disable the altivec option in the package's build template to get it to compile cleanly via standard C++.
- Booting via Petitboot: Instead of fighting with ISO generation scripts designed for x86, I installed the built packages (xbps-install) directly onto an ext4-formatted USB drive via chroot. I wrote a minimal grub.cfg pointing to the native vmlinux and initramfs, and Petitboot flawlessly parsed it and booted the system via kexec on the first try.
I'm taking a short breather now, but my next step is to configure the network with ConnMan and compile a native, lightweight graphical environment—likely Enlightenment—to keep the system as responsive and bloat-free as possible.
If anyone is working on a similar Void/OpenPOWER port and needs details on the xbps-src patches, let me know!
Cheers.