~ruther/guix-local

4ed2f515d69a199154c272997f4683b89ac0a9b8 — Ludovic Courtès 9 years ago 631fda7
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'.
1 files changed, 5 insertions(+), 3 deletions(-)

M gnu/system/mapped-devices.scm
M gnu/system/mapped-devices.scm => gnu/system/mapped-devices.scm +5 -3
@@ 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