aboutsummaryrefslogtreecommitdiff
path: root/gnu/system
diff options
context:
space:
mode:
authorJosselin Poiret <dev@jpoiret.xyz>2023-07-27 18:28:18 +0200
committerJosselin Poiret <dev@jpoiret.xyz>2023-08-25 14:24:21 +0200
commitd57cab764122af69d52d8cc9c843456044e5d7bc (patch)
tree7fecc28f81e338f580eac4b80169f45bbda152a4 /gnu/system
parent519c3b7803c48bfbb42053ab8edf7e052071be5f (diff)
downloadguix-d57cab764122af69d52d8cc9c843456044e5d7bc.tar.gz
guix-d57cab764122af69d52d8cc9c843456044e5d7bc.zip
image: Add mbr-raw-image-type and use by default.
* gnu/system/image.scm (mbr-disk-image, mbr-raw-image-type): New variables. (qcow2-image-type): Inherit mbr-disk-image. * guix/scripts/system.scm (%default-options): Use mbr-raw-image-type by default. * gnu/tests/install.scm (run-install): Use mbr-raw in the tests. * doc/guix-cookbook.texi (Guix System Image API): Update the list of image types. * doc/guix.texi (Invoking guix system, System Images, image-type Reference): Add mbr-raw and switch documented default to it.
Diffstat (limited to 'gnu/system')
-rw-r--r--gnu/system/image.scm19
1 files changed, 17 insertions, 2 deletions
diff --git a/gnu/system/image.scm b/gnu/system/image.scm
index 841e7e0c7e..5b8da2f896 100644
--- a/gnu/system/image.scm
+++ b/gnu/system/image.scm
@@ -76,6 +76,7 @@
esp32-partition
root-partition
+ mbr-disk-image
efi-disk-image
iso9660-image
docker-image
@@ -84,6 +85,7 @@
raw-with-offset-disk-image
image-with-os
+ mbr-raw-image-type
efi-raw-image-type
efi32-raw-image-type
qcow2-image-type
@@ -145,6 +147,15 @@ parent image record."
(flags '(boot))
(initializer (gexp initialize-root-partition))))
+(define mbr-disk-image
+ (image-without-os
+ (format 'disk-image)
+ (partition-table-type 'mbr)
+ (partitions
+ (list (partition
+ (inherit root-partition)
+ (offset root-offset))))))
+
(define efi-disk-image
(image-without-os
(format 'disk-image)
@@ -201,6 +212,11 @@ set to the given OS."
(inherit base-image)
(operating-system os)))
+(define mbr-raw-image-type
+ (image-type
+ (name 'mbr-raw)
+ (constructor (cut image-with-os mbr-disk-image <>))))
+
(define efi-raw-image-type
(image-type
(name 'efi-raw)
@@ -216,8 +232,7 @@ set to the given OS."
(name 'qcow2)
(constructor (cut image-with-os
(image
- (inherit efi-disk-image)
- (partition-table-type 'mbr)
+ (inherit mbr-disk-image)
(name 'image.qcow2)
(format 'compressed-qcow2))
<>))))