Currently Aarch64 support in guix is pretty good, as long as you don't mind compiling for yourself :). Potential downfalls are too little RAM (I limited my boards to 2GB minimum) and using an SD card. For building packages I made sure that between RAM and swap I have at least 6 GB, which I don't recall giving me any issues.
There were problems with actually building the guix binary in time for the 0.13 release, it has since been fixed and I have an unoffical aarch64 binary install tarball at flashner.co.il/~efraim/. Also there is the signing key for my odroid running guix-publish. The url for the guix-publish server is git.flashner.co.il:8181. General problem points/packages: * Java is currently out, sablevm-classpath doesn't compile, so currently there is no path for java. A quick check showed about 140 packages depend on sablevm-classpath. * Go: go-1.4.x doesn't support aarch64 (or mips). I have a patch against our gcc to build gccgo, and it produces a go binary, but it fails to actually build anything. When I checked Debian I saw they crosscompile their arm64 go binary from amd64. * ocaml-4.01.0: Doesn't build on aarch64, haven't investigated. * julia: aarch64 is officially supported, but it has only been tested on superpowerful boards, like the ThunderX. I haven't gotten it to build yet. * clisp: our current version doesn't build on aarch64, there isn't support yet. There are newer builds but no offical release yet, and I haven't tested those yet. * gprolog: No upstream support and AFAICT no one is working on it. * ldc: 1.x is supposed to support aarch64, 0.17.*, aka ldc-bootstrap, doesn't, it fails while compiling phobos, which has no aarch64 support in that version. * rust: Has upstream support, our package uses the i686 version as a bootstrap, so only i686 and x86_64 have support in guix ATM. * haskell: There is no upstream aarch64 binary to use for bootstrapping. I'm thinking of trying to use qemu-system-x86_64 as the shell and emulate x86_64 on my aarch64 board to cross-compile it to aarch64. * qt-4: does not build, I've hardly put any time into it. * gnucash: The ancient webkit version they use didn't build on aarch64, I haven't tried to fix it. * kernel: I don't know if there's a generic armv8 kernel config It sounds like its all doom and gloom, but its not too bad. `guix package -A | wc -l' shows me 5341 (5208 without sablevm-classpath), compared with ~5600 on x86_64. -- Efraim Flashner <[email protected]> אפרים פלשנר GPG key = A28B F40C 3E55 1372 662D 14F7 41AA E7DC CA3D 8351 Confidentiality cannot be guaranteed on emails sent or received unencrypted
signature.asc
Description: PGP signature
