From 4ed2f515d69a199154c272997f4683b89ac0a9b8 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= Date: Thu, 27 Oct 2016 11:20:26 +0200 Subject: [PATCH] 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'. --- gnu/system/mapped-devices.scm | 8 +++++--- 1 file 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 @@ (define-module (gnu system mapped-devices) #: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 @@ (define (open-raid-device sources target) (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