summaryrefslogtreecommitdiff
path: root/gnu/system/mapped-devices.scm
diff options
context:
space:
mode:
authorLudovic Courtès <ludo@gnu.org>2016-10-27 11:20:26 +0200
committerLudovic Courtès <ludo@gnu.org>2016-10-27 13:48:52 +0200
commit4ed2f515d69a199154c272997f4683b89ac0a9b8 (patch)
tree71c5ae516fa37039ef38d83d1ff67ae2e3ba3f68 /gnu/system/mapped-devices.scm
parent631fda7e90c5327cb365b785b221f37a899e8bce (diff)
downloadguix-patches-4ed2f515d69a199154c272997f4683b89ac0a9b8.tar
guix-patches-4ed2f515d69a199154c272997f4683b89ac0a9b8.tar.gz
mapped-devices: Use 'mdadm-static' in 'raid-device-mapping'.
* gnu/system/mapped-devices.scm (open-raid-device, close-raid-device): Use MDADM-STATIC instead of MDADM. Use 'file-append'.
Diffstat (limited to 'gnu/system/mapped-devices.scm')
-rw-r--r--gnu/system/mapped-devices.scm8
1 files changed, 5 insertions, 3 deletions
diff --git a/gnu/system/mapped-devices.scm b/gnu/system/mapped-devices.scm
index 2487638c52..e44f2693a7 100644
--- a/gnu/system/mapped-devices.scm
+++ b/gnu/system/mapped-devices.scm
@@ -24,7 +24,7 @@
#:use-module (gnu services)
#:use-module (gnu services shepherd)
#:autoload (gnu packages cryptsetup) (cryptsetup)
- #:autoload (gnu packages linux) (mdadm)
+ #:autoload (gnu packages linux) (mdadm-static)
#:use-module (srfi srfi-1)
#:use-module (ice-9 match)
#:export (mapped-device
@@ -150,12 +150,14 @@ TARGET (e.g., \"/dev/md0\"), using 'mdadm'."
(sleep 1)
(loop (+ 1 attempts))))
- (zero? (apply system* (string-append #$mdadm "/sbin/mdadm")
+ ;; Use 'mdadm-static' rather than 'mdadm' to avoid pulling its whole
+ ;; closure (80 MiB) in the initrd when a RAID device is needed for boot.
+ (zero? (apply system* #$(file-append mdadm-static "/sbin/mdadm")
"--assemble" #$target sources))))
(define (close-raid-device sources target)
"Return a gexp that stops the RAID device TARGET."
- #~(zero? (system* (string-append #$mdadm "/sbin/mdadm")
+ #~(zero? (system* #$(file-append mdadm-static "/sbin/mdadm")
"--stop" #$target)))
(define raid-device-mapping