> #x is for hexadecimal, right? If so, this can be simplified by using
> the second argument of string->number: (string->number (string-drop
> model 2) 16).
>
So does this:
--8<---------------cut here---------------start------------->8---
sl@matrixbox ~/guix [env]$ ./pre-inst-env guix shell --export-manifest gsl
openblas gcc-toolchain --tune
;;; ("aarch64" #f #f #f #<<set> vhash: #<vhash 36d16e00 9 pairs> insert:
#<procedure %insert (t-5ce36f5c768e728-317 t-5ce36f5c768e728-319)> ref:
#<procedure vhash-assoc (key vhash #:optional equal? hash)>>)
guix shell: tuning [email protected] 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"))))
--8<---------------cut here---------------end--------------->8---
(I'm happy to provide ssh access to this rock64 if that can help.)
Best,
Sébastien