mirror of
https://git.savannah.gnu.org/git/guix.git
synced 2025-01-19 05:57:04 +01:00
system: vm: Do not add EFI partition on ARM system.
* gnu/system/vm.scm (qemu-img): Do not add EFI partition if we are targetting ARM. UEFI support on u-boot is still experimental, so do not add EFI partition on ARM for now.
This commit is contained in:
parent
e45b573c2d
commit
00e39b2ea4
1 changed files with 30 additions and 20 deletions
|
@ -29,6 +29,7 @@ (define-module (gnu system vm)
|
|||
#:use-module (guix monads)
|
||||
#:use-module (guix records)
|
||||
#:use-module (guix modules)
|
||||
#:use-module (guix utils)
|
||||
|
||||
#:use-module ((gnu build vm)
|
||||
#:select (qemu-command))
|
||||
|
@ -312,26 +313,35 @@ (define* (qemu-image #:key
|
|||
graphs)))
|
||||
(- disk-image-size
|
||||
(* 50 (expt 2 20)))))
|
||||
(partitions (list (partition
|
||||
(size root-size)
|
||||
(label #$file-system-label)
|
||||
(uuid #$(and=> file-system-uuid
|
||||
uuid-bytevector))
|
||||
(file-system #$file-system-type)
|
||||
(flags '(boot))
|
||||
(initializer initialize))
|
||||
;; Append a small EFI System Partition for
|
||||
;; use with UEFI bootloaders.
|
||||
(partition
|
||||
;; The standalone grub image is about 10MiB, but
|
||||
;; leave some room for custom or multiple images.
|
||||
(size (* 40 (expt 2 20)))
|
||||
(label "GNU-ESP") ;cosmetic only
|
||||
;; Use "vfat" here since this property is used
|
||||
;; when mounting. The actual FAT-ness is based
|
||||
;; on filesystem size (16 in this case).
|
||||
(file-system "vfat")
|
||||
(flags '(esp))))))
|
||||
(partitions
|
||||
(append
|
||||
(list (partition
|
||||
(size root-size)
|
||||
(label #$file-system-label)
|
||||
(uuid #$(and=> file-system-uuid
|
||||
uuid-bytevector))
|
||||
(file-system #$file-system-type)
|
||||
(flags '(boot))
|
||||
(initializer initialize)))
|
||||
;; Append a small EFI System Partition for use with UEFI
|
||||
;; bootloaders if we are not targetting ARM because UEFI
|
||||
;; support in U-Boot is experimental.
|
||||
;;
|
||||
;; FIXME: ‘target-arm32?’ may be not operate on the right
|
||||
;; system/target values. Rewrite using ‘let-system’ when
|
||||
;; available.
|
||||
(if #$(target-arm32?)
|
||||
'()
|
||||
(list (partition
|
||||
;; The standalone grub image is about 10MiB, but
|
||||
;; leave some room for custom or multiple images.
|
||||
(size (* 40 (expt 2 20)))
|
||||
(label "GNU-ESP") ;cosmetic only
|
||||
;; Use "vfat" here since this property is used
|
||||
;; when mounting. The actual FAT-ness is based
|
||||
;; on filesystem size (16 in this case).
|
||||
(file-system "vfat")
|
||||
(flags '(esp))))))))
|
||||
(initialize-hard-disk "/dev/vda"
|
||||
#:partitions partitions
|
||||
#:grub-efi #$grub-efi
|
||||
|
|
Loading…
Reference in a new issue