summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLudovic Courtès <ludo@gnu.org>2014-05-14 23:17:03 +0200
committerLudovic Courtès <ludo@gnu.org>2014-05-14 23:17:03 +0200
commit2717a89a84f9af72f1e0d32d96e192ea088a5124 (patch)
tree7cc384427206d632d585b219c8c2ba19fd31e52c
parent1eeccc2f31c0b0f8c600cb181f19fda1d90551a6 (diff)
downloadpatches-2717a89a84f9af72f1e0d32d96e192ea088a5124.tar
patches-2717a89a84f9af72f1e0d32d96e192ea088a5124.tar.gz
system: Provide declarations for the 'fusectl' and 'binfmt_misc' file systems.
* gnu/system.scm (%fuse-control-file-system, %binary-format-file-system): New variables. * build-aux/hydra/demo-os.scm (file-systems): New field.
-rw-r--r--build-aux/hydra/demo-os.scm5
-rw-r--r--gnu/system.scm26
2 files changed, 30 insertions, 1 deletions
diff --git a/build-aux/hydra/demo-os.scm b/build-aux/hydra/demo-os.scm
index 4116c063f4..fd14bfc7e4 100644
--- a/build-aux/hydra/demo-os.scm
+++ b/build-aux/hydra/demo-os.scm
@@ -43,6 +43,11 @@
(host-name "gnu")
(timezone "Europe/Paris")
(locale "en_US.UTF-8")
+ (file-systems
+ ;; We don't provide a file system for /, but that's OK because the VM build
+ ;; code will automatically declare the / file system for us.
+ (list %fuse-control-file-system
+ %binary-format-file-system))
(users (list (user-account
(name "guest")
(group "wheel")
diff --git a/gnu/system.scm b/gnu/system.scm
index f78df7ce19..9ce94d0230 100644
--- a/gnu/system.scm
+++ b/gnu/system.scm
@@ -64,7 +64,10 @@
file-system-type
file-system-needed-for-boot?
file-system-flags
- file-system-options))
+ file-system-options
+
+ %fuse-control-file-system
+ %binary-format-file-system))
;;; Commentary:
;;;
@@ -126,6 +129,11 @@
(sudoers operating-system-sudoers ; /etc/sudoers contents
(default %sudoers-specification)))
+
+;;;
+;;; File systems.
+;;;
+
;; File system declaration.
(define-record-type* <file-system> file-system
make-file-system
@@ -142,6 +150,22 @@
(check? file-system-check? ; Boolean
(default #t)))
+(define %fuse-control-file-system
+ ;; Control file system for Linux' file systems in user-space (FUSE).
+ (file-system
+ (device "fusectl")
+ (mount-point "/sys/fs/fuse/connections")
+ (type "fusectl")
+ (check? #f)))
+
+(define %binary-format-file-system
+ ;; Support for arbitrary executable binary format.
+ (file-system
+ (device "binfmt_misc")
+ (mount-point "/proc/sys/fs/binfmt_misc")
+ (type "binfmt_misc")
+ (check? #f)))
+
;;;
;;; Derivation.