From b191f0a6c50f2a7d47037ef8509d0351f5a2646e Mon Sep 17 00:00:00 2001 From: Leo Famulari Date: Thu, 23 Feb 2017 12:08:02 -0500 Subject: [PATCH] services: guix: Support building in a directory besides '/tmp'. * gnu/services/base.scm ()[tmpdir]: New field. (guix-shepherd-service): Use 'tmpdir' in #:environment-variables. * doc/guix.texi (Base Services)[guix-configuration]: Document it. --- doc/guix.texi | 3 +++ gnu/services/base.scm | 7 ++++++- 2 files changed, 9 insertions(+), 1 deletion(-) diff --git a/doc/guix.texi b/doc/guix.texi index 19a31c659a..be11096a43 100644 --- a/doc/guix.texi +++ b/doc/guix.texi @@ -8615,6 +8615,9 @@ The lsof package to use. The HTTP proxy used for downloading fixed-output derivations and substitutes. +@item @code{tmpdir} (default: @code{#f}) +A directory path where the @command{guix-daemon} will perform builds. + @end table @end deftp diff --git a/gnu/services/base.scm b/gnu/services/base.scm index 0fb7bd721c..7ae815d4b5 100644 --- a/gnu/services/base.scm +++ b/gnu/services/base.scm @@ -1116,6 +1116,8 @@ failed to register hydra.gnu.org public key: ~a~%" status)))))))) (lsof guix-configuration-lsof ; (default lsof)) (http-proxy guix-http-proxy ;string | #f + (default #f)) + (tmpdir guix-tmpdir ;string | #f (default #f))) (define %default-guix-configuration @@ -1127,7 +1129,7 @@ failed to register hydra.gnu.org public key: ~a~%" status)))))))) (($ guix build-group build-accounts authorize-key? keys use-substitutes? substitute-urls extra-options - log-file lsof http-proxy) + log-file lsof http-proxy tmpdir) (list (shepherd-service (documentation "Run the Guix daemon.") (provision '(guix-daemon)) @@ -1147,6 +1149,9 @@ failed to register hydra.gnu.org public key: ~a~%" status)))))))) (list (string-append "PATH=" #$lsof "/bin") #$@(if http-proxy (list (string-append "http_proxy=" http-proxy)) + '()) + #$@(if tmpdir + (list (string-append "TMPDIR=" tmpdir)) '())) #:log-file #$log-file))