summaryrefslogtreecommitdiff
path: root/gnu/build
diff options
context:
space:
mode:
authorLudovic Courtès <ludo@gnu.org>2025-08-29 11:13:05 +0200
committerLudovic Courtès <ludo@gnu.org>2025-09-17 11:55:13 +0200
commitc52a9cee53db1e16df0c23ec10e352248e5372f8 (patch)
treef4e642b3cad3d3d69c4bcc1abaa286053d76fad5 /gnu/build
parent6d242496db2827653b1243418bba747288eeba37 (diff)
linux-container: Export ‘%writable-/tmp’ and use it.
Fixes guix/guix#1994. * gnu/build/linux-container.scm (%writable-/tmp): New variable. * guix/scripts/environment.scm (launch-environment/container): Remove ‘tmpfs’ and use it. Adjust ‘file-system’ declaration for /run/user/$UID. * guix/scripts/home.scm (spawn-home-container): Likewise. Reported-by: Romain GARBAGE <romain.garbage@inria.fr> Change-Id: Ia8289fb5386971738caf2ccc1e815daa6ac28459
Diffstat (limited to 'gnu/build')
-rw-r--r--gnu/build/linux-container.scm11
1 files changed, 11 insertions, 0 deletions
diff --git a/gnu/build/linux-container.scm b/gnu/build/linux-container.scm
index 3e5158c2fd7..b6f8563f7d0 100644
--- a/gnu/build/linux-container.scm
+++ b/gnu/build/linux-container.scm
@@ -30,6 +30,7 @@
30 unprivileged-user-namespace-supported? 30 unprivileged-user-namespace-supported?
31 setgroups-supported? 31 setgroups-supported?
32 %namespaces 32 %namespaces
33 %writable-/tmp
33 run-container 34 run-container
34 call-with-container 35 call-with-container
35 container-excursion 36 container-excursion
@@ -387,6 +388,16 @@ if there are no child processes left."
387 (+ 128 (or (status:term-sig status) 388 (+ 128 (or (status:term-sig status)
388 (status:stop-sig status))))) 389 (status:stop-sig status)))))
389 390
391(define %writable-/tmp
392 ;; Writable and volatile /tmp.
393 (file-system
394 (device "none")
395 (mount-point "/tmp")
396 (type "tmpfs")
397 (flags '(no-suid no-dev))
398 (options "mode=755,size=10%")
399 (check? #f)))
400
390(define* (call-with-container mounts thunk #:key (namespaces %namespaces) 401(define* (call-with-container mounts thunk #:key (namespaces %namespaces)
391 (host-uids 1) (guest-uid 0) (guest-gid 0) 402 (host-uids 1) (guest-uid 0) (guest-gid 0)
392 (lock-mounts? #t) 403 (lock-mounts? #t)