On 2021-02-11, Jonathan Marsden wrote: > On Thu, Feb 11, 2021, at 15:21, Leo Famulari wrote: >> On Wed, Feb 10, 2021 at 10:34:17PM -0600, Jonathan Marsden wrote: >> Well, it's supposed to work in the sense that we build kernels and >> bootloaders for aarch64, so Guix should be able to created images for >> that platform too. I'm not sure if the code is supposed to create images >> that match the host architecture, though, or for non-x86_64 at all. We >> may need to do a little more work in this area. > > As I understand it, aarch64 SBCs each have their own different, not yet > standardized, boot processes, so unlike common x86-64 "PC" machines, there > is a need for boot definition work that is board-specific. Knowing which SBCs > have been tested and are known to boot Guix System, preferably with a sample > OS definition file, would be valuable. ... > Is anyone currently booting Guix System on a small single board computer that > they can share info about, and ideally share a sample Guix system OS .scm file > definition for? There's an example system configuration for veyron-speedy in: gnu/system/examples/asus-c201.tmpl I'm not sure how well it is working out-of-the-box; last I checked it only worked with linux-libre@5.4. There's also one for pinebook-pro in the wip-pinebook-pro branch. > Regarding the Raspberry Pi specifically, how can we help with the work being > done at https://issues.guix.gnu.org/44543 ? Do the folks working on that already > have Guix System booting on a Raspberry Pi ? The raspberry pi boards are exceptionally peculiar in how they boot compared to other boards, and the free firmware is very limited if it works at all still... I've run guix on aarch64: pine64+, rockpro64-rk3399, rock64-rk3328, pinebook, pinebook-pro-rk3399, overdrive-1000, puma-rk3399 ... and on armhf: novena, wandboard solo (painful and long ago), veyron-speedy I've probably forgotten some others; too many to keep track of. :/ Other than pinebook, pinebook-pro and veyron-speedy, I've almost exclusively run them headless on serial console. Usually with usb ethernet and/or wireless adapaters, as the built-in ones typically require non-free firmware. Some general things I tend to do is use the linux-libre-arm-generic or linux-libre-arm64-generic kernels, and configure the initrd with an empty modules list, as these kernels usually have builtins for most of the needed drivers. It is tricky to manually craft the right initrd modules to load by hand (many have soft module dependencies on various subsystems that are not easily discoverable). If guix supported an initrd that would included nearly all the kernel modules and run modprobe that would be a huge improvement and make it more plausible to use the regular "linux-libre" kernel, and as a nice side-effect, almost be able to use the same system configuration on multiple different boards (bootloader aside). I've not used guix on any of them for real world tasks, other than to try and get guix running on them. :) live well, vagrant