Rename 'guix substitute-binary' to 'guix substitute'.
* guix/scripts/substitute-binary.scm: Rename to... * guix/scripts/substitute.scm: ... this. Adjust module name, entry point, comments, and help string accordingly. * nix/scripts/substitute-binary.in: Rename to... * nix/scripts/substitute.in: ... this. * pre-inst-env.in (NIX_SUBSTITUTERS): Adjust accordingly. * tests/substitute-binary.scm: Rename to... * tests/substitute.scm: ... this. Adjust references to (guix scripts substitute) accordingly. * guix/ui.scm (show-guix-help)[internal?]: Change "substitute-binary" to "substitute". * Makefile.am (MODULES, SCM_TESTS): Adjust to file renames. * daemon.am (nodist_pkglibexec_SCRIPTS): Likewise. * config-daemon.ac: Likewise. * guix/tests.scm (call-with-derivation-narinfo): Adjust comments and docstring.master
parent
c3a450fb49
commit
2c74fde00e
|
@ -96,7 +96,7 @@ stamp-h[0-9]
|
||||||
/doc/guix.tp
|
/doc/guix.tp
|
||||||
/doc/guix.vr
|
/doc/guix.vr
|
||||||
/doc/guix.vrs
|
/doc/guix.vrs
|
||||||
/nix/scripts/substitute-binary
|
/nix/scripts/substitute
|
||||||
/doc/images/bootstrap-graph.png
|
/doc/images/bootstrap-graph.png
|
||||||
/doc/images/bootstrap-graph.eps
|
/doc/images/bootstrap-graph.eps
|
||||||
/guix-register
|
/guix-register
|
||||||
|
|
|
@ -96,7 +96,7 @@ MODULES = \
|
||||||
guix/scripts/gc.scm \
|
guix/scripts/gc.scm \
|
||||||
guix/scripts/hash.scm \
|
guix/scripts/hash.scm \
|
||||||
guix/scripts/pull.scm \
|
guix/scripts/pull.scm \
|
||||||
guix/scripts/substitute-binary.scm \
|
guix/scripts/substitute.scm \
|
||||||
guix/scripts/authenticate.scm \
|
guix/scripts/authenticate.scm \
|
||||||
guix/scripts/refresh.scm \
|
guix/scripts/refresh.scm \
|
||||||
guix/scripts/system.scm \
|
guix/scripts/system.scm \
|
||||||
|
@ -162,7 +162,7 @@ SCM_TESTS = \
|
||||||
tests/pk-crypto.scm \
|
tests/pk-crypto.scm \
|
||||||
tests/pki.scm \
|
tests/pki.scm \
|
||||||
tests/sets.scm \
|
tests/sets.scm \
|
||||||
tests/substitute-binary.scm \
|
tests/substitute.scm \
|
||||||
tests/builders.scm \
|
tests/builders.scm \
|
||||||
tests/derivations.scm \
|
tests/derivations.scm \
|
||||||
tests/ui.scm \
|
tests/ui.scm \
|
||||||
|
|
|
@ -133,8 +133,8 @@ if test "x$guix_build_daemon" = "xyes"; then
|
||||||
|
|
||||||
AC_CONFIG_FILES([nix/scripts/list-runtime-roots],
|
AC_CONFIG_FILES([nix/scripts/list-runtime-roots],
|
||||||
[chmod +x nix/scripts/list-runtime-roots])
|
[chmod +x nix/scripts/list-runtime-roots])
|
||||||
AC_CONFIG_FILES([nix/scripts/substitute-binary],
|
AC_CONFIG_FILES([nix/scripts/substitute],
|
||||||
[chmod +x nix/scripts/substitute-binary])
|
[chmod +x nix/scripts/substitute])
|
||||||
AC_CONFIG_FILES([nix/scripts/guix-authenticate],
|
AC_CONFIG_FILES([nix/scripts/guix-authenticate],
|
||||||
[chmod +x nix/scripts/guix-authenticate])
|
[chmod +x nix/scripts/guix-authenticate])
|
||||||
AC_CONFIG_FILES([nix/scripts/offload],
|
AC_CONFIG_FILES([nix/scripts/offload],
|
||||||
|
|
|
@ -165,7 +165,7 @@ nix/libstore/schema.sql.hh: nix/libstore/schema.sql
|
||||||
|
|
||||||
nodist_pkglibexec_SCRIPTS = \
|
nodist_pkglibexec_SCRIPTS = \
|
||||||
nix/scripts/list-runtime-roots \
|
nix/scripts/list-runtime-roots \
|
||||||
nix/scripts/substitute-binary
|
nix/scripts/substitute
|
||||||
|
|
||||||
if BUILD_DAEMON_OFFLOAD
|
if BUILD_DAEMON_OFFLOAD
|
||||||
|
|
||||||
|
|
|
@ -17,7 +17,7 @@
|
||||||
;;; You should have received a copy of the GNU General Public License
|
;;; You should have received a copy of the GNU General Public License
|
||||||
;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>.
|
;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>.
|
||||||
|
|
||||||
(define-module (guix scripts substitute-binary)
|
(define-module (guix scripts substitute)
|
||||||
#:use-module (guix ui)
|
#:use-module (guix ui)
|
||||||
#:use-module (guix store)
|
#:use-module (guix store)
|
||||||
#:use-module (guix utils)
|
#:use-module (guix utils)
|
||||||
|
@ -53,7 +53,7 @@
|
||||||
#:export (narinfo-signature->canonical-sexp
|
#:export (narinfo-signature->canonical-sexp
|
||||||
read-narinfo
|
read-narinfo
|
||||||
write-narinfo
|
write-narinfo
|
||||||
guix-substitute-binary))
|
guix-substitute))
|
||||||
|
|
||||||
;;; Comment:
|
;;; Comment:
|
||||||
;;;
|
;;;
|
||||||
|
@ -675,7 +675,7 @@ PORT. REPORT-PROGRESS is a two-argument procedure such as that returned by
|
||||||
;;;
|
;;;
|
||||||
|
|
||||||
(define (show-help)
|
(define (show-help)
|
||||||
(display (_ "Usage: guix substitute-binary [OPTION]...
|
(display (_ "Usage: guix substitute [OPTION]...
|
||||||
Internal tool to substitute a pre-built binary to a local build.\n"))
|
Internal tool to substitute a pre-built binary to a local build.\n"))
|
||||||
(display (_ "
|
(display (_ "
|
||||||
--query report on the availability of substitutes for the
|
--query report on the availability of substitutes for the
|
||||||
|
@ -761,7 +761,7 @@ found."
|
||||||
;; daemon.
|
;; daemon.
|
||||||
"http://hydra.gnu.org")))
|
"http://hydra.gnu.org")))
|
||||||
|
|
||||||
(define (guix-substitute-binary . args)
|
(define (guix-substitute . args)
|
||||||
"Implement the build daemon's substituter protocol."
|
"Implement the build daemon's substituter protocol."
|
||||||
(mkdir-p %narinfo-cache-directory)
|
(mkdir-p %narinfo-cache-directory)
|
||||||
(maybe-remove-expired-cached-narinfo)
|
(maybe-remove-expired-cached-narinfo)
|
||||||
|
@ -882,7 +882,7 @@ substituter disabled~%")
|
||||||
|
|
||||||
(every (compose zero? cdr waitpid) pids))))
|
(every (compose zero? cdr waitpid) pids))))
|
||||||
(("--version")
|
(("--version")
|
||||||
(show-version-and-exit "guix substitute-binary"))
|
(show-version-and-exit "guix substitute"))
|
||||||
(("--help")
|
(("--help")
|
||||||
(show-help))
|
(show-help))
|
||||||
(opts
|
(opts
|
||||||
|
@ -893,4 +893,4 @@ substituter disabled~%")
|
||||||
;;; eval: (put 'with-timeout 'scheme-indent-function 1)
|
;;; eval: (put 'with-timeout 'scheme-indent-function 1)
|
||||||
;;; End:
|
;;; End:
|
||||||
|
|
||||||
;;; substitute-binary.scm ends here
|
;;; substitute.scm ends here
|
|
@ -126,7 +126,7 @@ Deriver: ~a~%"
|
||||||
(define* (call-with-derivation-narinfo drv thunk
|
(define* (call-with-derivation-narinfo drv thunk
|
||||||
#:key (sha256 (make-bytevector 32 0)))
|
#:key (sha256 (make-bytevector 32 0)))
|
||||||
"Call THUNK in a context where fake substituter data, as read by 'guix
|
"Call THUNK in a context where fake substituter data, as read by 'guix
|
||||||
substitute-binary', has been installed for DRV. SHA256 is the hash of the
|
substitute', has been installed for DRV. SHA256 is the hash of the
|
||||||
expected output of DRV."
|
expected output of DRV."
|
||||||
(let* ((output (derivation->output-path drv))
|
(let* ((output (derivation->output-path drv))
|
||||||
(dir (%substitute-directory))
|
(dir (%substitute-directory))
|
||||||
|
@ -178,7 +178,7 @@ CONTENTS."
|
||||||
(lambda ()
|
(lambda ()
|
||||||
(let ((hash (call-with-input-file (string-append dir "/example.nar")
|
(let ((hash (call-with-input-file (string-append dir "/example.nar")
|
||||||
port-sha256)))
|
port-sha256)))
|
||||||
;; Create fake substituter data, to be read by `substitute-binary'.
|
;; Create fake substituter data, to be read by 'guix substitute'.
|
||||||
(call-with-derivation-narinfo drv
|
(call-with-derivation-narinfo drv
|
||||||
thunk
|
thunk
|
||||||
#:sha256 (or sha256 hash))))
|
#:sha256 (or sha256 hash))))
|
||||||
|
|
|
@ -815,7 +815,7 @@ parameter of 'args-fold'."
|
||||||
|
|
||||||
(define (show-guix-help)
|
(define (show-guix-help)
|
||||||
(define (internal? command)
|
(define (internal? command)
|
||||||
(member command '("substitute-binary" "authenticate" "offload")))
|
(member command '("substitute" "authenticate" "offload")))
|
||||||
|
|
||||||
(format #t (_ "Usage: guix COMMAND ARGS...
|
(format #t (_ "Usage: guix COMMAND ARGS...
|
||||||
Run COMMAND with ARGS.\n"))
|
Run COMMAND with ARGS.\n"))
|
||||||
|
|
|
@ -1,11 +0,0 @@
|
||||||
#!@SHELL@
|
|
||||||
# A shorthand for "guix substitute-binary", for use by the daemon.
|
|
||||||
|
|
||||||
if test "x$GUIX_UNINSTALLED" = "x"
|
|
||||||
then
|
|
||||||
prefix="@prefix@"
|
|
||||||
exec_prefix="@exec_prefix@"
|
|
||||||
exec "@bindir@/guix" substitute-binary "$@"
|
|
||||||
else
|
|
||||||
exec guix substitute-binary "$@"
|
|
||||||
fi
|
|
|
@ -0,0 +1,11 @@
|
||||||
|
#!@SHELL@
|
||||||
|
# A shorthand for "guix substitute", for use by the daemon.
|
||||||
|
|
||||||
|
if test "x$GUIX_UNINSTALLED" = "x"
|
||||||
|
then
|
||||||
|
prefix="@prefix@"
|
||||||
|
exec_prefix="@exec_prefix@"
|
||||||
|
exec "@bindir@/guix" substitute "$@"
|
||||||
|
else
|
||||||
|
exec guix substitute "$@"
|
||||||
|
fi
|
|
@ -44,7 +44,7 @@ export PATH
|
||||||
# Daemon helpers.
|
# Daemon helpers.
|
||||||
|
|
||||||
NIX_ROOT_FINDER="$abs_top_builddir/nix/scripts/list-runtime-roots"
|
NIX_ROOT_FINDER="$abs_top_builddir/nix/scripts/list-runtime-roots"
|
||||||
NIX_SUBSTITUTERS="$abs_top_builddir/nix/scripts/substitute-binary"
|
NIX_SUBSTITUTERS="$abs_top_builddir/nix/scripts/substitute"
|
||||||
NIX_BUILD_HOOK="$abs_top_builddir/nix/scripts/offload"
|
NIX_BUILD_HOOK="$abs_top_builddir/nix/scripts/offload"
|
||||||
NIX_LIBEXEC_DIR="@abs_top_builddir@/nix/scripts" # for 'guix-authenticate'
|
NIX_LIBEXEC_DIR="@abs_top_builddir@/nix/scripts" # for 'guix-authenticate'
|
||||||
|
|
||||||
|
|
|
@ -367,7 +367,7 @@
|
||||||
(with-store s
|
(with-store s
|
||||||
(let* ((d (package-derivation s %bootstrap-guile (%current-system)))
|
(let* ((d (package-derivation s %bootstrap-guile (%current-system)))
|
||||||
(o (derivation->output-path d)))
|
(o (derivation->output-path d)))
|
||||||
;; Create fake substituter data, to be read by `substitute-binary'.
|
;; Create fake substituter data, to be read by 'guix substitute'.
|
||||||
(with-derivation-narinfo d
|
(with-derivation-narinfo d
|
||||||
;; Remove entry from the local cache.
|
;; Remove entry from the local cache.
|
||||||
(false-if-exception
|
(false-if-exception
|
||||||
|
@ -375,7 +375,7 @@
|
||||||
"/guix/substitute-binary/"
|
"/guix/substitute-binary/"
|
||||||
(store-path-hash-part o))))
|
(store-path-hash-part o))))
|
||||||
|
|
||||||
;; Make sure `substitute-binary' correctly communicates the above
|
;; Make sure 'guix substitute' correctly communicates the above
|
||||||
;; data.
|
;; data.
|
||||||
(set-build-options s #:use-substitutes? #t)
|
(set-build-options s #:use-substitutes? #t)
|
||||||
(and (has-substitutes? s o)
|
(and (has-substitutes? s o)
|
||||||
|
@ -439,7 +439,7 @@
|
||||||
(with-derivation-substitute d c
|
(with-derivation-substitute d c
|
||||||
(sha256 => (make-bytevector 32 0)) ;select a hash that doesn't match C
|
(sha256 => (make-bytevector 32 0)) ;select a hash that doesn't match C
|
||||||
|
|
||||||
;; Make sure we use `substitute-binary'.
|
;; Make sure we use 'guix substitute'.
|
||||||
(set-build-options s
|
(set-build-options s
|
||||||
#:use-substitutes? #t
|
#:use-substitutes? #t
|
||||||
#:fallback? #f)
|
#:fallback? #f)
|
||||||
|
@ -464,9 +464,9 @@
|
||||||
#:guile-for-build
|
#:guile-for-build
|
||||||
(package-derivation s %bootstrap-guile (%current-system))))
|
(package-derivation s %bootstrap-guile (%current-system))))
|
||||||
(o (derivation->output-path d)))
|
(o (derivation->output-path d)))
|
||||||
;; Create fake substituter data, to be read by `substitute-binary'.
|
;; Create fake substituter data, to be read by 'guix substitute'.
|
||||||
(with-derivation-narinfo d
|
(with-derivation-narinfo d
|
||||||
;; Make sure we use `substitute-binary'.
|
;; Make sure we use 'guix substitute'.
|
||||||
(set-build-options s #:use-substitutes? #t)
|
(set-build-options s #:use-substitutes? #t)
|
||||||
(and (has-substitutes? s o)
|
(and (has-substitutes? s o)
|
||||||
(guard (c ((nix-protocol-error? c)
|
(guard (c ((nix-protocol-error? c)
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
;;; GNU Guix --- Functional package management for GNU
|
;;; GNU Guix --- Functional package management for GNU
|
||||||
;;; Copyright © 2014 Nikita Karetnikov <nikita@karetnikov.org>
|
;;; Copyright © 2014 Nikita Karetnikov <nikita@karetnikov.org>
|
||||||
;;; Copyright © 2014 Ludovic Courtès <ludo@gnu.org>
|
;;; Copyright © 2014, 2015 Ludovic Courtès <ludo@gnu.org>
|
||||||
;;;
|
;;;
|
||||||
;;; This file is part of GNU Guix.
|
;;; This file is part of GNU Guix.
|
||||||
;;;
|
;;;
|
||||||
|
@ -17,8 +17,8 @@
|
||||||
;;; You should have received a copy of the GNU General Public License
|
;;; You should have received a copy of the GNU General Public License
|
||||||
;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>.
|
;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>.
|
||||||
|
|
||||||
(define-module (test-substitute-binary)
|
(define-module (test-substitute)
|
||||||
#:use-module (guix scripts substitute-binary)
|
#:use-module (guix scripts substitute)
|
||||||
#:use-module (guix base64)
|
#:use-module (guix base64)
|
||||||
#:use-module (guix hash)
|
#:use-module (guix hash)
|
||||||
#:use-module (guix serialization)
|
#:use-module (guix serialization)
|
||||||
|
@ -95,7 +95,7 @@ version identifier.."
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
(test-begin "substitute-binary")
|
(test-begin "substitute")
|
||||||
|
|
||||||
(test-quit "not a number"
|
(test-quit "not a number"
|
||||||
"signature version"
|
"signature version"
|
||||||
|
@ -156,7 +156,7 @@ a file for NARINFO."
|
||||||
(cute write-file
|
(cute write-file
|
||||||
(string-append narinfo-directory "/example.out") <>))
|
(string-append narinfo-directory "/example.out") <>))
|
||||||
|
|
||||||
(set! (@@ (guix scripts substitute-binary)
|
(set! (@@ (guix scripts substitute)
|
||||||
%allow-unauthenticated-substitutes?)
|
%allow-unauthenticated-substitutes?)
|
||||||
#f))
|
#f))
|
||||||
thunk
|
thunk
|
||||||
|
@ -166,8 +166,8 @@ a file for NARINFO."
|
||||||
(define-syntax-rule (with-narinfo narinfo body ...)
|
(define-syntax-rule (with-narinfo narinfo body ...)
|
||||||
(call-with-narinfo narinfo (lambda () body ...)))
|
(call-with-narinfo narinfo (lambda () body ...)))
|
||||||
|
|
||||||
;; Transmit these options to 'guix substitute-binary'.
|
;; Transmit these options to 'guix substitute'.
|
||||||
(set! (@@ (guix scripts substitute-binary) %cache-url)
|
(set! (@@ (guix scripts substitute) %cache-url)
|
||||||
(getenv "GUIX_BINARY_SUBSTITUTE_URL"))
|
(getenv "GUIX_BINARY_SUBSTITUTE_URL"))
|
||||||
|
|
||||||
(test-equal "query narinfo without signature"
|
(test-equal "query narinfo without signature"
|
||||||
|
@ -180,7 +180,7 @@ a file for NARINFO."
|
||||||
(with-input-from-string (string-append "have " (%store-prefix)
|
(with-input-from-string (string-append "have " (%store-prefix)
|
||||||
"/aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa-foo")
|
"/aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa-foo")
|
||||||
(lambda ()
|
(lambda ()
|
||||||
(guix-substitute-binary "--query"))))))))
|
(guix-substitute "--query"))))))))
|
||||||
|
|
||||||
(test-equal "query narinfo with invalid hash"
|
(test-equal "query narinfo with invalid hash"
|
||||||
;; The hash in the signature differs from the hash of %NARINFO.
|
;; The hash in the signature differs from the hash of %NARINFO.
|
||||||
|
@ -195,7 +195,7 @@ a file for NARINFO."
|
||||||
(with-input-from-string (string-append "have " (%store-prefix)
|
(with-input-from-string (string-append "have " (%store-prefix)
|
||||||
"/aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa-foo")
|
"/aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa-foo")
|
||||||
(lambda ()
|
(lambda ()
|
||||||
(guix-substitute-binary "--query"))))))))
|
(guix-substitute "--query"))))))))
|
||||||
|
|
||||||
(test-equal "query narinfo signed with authorized key"
|
(test-equal "query narinfo signed with authorized key"
|
||||||
(string-append (%store-prefix) "/aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa-foo")
|
(string-append (%store-prefix) "/aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa-foo")
|
||||||
|
@ -209,7 +209,7 @@ a file for NARINFO."
|
||||||
(with-input-from-string (string-append "have " (%store-prefix)
|
(with-input-from-string (string-append "have " (%store-prefix)
|
||||||
"/aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa-foo")
|
"/aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa-foo")
|
||||||
(lambda ()
|
(lambda ()
|
||||||
(guix-substitute-binary "--query"))))))))
|
(guix-substitute "--query"))))))))
|
||||||
|
|
||||||
(test-equal "query narinfo signed with unauthorized key"
|
(test-equal "query narinfo signed with unauthorized key"
|
||||||
"" ; not substitutable
|
"" ; not substitutable
|
||||||
|
@ -225,15 +225,15 @@ a file for NARINFO."
|
||||||
(with-input-from-string (string-append "have " (%store-prefix)
|
(with-input-from-string (string-append "have " (%store-prefix)
|
||||||
"/aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa-foo")
|
"/aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa-foo")
|
||||||
(lambda ()
|
(lambda ()
|
||||||
(guix-substitute-binary "--query"))))))))
|
(guix-substitute "--query"))))))))
|
||||||
|
|
||||||
(test-quit "substitute, no signature"
|
(test-quit "substitute, no signature"
|
||||||
"lacks a signature"
|
"lacks a signature"
|
||||||
(with-narinfo %narinfo
|
(with-narinfo %narinfo
|
||||||
(guix-substitute-binary "--substitute"
|
(guix-substitute "--substitute"
|
||||||
(string-append (%store-prefix)
|
(string-append (%store-prefix)
|
||||||
"/aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa-foo")
|
"/aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa-foo")
|
||||||
"foo")))
|
"foo")))
|
||||||
|
|
||||||
(test-quit "substitute, invalid hash"
|
(test-quit "substitute, invalid hash"
|
||||||
"hash"
|
"hash"
|
||||||
|
@ -241,10 +241,10 @@ a file for NARINFO."
|
||||||
(with-narinfo (string-append %narinfo "Signature: "
|
(with-narinfo (string-append %narinfo "Signature: "
|
||||||
(signature-field "different body")
|
(signature-field "different body")
|
||||||
"\n")
|
"\n")
|
||||||
(guix-substitute-binary "--substitute"
|
(guix-substitute "--substitute"
|
||||||
(string-append (%store-prefix)
|
(string-append (%store-prefix)
|
||||||
"/aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa-foo")
|
"/aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa-foo")
|
||||||
"foo")))
|
"foo")))
|
||||||
|
|
||||||
(test-quit "substitute, unauthorized key"
|
(test-quit "substitute, unauthorized key"
|
||||||
"unauthorized"
|
"unauthorized"
|
||||||
|
@ -253,10 +253,10 @@ a file for NARINFO."
|
||||||
%narinfo
|
%narinfo
|
||||||
#:public-key %wrong-public-key)
|
#:public-key %wrong-public-key)
|
||||||
"\n")
|
"\n")
|
||||||
(guix-substitute-binary "--substitute"
|
(guix-substitute "--substitute"
|
||||||
(string-append (%store-prefix)
|
(string-append (%store-prefix)
|
||||||
"/aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa-foo")
|
"/aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa-foo")
|
||||||
"foo")))
|
"foo")))
|
||||||
|
|
||||||
(test-equal "substitute, authorized key"
|
(test-equal "substitute, authorized key"
|
||||||
"Substitutable data."
|
"Substitutable data."
|
||||||
|
@ -265,15 +265,15 @@ a file for NARINFO."
|
||||||
(dynamic-wind
|
(dynamic-wind
|
||||||
(const #t)
|
(const #t)
|
||||||
(lambda ()
|
(lambda ()
|
||||||
(guix-substitute-binary "--substitute"
|
(guix-substitute "--substitute"
|
||||||
(string-append (%store-prefix)
|
(string-append (%store-prefix)
|
||||||
"/aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa-foo")
|
"/aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa-foo")
|
||||||
"substitute-retrieved")
|
"substitute-retrieved")
|
||||||
(call-with-input-file "substitute-retrieved" get-string-all))
|
(call-with-input-file "substitute-retrieved" get-string-all))
|
||||||
(lambda ()
|
(lambda ()
|
||||||
(false-if-exception (delete-file "substitute-retrieved"))))))
|
(false-if-exception (delete-file "substitute-retrieved"))))))
|
||||||
|
|
||||||
(test-end "substitute-binary")
|
(test-end "substitute")
|
||||||
|
|
||||||
|
|
||||||
(exit (= (test-runner-fail-count (test-runner-current)) 0))
|
(exit (= (test-runner-fail-count (test-runner-current)) 0))
|
Reference in New Issue