vm: Create installation media with MBR and HFS only, no GPT.

* gnu/build/vm.scm (make-iso9660-image): Accept XORRISO,
GRUB-MKRESCUE-ENVIRONMENT.
* gnu/system/vm.scm (iso9660-image): Pass XORRISO; accept
GRUB-MKRESCUE-ENVIRONMENT.
(system-disk-image): Pass GRUB-MKRESCUE-ENVIRONMENT.
* gnu/packages/patches/xorriso-no-mbr-in-inner-efi.patch: New file.
* gnu/packages/patches/xorriso-no-partition-table-in-inner-efi.patch: New
file.
* gnu/local.mk (dist_patch_DATA): Add them.
* gnu/packages/cdrom.scm (xorriso)[source]: Add patches.
[arguments]<#:phases>[install-frontends]:
Add phase.
This commit is contained in:
Danny Milosavljevic 2019-05-18 17:49:05 +02:00
parent 08eafef865
commit 1d86b05618
No known key found for this signature in database
GPG key ID: E71A35542C30BAA5
6 changed files with 194 additions and 7 deletions

View file

@ -266,7 +266,8 @@ made available under the /xchg CIFS share."
bootcfg-drv
bootloader
(register-closures? (has-guix-service-type? os))
(inputs '()))
(inputs '())
(grub-mkrescue-environment '()))
"Return a bootable, stand-alone iso9660 image.
INPUTS is a list of inputs (as for packages)."
@ -313,7 +314,9 @@ INPUTS is a list of inputs (as for packages)."
inputs)))
(set-path-environment-variable "PATH" '("bin" "sbin") inputs)
(make-iso9660-image #$(bootloader-package bootloader)
(make-iso9660-image #$xorriso
'#$grub-mkrescue-environment
#$(bootloader-package bootloader)
#$bootcfg-drv
#$os
"/xchg/guixsd.iso"
@ -704,7 +707,9 @@ to USB sticks meant to be read-only."
#:bootloader (bootloader-configuration-bootloader
(operating-system-bootloader os))
#:inputs `(("system" ,os)
("bootcfg" ,bootcfg)))
("bootcfg" ,bootcfg))
#:grub-mkrescue-environment
'(("MKRESCUE_SED_MODE" . "mbr_hfs")))
(qemu-image #:name name
#:os os
#:bootcfg-drv bootcfg