diff options
author | Mathieu Othacehe <m.othacehe@gmail.com> | 2020-05-20 16:12:14 +0200 |
---|---|---|
committer | Mathieu Othacehe <othacehe@gnu.org> | 2020-05-26 09:57:10 +0200 |
commit | 16f9124d1fec7b40cdac189346e0d5021e43122b (patch) | |
tree | ae536b82146dcf257ca5ec0a7078df82be55ff09 | |
parent | 1b4fa7851b39f087a6433e8b5e22c479ca1da289 (diff) | |
download | guix-16f9124d1fec7b40cdac189346e0d5021e43122b.tar.gz guix-16f9124d1fec7b40cdac189346e0d5021e43122b.zip |
build: image: Add support for EXT2 and EXT3 file-systems.
* gnu/build/image.scm (make-ext4-image): Rename to ...
(make-ext-image): ... it, and pass the file-system type to mke2fs,
(make-partition-image): Adapt to call "make-ext-image" if the partition
file-system is prefixed by "ext".
-rw-r--r-- | gnu/build/image.scm | 18 |
1 files changed, 10 insertions, 8 deletions
diff --git a/gnu/build/image.scm b/gnu/build/image.scm index fe8e11aa1b..23fc56571f 100644 --- a/gnu/build/image.scm +++ b/gnu/build/image.scm @@ -63,16 +63,18 @@ take the partition metadata size into account, take a 25% margin." (* 1.25 (file-size root))) -(define* (make-ext4-image partition target root - #:key - (owner-uid 0) - (owner-gid 0)) - "Handle the creation of EXT4 partition images. See 'make-partition-image'." +(define* (make-ext-image partition target root + #:key + (owner-uid 0) + (owner-gid 0)) + "Handle the creation of EXT2/3/4 partition images. See +'make-partition-image'." (let ((size (partition-size partition)) + (fs (partition-file-system partition)) (label (partition-label partition)) (uuid (partition-uuid partition)) (options "lazy_itable_init=1,lazy_journal_init=1")) - (invoke "mke2fs" "-t" "ext4" "-d" root + (invoke "mke2fs" "-t" fs "-d" root "-L" label "-U" (uuid->string uuid) "-E" (format #f "root_owner=~a:~a,~a" owner-uid owner-gid options) @@ -105,8 +107,8 @@ ROOT directory to populate the image." (let* ((partition (sexp->partition partition-sexp)) (type (partition-file-system partition))) (cond - ((string=? type "ext4") - (make-ext4-image partition target root)) + ((string-prefix? "ext" type) + (make-ext-image partition target root)) ((string=? type "vfat") (make-vfat-image partition target root)) (else |