Liliana Marie Prikler writes: > I think you should try to pin the kernel modules as well. If that > still doesn't work as intended (it very well might), we have a proper > case of something that should work but doesn't. > > Cheers Thanks for the suggestion. I tested with the following: ``` (define-values (rz/linux rz/linux-kernel-modules) (let* ((channels (list (channel (name 'guix) (url "https://git.savannah.gnu.org/git/guix.git") (commit "d37b467631d5b0e965ea933b8bda8448993580e9")))) (inferior (inferior-for-channels channels)) (kernel-version "6.1.15")) (values (first (lookup-inferior-packages inferior "linux-libre" kernel-version)) (list (first (lookup-inferior-packages inferior "v4l2loopback-linux-module")))))) (operating-system ... (kernel rz/linux) (kernel-loadable-modules rz/linux-kernel-modules) ...) ``` But I receive a different error now: ``` running profile hook of type 'linux-module-database'... Backtrace: 1 (primitive-load "/gnu/store/7ha0kn8fz8yfi26m3m8997wlc8m?") In ice-9/boot-9.scm: 2007:7 0 (error _ . _) ice-9/boot-9.scm:2007:7: In procedure error: Specified Linux kernel and Linux kernel modules are not all of the same version ``` However, if I use the most recent kernel version available in the inferior... ``` (define-values (rz/linux rz/linux-kernel-modules) (let* ((channels (list (channel (name 'guix) (url "https://git.savannah.gnu.org/git/guix.git") (commit "d37b467631d5b0e965ea933b8bda8448993580e9")))) (inferior (inferior-for-channels channels)) (kernel-version "6.2.2")) (values (first (lookup-inferior-packages inferior "linux-libre")) (list (first (lookup-inferior-packages inferior "v4l2loopback-linux-module")))))) ``` It actually works! So it seems that the problem is specifically with using kernel modules with a kernel version other than the latest linux-libre kernel from an inferior. I also tried using a specific kernel version without an inferior like so: ``` (operating-system ... (kernel (specification->package "linux-libre@6.1.15")) (kernel-loadable-modules (list (specification->package"v4l2loopback-linux-module"))) ...) ``` And that works as well. TL;DR: The issue has been narrowed down to using kernel modules with a kernel from an inferior besides the latest kernel from that inferior.