gnu: grub: Make dependency on mdadm explicit.

* gnu/packages/grub.scm (grub)[arguments]: Path getroot.c in
'patch-stuff' phase.
[inputs]: Add MDADM.
This commit is contained in:
Ludovic Courtès 2016-10-05 15:08:38 +02:00
parent ab2cc5cde1
commit 358db0041f
No known key found for this signature in database
GPG key ID: 090B11993D9AEBB5

View file

@ -98,13 +98,23 @@ (define-public grub
(arguments
'(;; Two warnings: suggest braces, signed/unsigned comparison.
#:configure-flags '("--disable-werror")
#:phases (modify-phases %standard-phases
(add-after
'unpack 'patch-stuff
(add-after 'unpack 'patch-stuff
(lambda* (#:key inputs #:allow-other-keys)
(substitute* "grub-core/Makefile.in"
(("/bin/sh") (which "sh")))
;; Give the absolute file name of 'mdadm', used to
;; determine the root file system when it's a RAID
;; device. Failing to do that, 'grub-probe' silently
;; fails if 'mdadm' is not in $PATH.
(substitute* "grub-core/osdep/linux/getroot.c"
(("argv\\[0\\] = \"mdadm\"")
(string-append "argv[0] = \""
(assoc-ref inputs "mdadm")
"/sbin/mdadm\"")))
;; Make the font visible.
(copy-file (assoc-ref inputs "unifont") "unifont.bdf.gz")
(system* "gunzip" "unifont.bdf.gz")
@ -118,6 +128,7 @@ (define-public grub
#t)))))
(inputs
`(;; ("lvm2" ,lvm2)
("mdadm" ,mdadm)
("gettext" ,gnu-gettext)
("freetype" ,freetype)
;; ("libusb" ,libusb)