Message ID | 20190419140427.15183-1-mail@cbaines.net |
---|---|
State | Accepted |
Headers | show |
Series | [bug#34638,v2,1/4] utils: Add #:base-directory to call-with-temporary-directory. | expand |
Context | Check | Description |
---|---|---|
cbaines/applying patch | success | Successfully applied |
Hello, Christopher Baines <mail@cbaines.net> skribis: > This allows more easily creating temporary directories within a specific > directory. This is motivated by using this in inferior-eval-with-store. > > * guix/utils.scm (call-with-temporary-directory): Add optional keyword > argument, base-directory. LGTM.
diff --git a/guix/utils.scm b/guix/utils.scm index ed1a418cca..abeb156f40 100644 --- a/guix/utils.scm +++ b/guix/utils.scm @@ -620,10 +620,10 @@ call." (false-if-exception (close out)) (false-if-exception (delete-file template)))))) -(define (call-with-temporary-directory proc) +(define* (call-with-temporary-directory proc #:key base-directory) "Call PROC with a name of a temporary directory; close the directory and delete it when leaving the dynamic extent of this call." - (let* ((directory (or (getenv "TMPDIR") "/tmp")) + (let* ((directory (or base-directory (getenv "TMPDIR") "/tmp")) (template (string-append directory "/guix-directory.XXXXXX")) (tmp-dir (mkdtemp! template))) (dynamic-wind