diff options
author | Ludovic Courtès <ludo@gnu.org> | 2017-02-03 00:20:40 +0100 |
---|---|---|
committer | Ludovic Courtès <ludo@gnu.org> | 2017-02-03 00:23:28 +0100 |
commit | d2a5e6982ddcbe1e5479bda62a72b3a94570855a (patch) | |
tree | afc74823fd2f8b40570593e61d05196ef2df8063 /gnu/system/file-systems.scm | |
parent | 0f31d4f07f8203305c486da76cdeee57ae8a4efc (diff) | |
download | patches-d2a5e6982ddcbe1e5479bda62a72b3a94570855a.tar patches-d2a5e6982ddcbe1e5479bda62a72b3a94570855a.tar.gz |
file-systems: Add 'file-system-mapping->bind-mount'.
* gnu/system/file-systems.scm (file-system-mapping->bind-mount): New
procedure.
* gnu/system/linux-container.scm (mapping->file-system): Remove.
(containerized-operating-system)[mapping->fs]: Use
'file-system-mapping->bind-mount' instead of 'mapping->file-system'.
* guix/scripts/environment.scm (launch-environment/container): Likewise.
Diffstat (limited to 'gnu/system/file-systems.scm')
-rw-r--r-- | gnu/system/file-systems.scm | 17 |
1 files changed, 17 insertions, 0 deletions
diff --git a/gnu/system/file-systems.scm b/gnu/system/file-systems.scm index fa56853fd1..b2721f2389 100644 --- a/gnu/system/file-systems.scm +++ b/gnu/system/file-systems.scm @@ -63,6 +63,8 @@ file-system-mapping-target file-system-mapping-writable? + file-system-mapping->bind-mount + %store-mapping)) ;;; Commentary: @@ -352,6 +354,21 @@ TARGET in the other system." (writable? file-system-mapping-writable? ;Boolean (default #f))) +(define (file-system-mapping->bind-mount mapping) + "Return a file system that realizes MAPPING, a <file-system-mapping>, using +a bind mount." + (match mapping + (($ <file-system-mapping> source target writable?) + (file-system + (mount-point target) + (device source) + (type "none") + (flags (if writable? + '(bind-mount) + '(bind-mount read-only))) + (check? #f) + (create-mount-point? #t))))) + (define %store-mapping ;; Mapping of the host's store into the guest. (file-system-mapping |