Subject: bug#32524: guix system build bare-bones.scm fails with ahci shpchp

From: Eric Brown <[email-masked]>
Date: Fri, 24 Aug 2018 22:13:25 -0500

I am attempting to guix system reconfigure a GuixSD 0.15 (updated)
Macintosh laptop where reconfigure recommends and requires:

  (initrd-modules (append (list "ahci" "shpchp")
                          %base-initrd-modules))

However, the config file that I used at guix system init works
originally with this additional bit of lisp, but a reconfigure gives the
error below.

In an attempt to narrow down, inserting this into bare-bones.scm gives a
similar error. Thanks to samplet for help and confirmation on #guixsd.

------------------------>8------------- bare-bones.scm
;; This is an operating system configuration template
;; for a "bare bones" setup, with no X11 display server.

(use-modules (gnu) (gnu packages linux))
(use-service-modules networking ssh)
(use-package-modules screen ssh)

(operating-system
  (host-name "komputilo")
  (timezone "Europe/Berlin")
  (locale "en_US.utf8")
 
  (initrd-modules (append (list "ahci" "shpchp")
                          %base-initrd-modules))

  ;; Boot in "legacy" BIOS mode, assuming /dev/sdX is the
  ;; target hard disk, and "my-root" is the label of the target
  ;; root file system.
  (bootloader (bootloader-configuration
                (bootloader grub-bootloader)
                (target "/dev/sdX")))
  (file-systems (cons (file-system
                        (device (file-system-label "my-root"))
                        (mount-point "/")
                        (type "ext4"))
                      %base-file-systems))

  ;; This is where user accounts are specified.  The "root"
  ;; account is implicit, and is initially created with the
  ;; empty password.
  (users (cons (user-account
                (name "alice")
                (comment "Bob's sister")
                (group "users")

                ;; Adding the account to the "wheel" group
                ;; makes it a sudoer.  Adding it to "audio"
                ;; and "video" allows the user to play sound
                ;; and access the webcam.
                (supplementary-groups '("wheel"
                                        "audio" "video"))
                (home-directory "/home/alice"))
               %base-user-accounts))

  ;; Globally-installed packages.
  (packages (cons* screen openssh %base-packages))

  ;; Add services to the baseline: a DHCP client and
  ;; an SSH server.
  (services (cons* (dhcp-client-service)
                   (service openssh-service-type
                            (openssh-configuration
                              (port-number 2222)))
                   %base-services)))

------------------------>8------------- output

An example error:
------------------------>8------------- output
   /gnu/store/11hrmawlda4gr1xajwyxlh8miqvp49k0-activate.drv
   /gnu/store/8mm7lb5qal9qsfknl3f91g9sgqy8cxxm-boot.drv
   /gnu/store/vx2311zqjk1vjhpqqi9cmh1zw96mjiqk-etc.drv
   /gnu/store/hrrm5wls9ajpayi8wjf5w4qg7b4x45a8-raw-initrd.drv
   /gnu/store/yj9dw5f8lnbqfhjl811yvdx0h06pf0gw-grub-image.png.drv
[ 1/ 2] Compiling './gnu/build/bootloader.scm'...
[ 2/ 2] Compiling './guix/build/utils.scm'...
grafting '/gnu/store/lwgzzwgszv1x6g0bwzn7zkd6cqqp1l31-audit-2.8.4' -> '/gnu/store/kw94vfhdxbg66fd3yhf74fqq50jb3gng-audit-2.8.4'...
grafting '/gnu/store/gpv9sy0l1igpanpsn8mf6i96ahmc9pj8-gnupg-2.2.9' -> '/gnu/store/kx3lvw5ni7clg710wdrkvyl0qjgyl8gg-gnupg-2.2.9'...
grafting '/gnu/store/04dr9902qdijkqm41f7vnsggw9cad9vc-gobject-introspection-1.56.0' -> '/gnu/store/d0gs9bx52gsrcvfkrasgyjngrji2dgml-gobject-introspection-1.56.0'...
grafting '/gnu/store/1hlrfb4896hllzq699aqbc21pjczmvgd-libevent-2.0.22' -> '/gnu/store/i4nn1r614n6xkn5vn0qjaq6i4vymaz3i-libevent-2.0.22'...
grafting '/gnu/store/4jxh7rd5p1667hnagzrxw4q4a9mmvbwm-libevent-2.1.8' -> '/gnu/store/cd18iq8q54gg47pm75n3482mmxc8mjrn-libevent-2.1.8'...
grafting '/gnu/store/wdfnkpb396xq0arss8gzwf1f973zif0n-libosinfo-1.0.0' -> '/gnu/store/1rsn2kb48n7gz6dpabjapldc1a28945s-libosinfo-1.0.0'...
Backtrace:
           8 (primitive-load "/gnu/store/5q7mfn597l36jnylycfk1yfifri?")
In ice-9/eval.scm:
    619:8  7 (_ #f)
   626:19  6 (_ #<directory (guile-user) 7cc140>)
    159:9  5 (_ _)
In gnu/build/linux-modules.scm:
   184:47  4 (recursive-module-dependencies _ #:lookup-module _)
    98:14  3 (module-dependencies _)
    85:18  2 (modinfo-section-contents _)
In ice-9/ports.scm:
   439:11  1 (call-with-input-file #f #<procedure get-bytevector-al?> ?)
In unknown file:
           0 (open-file #f "r" #:encoding #f #:guess-encoding #f)

ERROR: In procedure open-file:
Wrong type (expecting string): #f
builder for `/gnu/store/c0vahbyxh6qkxdrgjr2sjcr35hwc4np8-linux-modules.drv' failed with exit code 1
cannot build derivation `/gnu/store/rwbi4h4mdi8h7h15szxw1jc31vv9kg6p-init.drv': 1 dependencies couldn't be built
cannot build derivation `/gnu/store/hrrm5wls9ajpayi8wjf5w4qg7b4x45a8-raw-initrd.drv': 1 dependencies couldn't be built
cannot build derivation `/gnu/store/4sryh7lwx7jjvlad2ivg29wv32gbida1-grub.cfg.drv': 1 dependencies couldn't be built
guix system: error: build failed: build of `/gnu/store/4sryh7lwx7jjvlad2ivg29wv32gbida1-grub.cfg.drv' failed
root@brown ~/src/guix [env]#
------------------------>8------------- output