From 49962b15a1c4e72a55b6cf273806d203906de2ed Mon Sep 17 00:00:00 2001 From: Ludovic Courtès Date: Thu, 3 Aug 2017 00:20:05 +0200 Subject: activation: Make sure /etc exists. Fixes . Reported by ng0 . * gnu/build/activation.scm (activate-etc): Add call to 'mkdir-p'. --- gnu/build/activation.scm | 1 + 1 file changed, 1 insertion(+) (limited to 'gnu/build') diff --git a/gnu/build/activation.scm b/gnu/build/activation.scm index 299c0728cb..9c58370ec3 100644 --- a/gnu/build/activation.scm +++ b/gnu/build/activation.scm @@ -313,6 +313,7 @@ they already exist." (false-if-exception (delete-file file))) (format #t "populating /etc from ~a...~%" etc) + (mkdir-p "/etc") ;; Create the /etc/ssl -> /run/current-system/profile/etc/ssl symlink. This ;; symlink, to a target outside of the store, probably doesn't belong in the -- cgit 1.4.1 From 9833bcfc08ef009b9e8b4398baa481ef65c80ad7 Mon Sep 17 00:00:00 2001 From: Danny Milosavljevic Date: Fri, 21 Jul 2017 01:06:46 +0200 Subject: build: Allow mounting of entire disks. * gnu/build/file-systems.scm (disk-partitions): Also return entire drives. --- gnu/build/file-systems.scm | 17 +++++++++-------- 1 file changed, 9 insertions(+), 8 deletions(-) (limited to 'gnu/build') diff --git a/gnu/build/file-systems.scm b/gnu/build/file-systems.scm index b6930497d6..203fbdfffb 100644 --- a/gnu/build/file-systems.scm +++ b/gnu/build/file-systems.scm @@ -373,15 +373,16 @@ not valid header was found." (define (disk-partitions) "Return the list of device names corresponding to valid disk partitions." - (define (last-character str) - (string-ref str (- (string-length str) 1))) - (define (partition? name major minor) - ;; Select device names that end in a digit, like libblkid's 'probe_all' - ;; function does. Checking for "/sys/dev/block/MAJOR:MINOR/partition" - ;; doesn't work for partitions coming from mapped devices. - (and (char-set-contains? char-set:digit (last-character name)) - (> major 2))) ;ignore RAM disks and floppy disks + ;; grub-mkrescue does some funny things for EFI support which + ;; makes it a lot more difficult than one would expect to support + ;; booting an ISO-9660 image from an USB flash drive. + ;; For example there's a buggy (too small) hidden partition in it + ;; which Linux mounts and then proceeds to fail while trying to + ;; fall off the edge. + ;; In any case, partition tables are supposed to be optional so + ;; here we allow checking entire disks for file systems, too. + (> major 2)) ;ignore RAM disks and floppy disks (call-with-input-file "/proc/partitions" (lambda (port) -- cgit 1.4.1