[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
branch master updated: image: Add partition file-system options support.
From: |
guix-commits |
Subject: |
branch master updated: image: Add partition file-system options support. |
Date: |
Tue, 26 May 2020 11:17:55 -0400 |
This is an automated email from the git hooks/post-receive script.
mothacehe pushed a commit to branch master
in repository guix.
The following commit(s) were added to refs/heads/master by this push:
new bd3716f image: Add partition file-system options support.
bd3716f is described below
commit bd3716f6fee127562935d86ff7f641197366769c
Author: Mathieu Othacehe <address@hidden>
AuthorDate: Tue May 26 16:25:25 2020 +0200
image: Add partition file-system options support.
* gnu/image.scm (<partition>)[file-system-options]: New field,
(partition-file-system-options): new exported procedure.
* gnu/system/image.scm (partition->gexp): Adapt accordingly.
* gnu/build/image.scm (sexp->partition): Also adapt accordingly,
(make-ext-image): and pass file-system options to mke2fs.
---
gnu/build/image.scm | 28 ++++++++++++++++------------
gnu/image.scm | 19 +++++++++++--------
gnu/system/image.scm | 1 +
3 files changed, 28 insertions(+), 20 deletions(-)
diff --git a/gnu/build/image.scm b/gnu/build/image.scm
index 23fc565..b37ea93 100644
--- a/gnu/build/image.scm
+++ b/gnu/build/image.scm
@@ -47,9 +47,10 @@
"Take SEXP, a tuple as returned by 'partition->gexp', and turn it into a
<partition> record."
(match sexp
- ((size file-system label uuid)
+ ((size file-system file-system-options label uuid)
(partition (size size)
(file-system file-system)
+ (file-system-options file-system-options)
(label label)
(uuid uuid)))))
@@ -71,19 +72,22 @@ take the partition metadata size into account, take a 25%
margin."
'make-partition-image'."
(let ((size (partition-size partition))
(fs (partition-file-system partition))
+ (fs-options (partition-file-system-options partition))
(label (partition-label partition))
(uuid (partition-uuid partition))
- (options "lazy_itable_init=1,lazy_journal_init=1"))
- (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)
- target
- (format #f "~ak"
- (size-in-kib
- (if (eq? size 'guess)
- (estimate-partition-size root)
- size))))))
+ (journal-options "lazy_itable_init=1,lazy_journal_init=1"))
+ (apply invoke
+ `("mke2fs" "-t" ,fs "-d" ,root
+ "-L" ,label "-U" ,(uuid->string uuid)
+ "-E" ,(format #f "root_owner=~a:~a,~a"
+ owner-uid owner-gid journal-options)
+ ,@fs-options
+ ,target
+ ,(format #f "~ak"
+ (size-in-kib
+ (if (eq? size 'guess)
+ (estimate-partition-size root)
+ size)))))))
(define* (make-vfat-image partition target root)
"Handle the creation of VFAT partition images. See 'make-partition-image'."
diff --git a/gnu/image.scm b/gnu/image.scm
index b434ed5..0a92d16 100644
--- a/gnu/image.scm
+++ b/gnu/image.scm
@@ -24,6 +24,7 @@
partition-size
partition-offset
partition-file-system
+ partition-file-system-options
partition-label
partition-uuid
partition-flags
@@ -46,14 +47,16 @@
(define-record-type* <partition> partition make-partition
partition?
- (device partition-device (default #f))
- (size partition-size)
- (offset partition-offset (default 0))
- (file-system partition-file-system (default "ext4"))
- (label partition-label (default #f))
- (uuid partition-uuid (default #f))
- (flags partition-flags (default '()))
- (initializer partition-initializer (default #f)))
+ (device partition-device (default #f))
+ (size partition-size)
+ (offset partition-offset (default 0))
+ (file-system partition-file-system (default "ext4"))
+ (file-system-options partition-file-system-options
+ (default '()))
+ (label partition-label (default #f))
+ (uuid partition-uuid (default #f))
+ (flags partition-flags (default '()))
+ (initializer partition-initializer (default #f)))
;;;
diff --git a/gnu/system/image.scm b/gnu/system/image.scm
index cb770a1..a1214dd 100644
--- a/gnu/system/image.scm
+++ b/gnu/system/image.scm
@@ -117,6 +117,7 @@
'make-partition-image'."
#~'(#$@(list (partition-size partition))
#$(partition-file-system partition)
+ #$(partition-file-system-options partition)
#$(partition-label partition)
#$(and=> (partition-uuid partition)
uuid-bytevector)))
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- branch master updated: image: Add partition file-system options support.,
guix-commits <=