Software > Operating Systems and Porting

[NEWS] Bootstrapping native Void Linux (ppc64le) on Talos II

(1/3) > >>

DKnoto:
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.

MPC7500:
Wow. That's a big task. This means, VoidLinux is up and running on ppc64le, again?

DKnoto:
“Works” might be a bit of an overstatement. I'm starting with a minimal installation. I'm currently putting together a more comprehensive set of packages to perform a full installation and migrate package building from Fedora 42 to Void Linux. Unfortunately, I need to expand my infrastructure with a second processor because the entire build process takes a while on a single C18.

ClassicHasClass:
Still, good work.

DKnoto:
Update from the development front on Void Linux on ppc64le:

- I built cpufetch and fastfetch packages;

- The first one required some minor code refactoring for PPC—unused variables, memory leaks—I did only what was necessary to ensure it compiled without errors;

- In the second package, I ran into massive dependencies; I had to build 608 packages, including LuaJIT;

- For LuaJIT, I used sources from OpenResty; they compile, but unfortunately the JIT doesn’t work.

Here’s a screenshot of how it ultimately looks: https://www.dropbox.com/scl/fi/rh5n4a9vx7i47yoy0rueh/Void-Linux-Talos2-ppc64le-fast-cpu-fetch.png?rlkey=4bcs27d2gqtc9a7wf7wd12lfe&st=lqtizzog&dl=0

Navigation

[0] Message Index

[#] Next page

Go to full version