build: Make ISO-9660 image bootable from USB flash drive.

* gnu/build/vm.scm (make-iso9660-image): Make image bootable from USB flash
drive.
This commit is contained in:
Danny Milosavljevic 2017-07-12 09:03:46 +02:00
parent 0bc6fe323d
commit 911a53a53f
No known key found for this signature in database
GPG Key ID: E71A35542C30BAA5
1 changed files with 13 additions and 0 deletions

View File

@ -367,6 +367,19 @@ Grub configuration and OS-DRV as the stuff in it."
"var=/tmp/root/var" "var=/tmp/root/var"
"run=/tmp/root/run" "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) "-volid" ,(string-upcase volume-id)
,@(if volume-uuid ,@(if volume-uuid
`("-volume_date" "uuid" `("-volume_date" "uuid"