[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
02/02: build: Make ISO-9660 image bootable from USB flash drive.
From: |
Danny Milosavljevic |
Subject: |
02/02: build: Make ISO-9660 image bootable from USB flash drive. |
Date: |
Wed, 12 Jul 2017 10:16:05 -0400 (EDT) |
dannym pushed a commit to branch master
in repository guix.
commit 911a53a53f4898c386cbb7347daf928fae592fa3
Author: Danny Milosavljevic <address@hidden>
Date: Wed Jul 12 09:03:46 2017 +0200
build: Make ISO-9660 image bootable from USB flash drive.
* gnu/build/vm.scm (make-iso9660-image): Make image bootable from USB flash
drive.
---
gnu/build/vm.scm | 13 +++++++++++++
1 file changed, 13 insertions(+)
diff --git a/gnu/build/vm.scm b/gnu/build/vm.scm
index 2d41c57..d8c53ef 100644
--- a/gnu/build/vm.scm
+++ b/gnu/build/vm.scm
@@ -367,6 +367,19 @@ Grub configuration and OS-DRV as the stuff in it."
"var=/tmp/root/var"
"run=/tmp/root/run"
"--"
+ ;; Store two copies of the headers.
+ ;; The resulting ISO-9660 image has a DOS MBR and
+ ;; one protective partition (with type 0xCD).
+ ;; Because GuixSD only uses actual partitions
+ ;; rather than what /proc/partitions returns, work
+ ;; around it by storing the primary volume
+ ;; descriptor twice, once where it should be and
+ ;; once in the partition.
+ ;; Allegedly, otherwise, many other GNU tools
+ ;; (automounters etc) would also be confused by
+ ;; the extra partition so it makes sense to
+ ;; store two copies in any case.
+ "-boot_image" "any" "partition_offset=16"
"-volid" ,(string-upcase volume-id)
,@(if volume-uuid
`("-volume_date" "uuid"