Hello fellow NixOS users,
I’ll try to keep this short and precise. The Linux kernel on the ARM architecture supports using a different pagesize than the one used on x86. We all use a kernel with a 4KB pagesize because it was the best when x86 was hot. A 16KB pagesize is even better for some tasks (and a 64KB is even better than that).
This effort is being made to make sure that NixOS works on Apple Silicon given that a 16KB kernel is required by the hardware. Since we cannot just flip a switch for everyone, I’m maintaining a fork of nixpkgs (it’s just one line and I hope it stays that way) that builds a 16K kernel and have a binary cache for people who want to test without compiling. More details in the README of the repository linked below.
Repository: GitHub - thefossguy/nixpkgs at 16k-kernel
In case someone wants to explore this topic, I have a couple links:
- Broken Software · AsahiLinux/docs Wiki · GitHub
- https://www.phoronix.com/review/ampereone-64k-linux611
Finally, please feel free to reach out with any problems you face while you’re testing. Bad software or missing outPath in the binary cache, anything.