Subject: System reconfiguration fails to build linux-modules.drv

From: Vivien Kraus <[email-masked]>
Date: Sun, 19 Dec 2021 21:35:52 +0100

Dear guix,

On master, I can’t reconfigure my system, because the linux-modules.drv
fails with the following error:

Backtrace:
          17 (primitive-load "/gnu/store/bvjcb7jbwlky0czin8p66949mil?")
In ice-9/eval.scm:
    619:8 16 (_ #f)
   626:19 15 (_ #<directory (guile-user) 7ffff5fdbc80>)
   293:34 14 (_ #(#<directory (guile-user) 7ffff5fdbc80> #<procedu?>))
In srfi/srfi-1.scm:
   586:29 13 (map1 _)
   586:29 12 (map1 _)
   586:29 11 (map1 _)
   586:29 10 (map1 _)
   586:29  9 (map1 _)
   586:29  8 (map1 _)
   586:29  7 (map1 _)
   586:29  6 (map1 _)
   586:29  5 (map1 _)
   586:29  4 (map1 _)
   586:29  3 (map1 _)
   586:29  2 (map1 _)
   586:17  1 (map1 ("simplefb" "pata_acpi" "pata_atiixp" "isci" "?" ?))
In gnu/build/linux-modules.scm:
    257:5  0 (_)

gnu/build/linux-modules.scm:257:5: kernel module not found "simplefb" "/gnu/store/1ai7mxw5ad58ic9slxsjzsxaryi5wksp-linux-libre-5.10.87/lib/modules"

The top of the backtrace is this file,
/gnu/store/bvjcb7jbwlky0czin8p66949milhvrql-linux-modules-builder:

(begin (use-modules (gnu build linux-modules) (guix build utils) (srfi
srfi-1) (srfi srfi-26)) (define module-dir (string-append
"/gnu/store/1ai7mxw5ad58ic9slxsjzsxaryi5wksp-linux-libre-5.10.87"
"/lib/modules")) (define modules (let* ((lookup (cut find-module-file
module-dir <>)) (modules (map lookup (quote ("ahci" "usb-storage" "uas"
"usbhid" "hid-generic" "hid-apple" "dm-crypt" "xts" "serpent_generic"
"wp512" "nls_iso8859-1" "framebuffer_coreboot" "simplefb" "pata_acpi"
"pata_atiixp" "isci" "virtio_pci" "virtio_balloon" "virtio_blk"
"virtio_net" "virtio_console" "virtio-rng"))))) (append modules
(recursive-module-dependencies modules #:lookup-module lookup))))
(define (maybe-uncompress file) (cond ((string-contains file ".ko.gz")
(invoke
"/gnu/store/9q9z91mvc1r3h8zmi135msv3j1dgv2js-gzip-1.10/bin/gunzip"
file)))) (mkdir ((@ (guile) getenv) "out")) (for-each (lambda (module)
(let ((out-module (string-append ((@ (guile) getenv) "out") "/"
(basename module)))) (format #t "copying '~a'...~%" module) (copy-file
module out-module) (maybe-uncompress out-module))) (delete-duplicates
modules)) (write-module-name-database ((@ (guile) getenv) "out")))

This is the linux-related part of my system configuration:

(operating-system
  (kernel linux-libre-lts)
  (kernel-arguments
   `(,@%default-kernel-arguments
     "modprobe.blacklist=amdgpu,radeon"))
  …)

Best regards,

Vivien