M guix/pki.scm => guix/pki.scm +3 -1
@@ 1,5 1,5 @@
;;; GNU Guix --- Functional package management for GNU
-;;; Copyright © 2013 Ludovic Courtès <ludo@gnu.org>
+;;; Copyright © 2013, 2014 Ludovic Courtès <ludo@gnu.org>
;;;
;;; This file is part of GNU Guix.
;;;
@@ 20,6 20,7 @@
#:use-module (guix config)
#:use-module (guix pk-crypto)
#:use-module ((guix utils) #:select (with-atomic-file-output))
+ #:use-module ((guix build utils) #:select (mkdir-p))
#:use-module (ice-9 match)
#:use-module (rnrs io ports)
#:export (%public-key-file
@@ 82,6 83,7 @@ element in KEYS must be a canonical sexp with type 'public-key'."
(let ((public-key (call-with-input-file %public-key-file
(compose string->canonical-sexp
get-string-all))))
+ (mkdir-p (dirname %acl-file))
(with-atomic-file-output %acl-file
(lambda (port)
(display (canonical-sexp->string
M guix/scripts/archive.scm => guix/scripts/archive.scm +3 -1
@@ 1,5 1,5 @@
;;; GNU Guix --- Functional package management for GNU
-;;; Copyright © 2013 Ludovic Courtès <ludo@gnu.org>
+;;; Copyright © 2013, 2014 Ludovic Courtès <ludo@gnu.org>
;;;
;;; This file is part of GNU Guix.
;;;
@@ 19,6 19,7 @@
(define-module (guix scripts archive)
#:use-module (guix config)
#:use-module (guix utils)
+ #:use-module ((guix build utils) #:select (mkdir-p))
#:use-module (guix store)
#:use-module (guix packages)
#:use-module (guix derivations)
@@ 250,6 251,7 @@ this may take time...~%"))
;; Create the following files as #o400.
(umask #o266)
+ (mkdir-p (dirname %public-key-file))
(with-atomic-file-output %public-key-file
(lambda (port)
(display (canonical-sexp->string public) port)))