summary refs log tree commit diff
diff options
context:
space:
mode:
-rw-r--r--guix/nar.scm4
1 files changed, 3 insertions, 1 deletions
diff --git a/guix/nar.scm b/guix/nar.scm
index 5b602df90b..ce69163a8a 100644
--- a/guix/nar.scm
+++ b/guix/nar.scm
@@ -339,8 +339,10 @@ protected from garbage collection."
   (let* ((template (string-append (%store-prefix) "/guix-XXXXXX"))
          (port     (mkstemp! template)))
     (close-port port)
+
+    ;; Make sure TEMPLATE is not collected while we populate it.
     (with-store store
-      (add-temp-root store template))
+      (add-indirect-root store template))
 
     ;; There's a small window during which the GC could delete the file.  Try
     ;; again if that happens.