summaryrefslogtreecommitdiff
path: root/gnu/system/image.scm
diff options
context:
space:
mode:
authorChristopher Baines <mail@cbaines.net>2020-11-29 14:19:55 +0000
committerChristopher Baines <mail@cbaines.net>2020-11-29 17:34:18 +0000
commitff01206345e2306cc633db48e0b29eab9077091a (patch)
tree25c7ee17005dadc9bf4fae3f0873e03a4704f782 /gnu/system/image.scm
parented2545f0fa0e2ad99d5a0c45f532c539b299b9fb (diff)
parent7c2e67400ffaef8eb6f30ef7126c976ee3d7e36c (diff)
downloadguix-patches-ff01206345e2306cc633db48e0b29eab9077091a.tar
guix-patches-ff01206345e2306cc633db48e0b29eab9077091a.tar.gz
Merge remote-tracking branch 'origin/master' into core-updates
Diffstat (limited to 'gnu/system/image.scm')
-rw-r--r--gnu/system/image.scm29
1 files changed, 25 insertions, 4 deletions
diff --git a/gnu/system/image.scm b/gnu/system/image.scm
index bc6610b14c..4972d9067b 100644
--- a/gnu/system/image.scm
+++ b/gnu/system/image.scm
@@ -66,6 +66,7 @@
efi-disk-image
iso9660-image
+ arm32-disk-image
arm64-disk-image
image-with-os
@@ -73,6 +74,7 @@
qcow2-image-type
iso-image-type
uncompressed-iso-image-type
+ arm32-image-type
arm64-image-type
image-with-label
@@ -126,10 +128,10 @@
(label "GUIX_IMAGE")
(flags '(boot)))))))
-(define arm64-disk-image
+(define arm32-disk-image
(image
(format 'disk-image)
- (target "aarch64-linux-gnu")
+ (target "arm-linux-gnueabihf")
(partitions
(list (partition
(inherit root-partition)
@@ -138,6 +140,11 @@
;; fails.
(volatile-root? #f)))
+(define arm64-disk-image
+ (image
+ (inherit arm32-disk-image)
+ (target "aarch64-linux-gnu")))
+
;;;
;;; Images types.
@@ -179,9 +186,14 @@ set to the given OS."
(compression? #f))
<>))))
+(define arm32-image-type
+ (image-type
+ (name 'arm32-raw)
+ (constructor (cut image-with-os arm32-disk-image <>))))
+
(define arm64-image-type
(image-type
- (name 'arm)
+ (name 'arm64-raw)
(constructor (cut image-with-os arm64-disk-image <>))))
@@ -342,6 +354,9 @@ used in the image."
#$output
image-root)))))
(computed-file "partition.img" image-builder
+ ;; Allow offloading so that this I/O-intensive process
+ ;; doesn't run on the build farm's head node.
+ #:local-build? #f
#:options `(#:references-graphs ,inputs))))
(define (partition->config partition)
@@ -399,6 +414,7 @@ image ~a {
out-image))
(convert-disk-image out-image '#$format #$output)))))
(computed-file name builder
+ #:local-build? #f ;too I/O-intensive
#:options `(#:substitutable? ,substitutable?))))
@@ -476,6 +492,9 @@ used in the image. "
#:volume-id #$root-label
#:volume-uuid #$root-uuid)))))
(computed-file name builder
+ ;; Allow offloading so that this I/O-intensive process
+ ;; doesn't run on the build farm's head node.
+ #:local-build? #f
#:options `(#:references-graphs ,inputs
#:substitutable? ,substitutable?))))
@@ -557,7 +576,9 @@ it can be used for bootloading."
(file-systems-to-keep
(srfi-1:remove
(lambda (fs)
- (string=? (file-system-mount-point fs) "/"))
+ (let ((mount-point (file-system-mount-point fs)))
+ (or (string=? mount-point "/")
+ (string=? mount-point "/boot/efi"))))
(operating-system-file-systems base-os)))
(format (image-format image))
(os