diff options
author | Mathieu Othacehe <othacehe@gnu.org> | 2020-07-31 13:43:36 +0200 |
---|---|---|
committer | Mathieu Othacehe <othacehe@gnu.org> | 2020-07-31 13:43:36 +0200 |
commit | f94835a917cf78675eb597fecd222b6c6d1fb1ae (patch) | |
tree | b08b5d0acff8ff09071b827a17b436669ef9520c | |
parent | 7c27bd115b14afd142da7684cc349369965f9eab (diff) | |
download | guix-f94835a917cf78675eb597fecd222b6c6d1fb1ae.tar.gz guix-f94835a917cf78675eb597fecd222b6c6d1fb1ae.zip |
file-system: Add efivarfs support.
Tools such as efibootmgr rely on the deprecated /sys/firmware/efi/vars API as
well as on the new /sys/firmware/efi/efivars API. The latter needs to be
mounted.
Reported by Keyhenge here:
https://lists.gnu.org/archive/html/bug-guix/2020-04/msg00274.html
Here is the efivarfs documentation:
https://www.kernel.org/doc/Documentation/filesystems/efivarfs.txt.
* gnu/system/file-systems.scm (%efivars-file-system): New exported variable,
(%base-file-systems): add it.
* gnu/system/install.scm (%efivars-file-system): Add it.
Signed-off-by: Mathieu Othacehe <othacehe@gnu.org>
-rw-r--r-- | gnu/system/file-systems.scm | 12 | ||||
-rw-r--r-- | gnu/system/install.scm | 1 |
2 files changed, 13 insertions, 0 deletions
diff --git a/gnu/system/file-systems.scm b/gnu/system/file-systems.scm index 9c5cbc9b4e..a62cf902bf 100644 --- a/gnu/system/file-systems.scm +++ b/gnu/system/file-systems.scm @@ -70,6 +70,7 @@ %fuse-control-file-system %binary-format-file-system %debug-file-system + %efivars-file-system %shared-memory-file-system %pseudo-terminal-file-system %tty-gid @@ -382,6 +383,16 @@ TARGET in the other system." (check? #f) (create-mount-point? #t))) +(define %efivars-file-system + ;; Support for EFI variables file system. + (file-system + (device "efivarfs") + (mount-point "/sys/firmware/efi/efivars") + (type "efivarfs") + (mount-may-fail? #t) + (needed-for-boot? #f) + (check? #f))) + (define %tty-gid ;; ID of the 'tty' group. Allocate it statically to make it easy to refer ;; to it from here and from the 'tty' group definitions. @@ -483,6 +494,7 @@ TARGET in the other system." (list %pseudo-terminal-file-system %debug-file-system %shared-memory-file-system + %efivars-file-system %immutable-store)) ;; File systems for Linux containers differ from %base-file-systems in that diff --git a/gnu/system/install.scm b/gnu/system/install.scm index d0ff2e7c52..a87c2f4207 100644 --- a/gnu/system/install.scm +++ b/gnu/system/install.scm @@ -497,6 +497,7 @@ Access documentation at any time by pressing Alt-F2.\x1b[0m ;; elogind's cgroup file systems. (list %pseudo-terminal-file-system %shared-memory-file-system + %efivars-file-system %immutable-store))) (users (list (user-account |