Subject: ‘tests/guix-shell-export-manifest.sh’ fails on aarch64-linux

From: Sébastien Lerique <[email-masked]>
Date: Mon, 09 May 2022 21:04:23 +0900

Hello all,

> I have a WIP patch for adding CPU detection for aarch64. Perhaps it'll
> help with the issues?
>

Just confirming this works on rock64.

---
sl@matrixbox ~/guix [env]$ ./pre-inst-env guix shell --export-manifest gsl openblas gcc-toolchain --tune

;;; ("aarch64" #f #f #f #<<set> vhash: #<vhash 8d0ff60 9 pairs> insert: #<procedure %insert (t-5ce36f5c768e728-317 t-5ce36f5c768e728-319)> ref: #<procedure vhash-assoc (key vhash #:optional equal? hash)>>)
guix shell: tuning [email-masked] for CPU armv8-a
;; What follows is a "manifest" equivalent to the command line you gave.
;; You can store it in a file that you may then pass to any 'guix' command
;; that accepts a '--manifest' (or '-m') option.

(use-modules (guix transformations))

(define transform1
  (options->transformation '((tune . "armv8-a"))))

(packages->manifest
  (list (transform1 (specification->package "gsl"))
        (transform1 (specification->package "openblas"))
        (transform1
          (specification->package "gcc-toolchain"))))
---

In case this is still useful, on the same rock64 /proc/cpuinfo is:

sl@matrixbox ~$ cat /proc/cpuinfo
processor       : 0
BogoMIPS        : 48.00
Features        : fp asimd evtstrm aes pmull sha1 sha2 crc32 cpuid
CPU implementer : 0x41
CPU architecture: 8
CPU variant     : 0x0
CPU part        : 0xd03
CPU revision    : 4

processor       : 1
BogoMIPS        : 48.00
Features        : fp asimd evtstrm aes pmull sha1 sha2 crc32 cpuid
CPU implementer : 0x41
CPU architecture: 8
CPU variant     : 0x0
CPU part        : 0xd03
CPU revision    : 4

processor       : 2
BogoMIPS        : 48.00
Features        : fp asimd evtstrm aes pmull sha1 sha2 crc32 cpuid
CPU implementer : 0x41
CPU architecture: 8
CPU variant     : 0x0
CPU part        : 0xd03
CPU revision    : 4

processor       : 3
BogoMIPS        : 48.00
Features        : fp asimd evtstrm aes pmull sha1 sha2 crc32 cpuid
CPU implementer : 0x41
CPU architecture: 8
CPU variant     : 0x0
CPU part        : 0xd03
CPU revision    : 4

Cheers!
Sébastien