diff options
author | Pavel Shlyak <p.shlyak@pantherx.org> | 2022-05-22 16:53:30 +0300 |
---|---|---|
committer | Mathieu Othacehe <othacehe@gnu.org> | 2022-05-23 09:17:12 +0200 |
commit | 6e99c020b8c19e140635d1a52815d5b3298ed1ec (patch) | |
tree | 281be824e84a3234ae4a9a86fd89f1f2ea33016b /gnu | |
parent | 76139eb2535b6b4ac53178c7066d92550f817d7e (diff) |
system: image: Support GPT vfat partitions.
* gnu/system/image.scm (system-disk-image): Support them.
Signed-off-by: Mathieu Othacehe <othacehe@gnu.org>
Diffstat (limited to 'gnu')
-rw-r--r-- | gnu/system/image.scm | 19 |
1 files changed, 14 insertions, 5 deletions
diff --git a/gnu/system/image.scm b/gnu/system/image.scm index cdb6c09633..e86e8c0867 100644 --- a/gnu/system/image.scm +++ b/gnu/system/image.scm @@ -320,12 +320,21 @@ used in the image." file-system))))))))) (define (partition->gpt-type partition) - ;; Return the genimage GPT partition type code corresponding to PARTITION. - ;; See https://github.com/pengutronix/genimage/blob/master/README.rst - (let ((flags (partition-flags partition))) + ;; Return the genimage GPT partition type code corresponding to the + ;; given PARTITION. See: + ;; https://github.com/pengutronix/genimage/blob/master/README.rst + (let ((flags (partition-flags partition)) + (file-system (partition-file-system partition))) (cond - ((member 'esp flags) "U") - (else "L")))) + ((member 'esp flags) "U") + ((string-prefix? "ext" file-system) "L") + ((string=? file-system "vfat") "F") + (else + (raise (condition + (&message + (message + (format #f (G_ "unsupported partition type: ~a") + file-system))))))))) (define (partition-image partition) ;; Return as a file-like object, an image of the given PARTITION. A |