aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLudovic Courtès <ludo@gnu.org>2025-04-04 16:08:46 +0200
committerLudovic Courtès <ludo@gnu.org>2025-05-05 14:33:59 +0200
commitacc4215644a8730e69ab1127e897d7eed56db952 (patch)
treeed8a2811ea4077e2d7c562bada3800246ca7617a
parentd4c3b31b86dcdc29dee5ae9f7e3399b388cded7e (diff)
downloadguix-acc4215644a8730e69ab1127e897d7eed56db952.tar.gz
guix-acc4215644a8730e69ab1127e897d7eed56db952.zip
guix home: ‘container’ explicitly mounts $HOME and /run/user/1000.
* guix/scripts/home.scm (spawn-home-container): Pass #:mounts to ‘eval/container’. Change-Id: I1986c1411711cebaf623f97897d91436d8167037
-rw-r--r--guix/scripts/home.scm17
1 files changed, 15 insertions, 2 deletions
diff --git a/guix/scripts/home.scm b/guix/scripts/home.scm
index 55c8edcc01..dd6c2621b7 100644
--- a/guix/scripts/home.scm
+++ b/guix/scripts/home.scm
@@ -3,7 +3,7 @@
;;; Copyright © 2021 Xinglu Chen <public@yoctocell.xyz>
;;; Copyright © 2021 Pierre Langlois <pierre.langlois@gmx.com>
;;; Copyright © 2021 Oleg Pykhalov <go.wigust@gmail.com>
-;;; Copyright © 2022-2023 Ludovic Courtès <ludo@gnu.org>
+;;; Copyright © 2022-2023, 2025 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2022 Arun Isaac <arunisaac@systemreboot.net>
;;; Copyright © 2022 Antero Mejr <antero@mailbox.org>
;;;
@@ -38,7 +38,8 @@
#:use-module ((gnu system) #:select (operating-system?
operating-system-user-services))
#:autoload (gnu system linux-container) (eval/container)
- #:autoload (gnu system file-systems) (file-system-mapping
+ #:autoload (gnu system file-systems) (file-system
+ file-system-mapping
file-system-mapping-source
file-system-mapping->bind-mount
specification->file-system-mapping
@@ -363,6 +364,18 @@ immediately. Return the exit status of the process in the container."
#:namespaces (if network?
(delq 'net %namespaces) ; share host network
%namespaces)
+ #:mounts (list (file-system
+ (device "none")
+ (mount-point
+ (in-vicinity "/run/user" ;for shepherd & co.
+ (number->string uid)))
+ (type "tmpfs")
+ (check? #f))
+ (file-system ;writable home
+ (device "none")
+ (mount-point home-directory)
+ (type "tmpfs")
+ (check? #f)))
#:mappings (append network-mappings mappings)
#:guest-uid uid
#:guest-gid gid))