linux-initrd: Ensure that the guile used in the initrd is referenced.
authorChristopher Baines <mail@cbaines.net>
Sun, 8 Oct 2017 08:52:24 +0000 (09:52 +0100)
committerChristopher Baines <mail@cbaines.net>
Sun, 8 Oct 2017 16:31:49 +0000 (17:31 +0100)
commitb36e06c2b0889f1d0f939465589d36887ff24d33
treeae7e66a2f39fe73244db6d56f45e2653127d1c50
parentfe90a6e08b1e82d13cf1604322235c78a3278fb9
linux-initrd: Ensure that the guile used in the initrd is referenced.

By referencing guile from the initrd output explicitly, it will be present in
the store when this initrd is used. If the exact guile used within the initrd
isn't present in the store, then after root is switched during the boot
process, loading modules (such as (ice-9 popen)) won't work.

This fixes guix-patches bug #28399, "Fix mysql activation, and add a basic
test".

* gnu/system/linux-initrd.scm (expression->initrd)[builder]: Write out a file
  called references in to the initrd output, which includes the store path for
  guile.
gnu/system/linux-initrd.scm