file-systems: The 'device' field can be a UUID (bytevector).

Previously a wrong-type-arg error would be raised when a file system
with a UUID (bytevector) field was encountered.

* gnu/system.scm (other-file-system-services)[device-mappings]: Check
whether FS's device is a string.
master
Ludovic Courtès 2015-12-22 00:29:43 +01:00
parent be21979d85
commit ab64483f64
1 changed files with 8 additions and 5 deletions

View File

@ -192,11 +192,14 @@ as 'needed-for-boot'."
(operating-system-file-systems os)))
(define (device-mappings fs)
(filter (lambda (md)
(string=? (string-append "/dev/mapper/"
(mapped-device-target md))
(file-system-device fs)))
(operating-system-mapped-devices os)))
(let ((device (file-system-device fs)))
(if (string? device)
(filter (lambda (md)
(string=? (string-append "/dev/mapper/"
(mapped-device-target md))
device))
(operating-system-mapped-devices os))
'())))
(define (add-dependencies fs)
;; Add the dependencies due to device mappings to FS.