From mboxrd@z Thu Jan 1 00:00:00 1970 From: Quiliro Subject: bug#27034: guix system init error Date: Tue, 23 May 2017 01:03:52 -0500 Message-ID: <20170523010352.7384555d@riseup.net> References: <20170522204919.3fba3de2@riseup.net> <20170523043554.GA12886@jasmine> Mime-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: quoted-printable Return-path: Received: from eggs.gnu.org ([2001:4830:134:3::10]:52267) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1dD2uu-0006Uc-5T for bug-guix@gnu.org; Tue, 23 May 2017 02:04:09 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1dD2uN-0005xY-Aa for bug-guix@gnu.org; Tue, 23 May 2017 02:03:34 -0400 Received: from debbugs.gnu.org ([208.118.235.43]:59251) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1dD2uM-0005wv-Ml for bug-guix@gnu.org; Tue, 23 May 2017 02:03:03 -0400 Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1dD2uM-00065g-7c for bug-guix@gnu.org; Tue, 23 May 2017 02:03:02 -0400 Sender: "Debbugs-submit" Resent-Message-ID: In-Reply-To: <20170523043554.GA12886@jasmine> List-Id: Bug reports for GNU Guix List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: bug-guix-bounces+gcggb-bug-guix=m.gmane.org@gnu.org Sender: "bug-Guix" Cc: 27034@debbugs.gnu.org El Tue, 23 May 2017 00:35:54 -0400 Leo Famulari escribi=C3=B3: > On Mon, May 22, 2017 at 08:49:19PM -0500, Quiliro wrote: > > On 0.13 and on 0.12 I think I have the same error. This is the text fro= m 0.13: > >=20 > > root@gnu ~# guix system init /mnt/etc/bare-bones.scm /mnt >=20 > [...] >=20 > > FAIL: tests/store.scm >=20 > [...] >=20 > > =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D > > See ./test-suite.log > > Please report to bug-guix@gnu.org > > =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D >=20 > Thanks for your report! >=20 > Please re-run the failing command with --keep-failed. The > 'test-suite.log' will be in the directory that Guix tells you the failed > build is in. >=20 > Then, send us that log. guix system init /mnt/etc/bare-bones.scm /mnt --keep-failed Since I get these messages: See ./test-suite.log Please report to bug-guix@gnu.org [...] note: keeping build directory `/tmp/guix-build-guix-0.13.0.drv-0' [...] guix system: error: build failed: build of `/gnu/store/zprh9lkkxawavl72asmi= 2nn6ml95dbcc-guix-0.13.0.drv' failed here is /tmp/guix-build-guix-0.13.0.drv-0/source/test-suite.log http://sprunge.us/hDZW Below I copy the the contents of the link. =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D GNU Guix : ./test-suite.log =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D # TOTAL: 708 # PASS: 674 # SKIP: 32 # XFAIL: 0 # FAIL: 2 # XPASS: 0 # ERROR: 0 .. contents:: :depth: 2 SKIP: tests/base32 =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D sh: nix-hash: command not found test-name: bytevector->base32-string location: /tmp/guix-build-guix-0.13.0.drv-0/source/tests/base32.scm:48 source: + (test-assert + "bytevector->base32-string" + (fold (lambda (bv expected result) + (and result + (string=3D? + (bytevector->base32-string bv) + expected))) + #t + (map string->utf8 + '("" "f" "fo" "foo" "foob" "fooba" "foobar")) + '("" + "my" + "mzxq" + "mzxw6" + "mzxw6yq" + "mzxw6ytb" + "mzxw6ytboi"))) actual-value: #t result: PASS test-name: base32-string->bytevector location: /tmp/guix-build-guix-0.13.0.drv-0/source/tests/base32.scm:65 source: + (test-assert + "base32-string->bytevector" + (every (lambda (bv) + (equal? + (base32-string->bytevector + (bytevector->base32-string bv)) + bv)) + (map string->utf8 + '("" "f" "fo" "foo" "foob" "fooba" "foobar")))) actual-value: #t result: PASS test-name: nix-base32-string->bytevector location: /tmp/guix-build-guix-0.13.0.drv-0/source/tests/base32.scm:73 source: + (test-assert + "nix-base32-string->bytevector" + (every (lambda (bv) + (equal? + (nix-base32-string->bytevector + (bytevector->nix-base32-string bv)) + bv)) + (map string->utf8 + '("" "f" "fo" "foo" "foob" "fooba" "foobar")))) actual-value: #t result: PASS test-name: &invalid-base32-character location: /tmp/guix-build-guix-0.13.0.drv-0/source/tests/base32.scm:81 source: + (test-equal + "&invalid-base32-character" + #\e + (guard (c ((invalid-base32-character? c) + (invalid-base32-character-value c))) + (nix-base32-string->bytevector + (string-append (make-string 51 #\a) "e")))) expected-value: #\e actual-value: #\e result: PASS test-name: sha256 & bytevector->nix-base32-string location: /tmp/guix-build-guix-0.13.0.drv-0/source/tests/base32.scm:92 source: + (test-assert + "sha256 & bytevector->nix-base32-string" + (let ((file (search-path %load-path "tests/test.drv"))) + (equal? + (bytevector->nix-base32-string + (sha256 + (call-with-input-file file get-bytevector-all))) + (let* ((c (format + #f + "~a --type sha256 --base32 --flat \"~a\"" + %nix-hash + file)) + (p (open-input-pipe c)) + (l (read-line p))) + (close-pipe p) + l)))) result: SKIP SKIP: tests/cpio =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D random seed for tests: 1495527106 test-name: file->cpio-header + write-cpio-header + read-cpio-header location: /tmp/guix-build-guix-0.13.0.drv-0/source/tests/cpio.scm:37 source: + (test-assert + "file->cpio-header + write-cpio-header + read-cpio-header" + (let* ((file (search-path %load-path "guix.scm")) + (header (file->cpio-header file))) + (call-with-values + (lambda () (open-bytevector-output-port)) + (lambda (port get-bv) + (write-cpio-header header port) + (let ((port (open-bytevector-input-port (get-bv)))) + (equal? header (read-cpio-header port))))))) actual-value: #t result: PASS test-name: bit-identical to GNU cpio's output location: /tmp/guix-build-guix-0.13.0.drv-0/source/tests/cpio.scm:49 source: + (test-assert + "bit-identical to GNU cpio's output" + (call-with-temporary-output-file + (lambda (link _) + (delete-file link) + (symlink "chbouib" link) + (let ((files (cons* "/" + (canonicalize-path + (dirname (search-path %load-path "guix.scm"))) + link + (map (compose + canonicalize-path + (cut search-path %load-path <>)) + '("guix.scm" + "guix/build/syscalls.scm" + "guix/packages.scm"))))) + (call-with-temporary-output-file + (lambda (ref-file _) + (let ((pipe (open-pipe* + OPEN_WRITE + %cpio-program + "-o" + "-O" + ref-file + "-H" + "newc" + "--null"))) + (for-each + (lambda (file) (format pipe "~a\x00" file)) + files) + (and (zero? (close-pipe pipe)) + (call-with-temporary-output-file + (lambda (file port) + (write-cpio-archive files port) + (close-port port) + (or (file=3D? ref-file file) + (throw 'cpio-archives-differ + files + ref-file + file + (stat:size (stat ref-file)) + (stat:size (stat file)))))))))))))) result: SKIP SKIP: tests/builders =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D random seed for tests: 1495525785 test-name: url-fetch location: /tmp/guix-build-guix-0.13.0.drv-0/source/tests/builders.scm:66 source: + (test-assert + "url-fetch" + (let* ((url '("http://ftp.gnu.org/gnu/hello/hello-2.8.tar.gz" + "ftp://ftp.gnu.org/gnu/hello/hello-2.8.tar.gz")) + (hash (nix-base32-string->bytevector + "0wqd8sjmxfskrflaxywc7gqw7sfawrfvdxd9skxawzfgyy0pzdz6")) + (drv (url-fetch* + %store + url + 'sha256 + hash + #:guile + %bootstrap-guile)) + (out-path (derivation->output-path drv))) + (and (build-derivations %store (list drv)) + (file-exists? out-path) + (valid-path? %store out-path)))) result: SKIP test-name: url-fetch, file location: /tmp/guix-build-guix-0.13.0.drv-0/source/tests/builders.scm:78 source: + (test-assert + "url-fetch, file" + (let* ((file (search-path %load-path "guix.scm")) + (hash (call-with-input-file file port-sha256)) + (out (url-fetch* %store file 'sha256 hash))) + (and (file-exists? out) (valid-path? %store out)))) actual-value: #t result: PASS test-name: url-fetch, file URI location: /tmp/guix-build-guix-0.13.0.drv-0/source/tests/builders.scm:85 source: + (test-assert + "url-fetch, file URI" + (let* ((file (search-path %load-path "guix.scm")) + (hash (call-with-input-file file port-sha256)) + (out (url-fetch* + %store + (string-append + "file://" + (canonicalize-path file)) + 'sha256 + hash))) + (and (file-exists? out) (valid-path? %store out)))) actual-value: #t result: PASS test-name: gnu-build-system location: /tmp/guix-build-guix-0.13.0.drv-0/source/tests/builders.scm:94 source: + (test-assert + "gnu-build-system" + (build-system? gnu-build-system)) actual-value: #t result: PASS test-name: gnu-build location: /tmp/guix-build-guix-0.13.0.drv-0/source/tests/builders.scm:99 source: + (test-assert + "gnu-build" + (let* ((url "http://ftp.gnu.org/gnu/hello/hello-2.8.tar.gz") + (hash (nix-base32-string->bytevector + "0wqd8sjmxfskrflaxywc7gqw7sfawrfvdxd9skxawzfgyy0pzdz6")) + (tarball + (url-fetch* + %store + url + 'sha256 + hash + #:guile + %bootstrap-guile)) + (build (gnu-build + %store + "hello-2.8" + `(("source" ,tarball) ,@%bootstrap-inputs) + #:guile + %bootstrap-guile + #:search-paths + %bootstrap-search-paths)) + (out (derivation->output-path build))) + (and (build-derivations + %store + (list (pk 'hello-drv build))) + (valid-path? %store out) + (file-exists? (string-append out "/bin/hello"))))) result: SKIP SKIP: tests/derivations =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D random seed for tests: 1495525877 @ build-started /tmp/guix-tests/store/vcj9833sk577wd7qxzvmgqcfbf9b4sjz-foo.= drv - x86_64-linux /tmp/guix-tests/var/log/guix/drvs/vc//j9833sk577wd7qxzvm= gqcfbf9b4sjz-foo.drv.bz2 @ build-succeeded /tmp/guix-tests/store/vcj9833sk577wd7qxzvmgqcfbf9b4sjz-fo= o.drv - test-name: parse & export location: /tmp/guix-build-guix-0.13.0.drv-0/source/tests/derivations.scm:87 source: + (test-assert + "parse & export" + (let* ((f (search-path %load-path "tests/test.drv")) + (b1 (call-with-input-file f get-bytevector-all)) + (d1 (read-derivation (open-bytevector-input-port b1))) + (b2 (call-with-bytevector-output-port + (cut write-derivation d1 <>))) + (d2 (read-derivation (open-bytevector-input-port b2)))) + (and (equal? b1 b2) (equal? d1 d2)))) actual-value: #t result: PASS test-name: add-to-store, flat location: /tmp/guix-build-guix-0.13.0.drv-0/source/tests/derivations.scm:98 source: + (test-assert + "add-to-store, flat" + (let* ((file (search-path + %load-path + "language/tree-il/spec.scm")) + (drv (add-to-store + %store + "flat-test" + #f + "sha256" + file))) + (and (eq? 'regular (stat:type (stat drv))) + (valid-path? %store drv) + (equal? + (call-with-input-file file get-bytevector-all) + (call-with-input-file drv get-bytevector-all))))) actual-value: #t result: PASS test-name: add-to-store, recursive location: /tmp/guix-build-guix-0.13.0.drv-0/source/tests/derivations.scm:106 source: + (test-assert + "add-to-store, recursive" + (let* ((dir (dirname + (search-path + %load-path + "language/tree-il/spec.scm"))) + (drv (add-to-store + %store + "dir-tree-test" + #t + "sha256" + dir))) + (and (eq? 'directory (stat:type (stat drv))) + (valid-path? %store drv) + (equal? + (directory-contents dir) + (directory-contents drv))))) actual-value: #t result: PASS test-name: derivation with no inputs location: /tmp/guix-build-guix-0.13.0.drv-0/source/tests/derivations.scm:114 source: + (test-assert + "derivation with no inputs" + (let* ((builder + (add-text-to-store + %store + "my-builder.sh" + "echo hello, world\n" + '())) + (drv (derivation + %store + "foo" + %bash + `("-e" ,builder) + #:env-vars + '(("HOME" . "/homeless"))))) + (and (store-path? (derivation-file-name drv)) + (valid-path? %store (derivation-file-name drv))))) actual-value: #t result: PASS test-name: build derivation with 1 source location: /tmp/guix-build-guix-0.13.0.drv-0/source/tests/derivations.scm:124 source: + (test-assert + "build derivation with 1 source" + (let* ((builder + (add-text-to-store + %store + "my-builder.sh" + "echo hello, world > \"$out\"\n" + '())) + (drv (derivation + %store + "foo" + %bash + `(,builder) + #:env-vars + '(("HOME" . "/homeless") + ("zzz" . "Z!") + ("AAA" . "A!")) + #:inputs + `((,%bash) (,builder)))) + (succeeded? + (build-derivations %store (list drv)))) + (and succeeded? + (let ((path (derivation->output-path drv))) + (and (valid-path? %store path) + (string=3D? + (call-with-input-file path read-line) + "hello, world")))))) actual-value: #t result: PASS test-name: derivation with local file as input location: /tmp/guix-build-guix-0.13.0.drv-0/source/tests/derivations.scm:142 source: + (test-assert + "derivation with local file as input" + (let* ((builder + (add-text-to-store + %store + "my-builder.sh" + "(while read line ; do echo \"$line\" ; done) < $in > $out" + '())) + (input @ build-started /tmp/guix-tests/store/fjv236z7l209d8zz9z8= jxmnw3dfi8lam-derivation-with-input-file.drv - x86_64-linux /tmp/guix-tests= /var/log/guix/drvs/fj//v236z7l209d8zz9z8jxmnw3dfi8lam-derivation-with-input= -file.drv.bz2 @ build-succeeded /tmp/guix-tests/store/fjv236z7l209d8zz9z8jxmnw3dfi8lam-de= rivation-with-input-file.drv - @ build-started /tmp/guix-tests/store/p81vnkbra9z5w45hg0hni5l3yf596ja2-fail= s.drv - x86_64-linux /tmp/guix-tests/var/log/guix/drvs/p8//1vnkbra9z5w45hg0= hni5l3yf596ja2-fails.drv.bz2 builder for `/tmp/guix-tests/store/p81vnkbra9z5w45hg0hni5l3yf596ja2-fails.d= rv' failed with exit code 1 @ build-failed /tmp/guix-tests/store/p81vnkbra9z5w45hg0hni5l3yf596ja2-fails= .drv - 1 builder for `/tmp/guix-tests/store/p81vnkbra9z5w45hg0hni5l3yf596ja= 2-fails.drv' failed with exit code 1 @ build-started /tmp/guix-tests/store/kn0gx5na8k2nilq6c362bmavywnilkhq-guil= e-bootstrap-2.0.drv - x86_64-linux /tmp/guix-tests/var/log/guix/drvs/kn//0g= x5na8k2nilq6c362bmavywnilkhq-guile-bootstrap-2.0.drv.bz2 unpacking bootstrap Guile to '/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlc= mhri6939f-guile-bootstrap-2.0'... ./ ./share/ ./share/guile/ ./share/guile/2.0/ ./share/guile/2.0/system/ ./share/guile/2.0/system/xref.scm ./share/guile/2.0/system/foreign.scm ./share/guile/2.0/system/repl/ ./share/guile/2.0/system/repl/error-handling.scm ./share/guile/2.0/system/repl/debug.scm ./share/guile/2.0/system/repl/describe.scm ./share/guile/2.0/system/repl/common.scm ./share/guile/2.0/system/repl/command.scm ./share/guile/2.0/system/repl/server.scm ./share/guile/2.0/system/repl/repl.scm ./share/guile/2.0/system/base/ ./share/guile/2.0/system/base/lalr.upstream.scm ./share/guile/2.0/system/base/pmatch.scm ./share/guile/2.0/system/base/lalr.scm ./share/guile/2.0/system/base/language.scm ./share/guile/2.0/system/base/syntax.scm ./share/guile/2.0/system/base/compile.scm ./share/guile/2.0/system/base/ck.scm ./share/guile/2.0/system/base/message.scm ./share/guile/2.0/system/base/target.scm ./share/guile/2.0/system/vm/ ./share/guile/2.0/system/vm/trace.scm ./share/guile/2.0/system/vm/trap-state.scm ./share/guile/2.0/system/vm/vm.scm ./share/guile/2.0/system/vm/coverage.scm ./share/guile/2.0/system/vm/program.scm ./share/guile/2.0/system/vm/objcode.scm ./share/guile/2.0/system/vm/traps.scm ./share/guile/2.0/system/vm/inspect.scm ./share/guile/2.0/system/vm/instruction.scm ./share/guile/2.0/system/vm/frame.scm ./share/guile/2.0/scripts/ ./share/guile/2.0/scripts/scan-api.scm ./share/guile/2.0/scripts/autofrisk.scm ./share/guile/2.0/scripts/snarf-check-and-output-texi.scm ./share/guile/2.0/scripts/read-rfc822.scm ./share/guile/2.0/scripts/read-text-outline.scm ./share/guile/2.0/scripts/help.scm ./share/guile/2.0/scripts/frisk.scm ./share/guile/2.0/scripts/punify.scm ./share/guile/2.0/scripts/lint.scm ./share/guile/2.0/scripts/disassemble.scm ./share/guile/2.0/scripts/summarize-guile-TODO.scm ./share/guile/2.0/scripts/generate-autoload.scm ./share/guile/2.0/scripts/display-commentary.scm ./share/guile/2.0/scripts/compile.scm ./share/guile/2.0/scripts/api-diff.scm ./share/guile/2.0/scripts/use2dot.scm ./share/guile/2.0/scripts/doc-snarf.scm ./share/guile/2.0/scripts/read-scheme-source.scm ./share/guile/2.0/scripts/snarf-guile-m4-docs.scm ./share/guile/2.0/scripts/list.scm ./share/guile/2.0/texinfo/ ./share/guile/2.0/texinfo/indexing.scm ./share/guile/2.0/texinfo/html.scm ./share/guile/2.0/texinfo/docbook.scm ./share/guile/2.0/texinfo/serialize.scm ./share/guile/2.0/texinfo/reflection.scm ./share/guile/2.0/texinfo/plain-text.scm ./share/guile/2.0/texinfo/string-utils.scm ./share/guile/2.0/ice-9/ ./share/guile/2.0/ice-9/documentation.scm ./share/guile/2.0/ice-9/scm-style-repl.scm ./share/guile/2.0/ice-9/time.scm ./share/guile/2.0/ice-9/format.scm ./share/guile/2.0/ice-9/networking.scm ./share/guile/2.0/ice-9/getopt-long.scm ./share/guile/2.0/ice-9/vlist.scm ./share/guile/2.0/ice-9/psyntax.scm ./share/guile/2.0/ice-9/gap-buffer.scm ./share/guile/2.0/ice-9/and-let-star.scm ./share/guile/2.0/ice-9/posix.scm ./share/guile/2.0/ice-9/ls.scm ./share/guile/2.0/ice-9/syncase.scm ./share/guile/2.0/ice-9/save-stack.scm ./share/guile/2.0/ice-9/stack-catch.scm ./share/guile/2.0/ice-9/futures.scm ./share/guile/2.0/ice-9/debug.scm ./share/guile/2.0/ice-9/pretty-print.scm ./share/guile/2.0/ice-9/mapping.scm ./share/guile/2.0/ice-9/occam-channel.scm ./share/guile/2.0/ice-9/top-repl.scm ./share/guile/2.0/ice-9/boot-9.scm ./share/guile/2.0/ice-9/string-fun.scm ./share/guile/2.0/ice-9/i18n.scm ./share/guile/2.0/ice-9/match.upstream.scm ./share/guile/2.0/ice-9/streams.scm ./share/guile/2.0/ice-9/lineio.scm ./share/guile/2.0/ice-9/threads.scm ./share/guile/2.0/ice-9/weak-vector.scm ./share/guile/2.0/ice-9/history.scm ./share/guile/2.0/ice-9/expect.scm ./share/guile/2.0/ice-9/poll.scm ./share/guile/2.0/ice-9/popen.scm ./share/guile/2.0/ice-9/control.scm ./share/guile/2.0/ice-9/session.scm ./share/guile/2.0/ice-9/ftw.scm ./share/guile/2.0/ice-9/local-eval.scm ./share/guile/2.0/ice-9/receive.scm ./share/guile/2.0/ice-9/safe-r5rs.scm ./share/guile/2.0/ice-9/calling.scm ./share/guile/2.0/ice-9/curried-definitions.scm ./share/guile/2.0/ice-9/eval-string.scm ./share/guile/2.0/ice-9/q.scm ./share/guile/2.0/ice-9/serialize.scm ./share/guile/2.0/ice-9/quasisyntax.scm ./share/guile/2.0/ice-9/slib.scm ./share/guile/2.0/ice-9/hcons.scm ./share/guile/2.0/ice-9/rw.scm ./share/guile/2.0/ice-9/regex.scm ./share/guile/2.0/ice-9/match.scm ./share/guile/2.0/ice-9/buffered-input.scm ./share/guile/2.0/ice-9/iconv.scm ./share/guile/2.0/ice-9/poe.scm ./share/guile/2.0/ice-9/common-list.scm ./share/guile/2.0/ice-9/r5rs.scm ./share/guile/2.0/ice-9/command-line.scm ./share/guile/2.0/ice-9/deprecated.scm ./share/guile/2.0/ice-9/psyntax-pp.scm ./share/guile/2.0/ice-9/null.scm ./share/guile/2.0/ice-9/optargs.scm ./share/guile/2.0/ice-9/rdelim.scm ./share/guile/2.0/ice-9/runq.scm ./share/guile/2.0/ice-9/safe.scm ./share/guile/2.0/ice-9/channel.scm ./share/guile/2.0/ice-9/readline.scm ./share/guile/2.0/ice-9/binary-ports.scm ./share/guile/2.0/ice-9/eval.scm ./share/guile/2.0/ice-9/r4rs.scm ./share/guile/2.0/ice-9/r6rs-libraries.scm ./share/guile/2.0/ice-9/list.scm ./share/guile/2.0/language/ ./share/guile/2.0/language/elisp/ ./share/guile/2.0/language/elisp/compile-tree-il.scm ./share/guile/2.0/language/elisp/bindings.scm ./share/guile/2.0/language/elisp/runtime.scm ./share/guile/2.0/language/elisp/lexer.scm ./share/guile/2.0/language/elisp/spec.scm ./share/guile/2.0/language/elisp/runtime/ ./share/guile/2.0/language/elisp/runtime/macros.scm ./share/guile/2.0/language/elisp/runtime/function-slot.scm ./share/guile/2.0/language/elisp/runtime/subrs.scm ./share/guile/2.0/language/elisp/runtime/value-slot.scm ./share/guile/2.0/language/elisp/parser.scm ./share/guile/2.0/language/assembly/ ./share/guile/2.0/language/assembly/compile-bytecode.scm ./share/guile/2.0/language/assembly/disassemble.scm ./share/guile/2.0/language/assembly/spec.scm ./share/guile/2.0/language/assembly/decompile-bytecode.scm ./share/guile/2.0/language/scheme/ ./share/guile/2.0/language/scheme/compile-tree-il.scm ./share/guile/2.0/language/scheme/decompile-tree-il.scm ./share/guile/2.0/language/scheme/spec.scm ./share/guile/2.0/language/brainfuck/ ./share/guile/2.0/language/brainfuck/compile-tree-il.scm ./share/guile/2.0/language/brainfuck/compile-scheme.scm ./share/guile/2.0/language/brainfuck/spec.scm ./share/guile/2.0/language/brainfuck/parse.scm ./share/guile/2.0/language/objcode/ ./share/guile/2.0/language/objcode/spec.scm ./share/guile/2.0/language/assembly.scm ./share/guile/2.0/language/bytecode/ ./share/guile/2.0/language/bytecode/spec.scm ./share/guile/2.0/language/glil/ ./share/guile/2.0/language/glil/spec.scm ./share/guile/2.0/language/glil/compile-assembly.scm ./share/guile/2.0/language/tree-il/ ./share/guile/2.0/language/tree-il/analyze.scm ./share/guile/2.0/language/tree-il/inline.scm ./share/guile/2.0/language/tree-il/debug.scm ./share/guile/2.0/language/tree-il/primitives.scm ./share/guile/2.0/language/tree-il/optimize.scm ./share/guile/2.0/language/tree-il/fix-letrec.scm ./share/guile/2.0/language/tree-il/spec.scm ./share/guile/2.0/language/tree-il/peval.scm ./share/guile/2.0/language/tree-il/compile-glil.scm ./share/guile/2.0/language/tree-il/cse.scm ./share/guile/2.0/language/tree-il/canonicalize.scm ./share/guile/2.0/language/tree-il/effects.scm ./share/guile/2.0/language/ecmascript/ ./share/guile/2.0/language/ecmascript/base.scm ./share/guile/2.0/language/ecmascript/compile-tree-il.scm ./share/guile/2.0/language/ecmascript/function.scm ./share/guile/2.0/language/ecmascript/array.scm ./share/guile/2.0/language/ecmascript/tokenize.scm ./share/guile/2.0/language/ecmascript/spec.scm ./share/guile/2.0/language/ecmascript/impl.scm ./share/guile/2.0/language/ecmascript/parse.scm ./share/guile/2.0/language/value/ ./share/guile/2.0/language/value/spec.scm ./share/guile/2.0/language/glil.scm ./share/guile/2.0/language/tree-il.scm ./share/guile/2.0/rnrs.scm ./share/guile/2.0/statprof.scm ./share/guile/2.0/web/ ./share/guile/2.0/web/client.scm ./share/guile/2.0/web/response.scm ./share/guile/2.0/web/uri.scm ./share/guile/2.0/web/server/ ./share/guile/2.0/web/server/http.scm ./share/guile/2.0/web/request.scm ./share/guile/2.0/web/server.scm ./share/guile/2.0/web/http.scm ./share/guile/2.0/oop/ ./share/guile/2.0/oop/goops.scm ./share/guile/2.0/oop/goops/ ./share/guile/2.0/oop/goops/save.scm ./share/guile/2.0/oop/goops/stklos.scm ./share/guile/2.0/oop/goops/accessors.scm ./share/guile/2.0/oop/goops/describe.scm ./share/guile/2.0/oop/goops/dispatch.scm ./share/guile/2.0/oop/goops/active-slot.scm ./share/guile/2.0/oop/goops/composite-slot.scm ./share/guile/2.0/oop/goops/compile.scm ./share/guile/2.0/oop/goops/internal.scm ./share/guile/2.0/oop/goops/util.scm ./share/guile/2.0/oop/goops/simple.scm ./share/guile/2.0/guile-procedures.txt ./share/guile/2.0/texinfo.scm ./share/guile/2.0/rnrs/ ./share/guile/2.0/rnrs/base.scm ./share/guile/2.0/rnrs/records/ ./share/guile/2.0/rnrs/records/syntactic.scm ./share/guile/2.0/rnrs/records/inspection.scm ./share/guile/2.0/rnrs/records/procedural.scm ./share/guile/2.0/rnrs/arithmetic/ ./share/guile/2.0/rnrs/arithmetic/bitwise.scm ./share/guile/2.0/rnrs/arithmetic/fixnums.scm ./share/guile/2.0/rnrs/arithmetic/flonums.scm ./share/guile/2.0/rnrs/unicode.scm ./share/guile/2.0/rnrs/enums.scm ./share/guile/2.0/rnrs/hashtables.scm ./share/guile/2.0/rnrs/control.scm ./share/guile/2.0/rnrs/syntax-case.scm ./share/guile/2.0/rnrs/sorting.scm ./share/guile/2.0/rnrs/lists.scm ./share/guile/2.0/rnrs/mutable-strings.scm ./share/guile/2.0/rnrs/conditions.scm ./share/guile/2.0/rnrs/r5rs.scm ./share/guile/2.0/rnrs/mutable-pairs.scm ./share/guile/2.0/rnrs/programs.scm ./share/guile/2.0/rnrs/exceptions.scm ./share/guile/2.0/rnrs/eval.scm ./share/guile/2.0/rnrs/files.scm ./share/guile/2.0/rnrs/io/ ./share/guile/2.0/rnrs/io/ports.scm ./share/guile/2.0/rnrs/io/simple.scm ./share/guile/2.0/rnrs/bytevectors.scm ./share/guile/2.0/sxml/ ./share/guile/2.0/sxml/sxml-match.ss ./share/guile/2.0/sxml/fold.scm ./share/guile/2.0/sxml/ssax.scm ./share/guile/2.0/sxml/apply-templates.scm ./share/guile/2.0/sxml/xpath.scm ./share/guile/2.0/sxml/upstream/ ./share/guile/2.0/sxml/upstream/SSAX.scm ./share/guile/2.0/sxml/upstream/assert.scm ./share/guile/2.0/sxml/upstream/SXPath-old.scm ./share/guile/2.0/sxml/upstream/input-parse.scm ./share/guile/2.0/sxml/upstream/SXML-tree-trans.scm ./share/guile/2.0/sxml/transform.scm ./share/guile/2.0/sxml/match.scm ./share/guile/2.0/sxml/simple.scm ./share/guile/2.0/sxml/ssax/ ./share/guile/2.0/sxml/ssax/input-parse.scm ./share/guile/2.0/srfi/ ./share/guile/2.0/srfi/srfi-88.scm ./share/guile/2.0/srfi/srfi-14.scm ./share/guile/2.0/srfi/srfi-6.scm ./share/guile/2.0/srfi/srfi-67.scm ./share/guile/2.0/srfi/srfi-42/ ./share/guile/2.0/srfi/srfi-42/ec.scm ./share/guile/2.0/srfi/srfi-19.scm ./share/guile/2.0/srfi/srfi-31.scm ./share/guile/2.0/srfi/srfi-41.scm ./share/guile/2.0/srfi/srfi-35.scm ./share/guile/2.0/srfi/srfi-34.scm ./share/guile/2.0/srfi/srfi-60.scm ./share/guile/2.0/srfi/srfi-18.scm ./share/guile/2.0/srfi/srfi-37.scm ./share/guile/2.0/srfi/srfi-4/ ./share/guile/2.0/srfi/srfi-4/gnu.scm ./share/guile/2.0/srfi/srfi-16.scm ./share/guile/2.0/srfi/srfi-69.scm ./share/guile/2.0/srfi/srfi-17.scm ./share/guile/2.0/srfi/srfi-2.scm ./share/guile/2.0/srfi/srfi-27.scm ./share/guile/2.0/srfi/srfi-26.scm ./share/guile/2.0/srfi/srfi-8.scm ./share/guile/2.0/srfi/srfi-4.scm ./share/guile/2.0/srfi/srfi-11.scm ./share/guile/2.0/srfi/srfi-13.scm ./share/guile/2.0/srfi/srfi-67/ ./share/guile/2.0/srfi/srfi-67/compare.scm ./share/guile/2.0/srfi/srfi-45.scm ./share/guile/2.0/srfi/srfi-9.scm ./share/guile/2.0/srfi/srfi-9/ ./share/guile/2.0/srfi/srfi-9/gnu.scm ./share/guile/2.0/srfi/srfi-10.scm ./share/guile/2.0/srfi/srfi-42.scm ./share/guile/2.0/srfi/srfi-39.scm ./share/guile/2.0/srfi/srfi-1.scm ./share/guile/2.0/srfi/srfi-38.scm ./share/guile/2.0/srfi/srfi-98.scm ./lib/ ./lib/guile/ ./lib/guile/2.0/ ./lib/guile/2.0/ccache/ ./lib/guile/2.0/ccache/system/ ./lib/guile/2.0/ccache/system/foreign.go ./lib/guile/2.0/ccache/system/repl/ ./lib/guile/2.0/ccache/system/repl/command.go ./lib/guile/2.0/ccache/system/repl/error-handling.go ./lib/guile/2.0/ccache/system/repl/repl.go ./lib/guile/2.0/ccache/system/repl/debug.go ./lib/guile/2.0/ccache/system/repl/server.go ./lib/guile/2.0/ccache/system/repl/common.go ./lib/guile/2.0/ccache/system/xref.go ./lib/guile/2.0/ccache/system/base/ ./lib/guile/2.0/ccache/system/base/ck.go ./lib/guile/2.0/ccache/system/base/lalr.go ./lib/guile/2.0/ccache/system/base/pmatch.go ./lib/guile/2.0/ccache/system/base/message.go ./lib/guile/2.0/ccache/system/base/syntax.go ./lib/guile/2.0/ccache/system/base/language.go ./lib/guile/2.0/ccache/system/base/target.go ./lib/guile/2.0/ccache/system/base/compile.go ./lib/guile/2.0/ccache/system/vm/ ./lib/guile/2.0/ccache/system/vm/traps.go ./lib/guile/2.0/ccache/system/vm/frame.go ./lib/guile/2.0/ccache/system/vm/objcode.go ./lib/guile/2.0/ccache/system/vm/program.go ./lib/guile/2.0/ccache/system/vm/instruction.go ./lib/guile/2.0/ccache/system/vm/coverage.go ./lib/guile/2.0/ccache/system/vm/vm.go ./lib/guile/2.0/ccache/system/vm/trap-state.go ./lib/guile/2.0/ccache/system/vm/inspect.go ./lib/guile/2.0/ccache/system/vm/trace.go ./lib/guile/2.0/ccache/scripts/ ./lib/guile/2.0/ccache/scripts/scan-api.go ./lib/guile/2.0/ccache/scripts/use2dot.go ./lib/guile/2.0/ccache/scripts/autofrisk.go ./lib/guile/2.0/ccache/scripts/api-diff.go ./lib/guile/2.0/ccache/scripts/read-text-outline.go ./lib/guile/2.0/ccache/scripts/punify.go ./lib/guile/2.0/ccache/scripts/snarf-guile-m4-docs.go ./lib/guile/2.0/ccache/scripts/read-scheme-source.go ./lib/guile/2.0/ccache/scripts/frisk.go ./lib/guile/2.0/ccache/scripts/summarize-guile-TODO.go ./lib/guile/2.0/ccache/scripts/lint.go ./lib/guile/2.0/ccache/scripts/display-commentary.go ./lib/guile/2.0/ccache/scripts/disassemble.go ./lib/guile/2.0/ccache/scripts/generate-autoload.go ./lib/guile/2.0/ccache/scripts/snarf-check-and-output-texi.go ./lib/guile/2.0/ccache/scripts/read-rfc822.go ./lib/guile/2.0/ccache/scripts/doc-snarf.go ./lib/guile/2.0/ccache/scripts/compile.go ./lib/guile/2.0/ccache/scripts/help.go ./lib/guile/2.0/ccache/scripts/list.go ./lib/guile/2.0/ccache/texinfo/ ./lib/guile/2.0/ccache/texinfo/docbook.go ./lib/guile/2.0/ccache/texinfo/serialize.go ./lib/guile/2.0/ccache/texinfo/html.go ./lib/guile/2.0/ccache/texinfo/reflection.go ./lib/guile/2.0/ccache/texinfo/indexing.go ./lib/guile/2.0/ccache/texinfo/plain-text.go ./lib/guile/2.0/ccache/texinfo/string-utils.go ./lib/guile/2.0/ccache/ice-9/ ./lib/guile/2.0/ccache/ice-9/r4rs.go ./lib/guile/2.0/ccache/ice-9/poll.go ./lib/guile/2.0/ccache/ice-9/syncase.go ./lib/guile/2.0/ccache/ice-9/common-list.go ./lib/guile/2.0/ccache/ice-9/stack-catch.go ./lib/guile/2.0/ccache/ice-9/control.go ./lib/guile/2.0/ccache/ice-9/binary-ports.go ./lib/guile/2.0/ccache/ice-9/regex.go ./lib/guile/2.0/ccache/ice-9/safe.go ./lib/guile/2.0/ccache/ice-9/buffered-input.go ./lib/guile/2.0/ccache/ice-9/boot-9.go ./lib/guile/2.0/ccache/ice-9/and-let-star.go ./lib/guile/2.0/ccache/ice-9/expect.go ./lib/guile/2.0/ccache/ice-9/gap-buffer.go ./lib/guile/2.0/ccache/ice-9/pretty-print.go ./lib/guile/2.0/ccache/ice-9/time.go ./lib/guile/2.0/ccache/ice-9/serialize.go ./lib/guile/2.0/ccache/ice-9/debug.go ./lib/guile/2.0/ccache/ice-9/rw.go ./lib/guile/2.0/ccache/ice-9/command-line.go ./lib/guile/2.0/ccache/ice-9/networking.go ./lib/guile/2.0/ccache/ice-9/posix.go ./lib/guile/2.0/ccache/ice-9/psyntax-pp.go ./lib/guile/2.0/ccache/ice-9/format.go ./lib/guile/2.0/ccache/ice-9/optargs.go ./lib/guile/2.0/ccache/ice-9/history.go ./lib/guile/2.0/ccache/ice-9/vlist.go ./lib/guile/2.0/ccache/ice-9/threads.go ./lib/guile/2.0/ccache/ice-9/safe-r5rs.go ./lib/guile/2.0/ccache/ice-9/streams.go ./lib/guile/2.0/ccache/ice-9/readline.go ./lib/guile/2.0/ccache/ice-9/slib.go ./lib/guile/2.0/ccache/ice-9/scm-style-repl.go ./lib/guile/2.0/ccache/ice-9/session.go ./lib/guile/2.0/ccache/ice-9/top-repl.go ./lib/guile/2.0/ccache/ice-9/channel.go ./lib/guile/2.0/ccache/ice-9/q.go ./lib/guile/2.0/ccache/ice-9/string-fun.go ./lib/guile/2.0/ccache/ice-9/r5rs.go ./lib/guile/2.0/ccache/ice-9/calling.go ./lib/guile/2.0/ccache/ice-9/futures.go ./lib/guile/2.0/ccache/ice-9/null.go ./lib/guile/2.0/ccache/ice-9/occam-channel.go ./lib/guile/2.0/ccache/ice-9/eval.go ./lib/guile/2.0/ccache/ice-9/receive.go ./lib/guile/2.0/ccache/ice-9/ftw.go ./lib/guile/2.0/ccache/ice-9/runq.go ./lib/guile/2.0/ccache/ice-9/rdelim.go ./lib/guile/2.0/ccache/ice-9/save-stack.go ./lib/guile/2.0/ccache/ice-9/local-eval.go ./lib/guile/2.0/ccache/ice-9/getopt-long.go ./lib/guile/2.0/ccache/ice-9/ls.go ./lib/guile/2.0/ccache/ice-9/lineio.go ./lib/guile/2.0/ccache/ice-9/i18n.go ./lib/guile/2.0/ccache/ice-9/deprecated.go ./lib/guile/2.0/ccache/ice-9/hcons.go ./lib/guile/2.0/ccache/ice-9/popen.go ./lib/guile/2.0/ccache/ice-9/curried-definitions.go ./lib/guile/2.0/ccache/ice-9/eval-string.go ./lib/guile/2.0/ccache/ice-9/match.go ./lib/guile/2.0/ccache/ice-9/weak-vector.go ./lib/guile/2.0/ccache/ice-9/poe.go ./lib/guile/2.0/ccache/ice-9/mapping.go ./lib/guile/2.0/ccache/ice-9/list.go ./lib/guile/2.0/ccache/ice-9/documentation.go ./lib/guile/2.0/ccache/ice-9/iconv.go ./lib/guile/2.0/ccache/language/ ./lib/guile/2.0/ccache/language/assembly.go ./lib/guile/2.0/ccache/language/elisp/ ./lib/guile/2.0/ccache/language/elisp/compile-tree-il.go ./lib/guile/2.0/ccache/language/elisp/spec.go ./lib/guile/2.0/ccache/language/elisp/parser.go ./lib/guile/2.0/ccache/language/elisp/runtime.go ./lib/guile/2.0/ccache/language/elisp/bindings.go ./lib/guile/2.0/ccache/language/elisp/lexer.go ./lib/guile/2.0/ccache/language/elisp/runtime/ ./lib/guile/2.0/ccache/language/elisp/runtime/value-slot.go ./lib/guile/2.0/ccache/language/elisp/runtime/function-slot.go ./lib/guile/2.0/ccache/language/elisp/runtime/subrs.go ./lib/guile/2.0/ccache/language/elisp/runtime/macros.go ./lib/guile/2.0/ccache/language/assembly/ ./lib/guile/2.0/ccache/language/assembly/decompile-bytecode.go ./lib/guile/2.0/ccache/language/assembly/spec.go ./lib/guile/2.0/ccache/language/assembly/compile-bytecode.go ./lib/guile/2.0/ccache/language/assembly/disassemble.go ./lib/guile/2.0/ccache/language/tree-il.go ./lib/guile/2.0/ccache/language/glil.go ./lib/guile/2.0/ccache/language/scheme/ ./lib/guile/2.0/ccache/language/scheme/compile-tree-il.go ./lib/guile/2.0/ccache/language/scheme/spec.go ./lib/guile/2.0/ccache/language/scheme/decompile-tree-il.go ./lib/guile/2.0/ccache/language/brainfuck/ ./lib/guile/2.0/ccache/language/brainfuck/compile-tree-il.go ./lib/guile/2.0/ccache/language/brainfuck/spec.go ./lib/guile/2.0/ccache/language/brainfuck/parse.go ./lib/guile/2.0/ccache/language/brainfuck/compile-scheme.go ./lib/guile/2.0/ccache/language/objcode/ ./lib/guile/2.0/ccache/language/objcode/spec.go ./lib/guile/2.0/ccache/language/bytecode/ ./lib/guile/2.0/ccache/language/bytecode/spec.go ./lib/guile/2.0/ccache/language/glil/ ./lib/guile/2.0/ccache/language/glil/compile-assembly.go ./lib/guile/2.0/ccache/language/glil/spec.go ./lib/guile/2.0/ccache/language/tree-il/ ./lib/guile/2.0/ccache/language/tree-il/debug.go ./lib/guile/2.0/ccache/language/tree-il/compile-glil.go ./lib/guile/2.0/ccache/language/tree-il/optimize.go ./lib/guile/2.0/ccache/language/tree-il/spec.go ./lib/guile/2.0/ccache/language/tree-il/canonicalize.go ./lib/guile/2.0/ccache/language/tree-il/inline.go ./lib/guile/2.0/ccache/language/tree-il/analyze.go ./lib/guile/2.0/ccache/language/tree-il/peval.go ./lib/guile/2.0/ccache/language/tree-il/cse.go ./lib/guile/2.0/ccache/language/tree-il/fix-letrec.go ./lib/guile/2.0/ccache/language/tree-il/effects.go ./lib/guile/2.0/ccache/language/tree-il/primitives.go ./lib/guile/2.0/ccache/language/ecmascript/ ./lib/guile/2.0/ccache/language/ecmascript/compile-tree-il.go ./lib/guile/2.0/ccache/language/ecmascript/spec.go ./lib/guile/2.0/ccache/language/ecmascript/parse.go ./lib/guile/2.0/ccache/language/ecmascript/tokenize.go ./lib/guile/2.0/ccache/language/ecmascript/array.go ./lib/guile/2.0/ccache/language/ecmascript/impl.go ./lib/guile/2.0/ccache/language/ecmascript/function.go ./lib/guile/2.0/ccache/language/ecmascript/base.go ./lib/guile/2.0/ccache/language/value/ ./lib/guile/2.0/ccache/language/value/spec.go ./lib/guile/2.0/ccache/web/ ./lib/guile/2.0/ccache/web/http.go ./lib/guile/2.0/ccache/web/server/ ./lib/guile/2.0/ccache/web/server/http.go ./lib/guile/2.0/ccache/web/client.go ./lib/guile/2.0/ccache/web/request.go ./lib/guile/2.0/ccache/web/server.go ./lib/guile/2.0/ccache/web/uri.go ./lib/guile/2.0/ccache/web/response.go ./lib/guile/2.0/ccache/oop/ ./lib/guile/2.0/ccache/oop/goops.go ./lib/guile/2.0/ccache/oop/goops/ ./lib/guile/2.0/ccache/oop/goops/composite-slot.go ./lib/guile/2.0/ccache/oop/goops/internal.go ./lib/guile/2.0/ccache/oop/goops/stklos.go ./lib/guile/2.0/ccache/oop/goops/save.go ./lib/guile/2.0/ccache/oop/goops/dispatch.go ./lib/guile/2.0/ccache/oop/goops/util.go ./lib/guile/2.0/ccache/oop/goops/active-slot.go ./lib/guile/2.0/ccache/oop/goops/simple.go ./lib/guile/2.0/ccache/oop/goops/describe.go ./lib/guile/2.0/ccache/oop/goops/compile.go ./lib/guile/2.0/ccache/oop/goops/accessors.go ./lib/guile/2.0/ccache/rnrs/ ./lib/guile/2.0/ccache/rnrs/mutable-pairs.go ./lib/guile/2.0/ccache/rnrs/control.go ./lib/guile/2.0/ccache/rnrs/records/ ./lib/guile/2.0/ccache/rnrs/records/procedural.go ./lib/guile/2.0/ccache/rnrs/records/syntactic.go ./lib/guile/2.0/ccache/rnrs/records/inspection.go ./lib/guile/2.0/ccache/rnrs/arithmetic/ ./lib/guile/2.0/ccache/rnrs/arithmetic/fixnums.go ./lib/guile/2.0/ccache/rnrs/arithmetic/bitwise.go ./lib/guile/2.0/ccache/rnrs/arithmetic/flonums.go ./lib/guile/2.0/ccache/rnrs/enums.go ./lib/guile/2.0/ccache/rnrs/programs.go ./lib/guile/2.0/ccache/rnrs/exceptions.go ./lib/guile/2.0/ccache/rnrs/files.go ./lib/guile/2.0/ccache/rnrs/syntax-case.go ./lib/guile/2.0/ccache/rnrs/lists.go ./lib/guile/2.0/ccache/rnrs/mutable-strings.go ./lib/guile/2.0/ccache/rnrs/unicode.go ./lib/guile/2.0/ccache/rnrs/r5rs.go ./lib/guile/2.0/ccache/rnrs/hashtables.go ./lib/guile/2.0/ccache/rnrs/eval.go ./lib/guile/2.0/ccache/rnrs/conditions.go ./lib/guile/2.0/ccache/rnrs/bytevectors.go ./lib/guile/2.0/ccache/rnrs/sorting.go ./lib/guile/2.0/ccache/rnrs/base.go ./lib/guile/2.0/ccache/rnrs/io/ ./lib/guile/2.0/ccache/rnrs/io/ports.go ./lib/guile/2.0/ccache/rnrs/io/simple.go ./lib/guile/2.0/ccache/sxml/ ./lib/guile/2.0/ccache/sxml/transform.go ./lib/guile/2.0/ccache/sxml/ssax.go ./lib/guile/2.0/ccache/sxml/simple.go ./lib/guile/2.0/ccache/sxml/apply-templates.go ./lib/guile/2.0/ccache/sxml/xpath.go ./lib/guile/2.0/ccache/sxml/match.go ./lib/guile/2.0/ccache/sxml/fold.go ./lib/guile/2.0/ccache/sxml/ssax/ ./lib/guile/2.0/ccache/sxml/ssax/input-parse.go ./lib/guile/2.0/ccache/rnrs.go ./lib/guile/2.0/ccache/srfi/ ./lib/guile/2.0/ccache/srfi/srfi-4.go ./lib/guile/2.0/ccache/srfi/srfi-14.go ./lib/guile/2.0/ccache/srfi/srfi-26.go ./lib/guile/2.0/ccache/srfi/srfi-17.go ./lib/guile/2.0/ccache/srfi/srfi-27.go ./lib/guile/2.0/ccache/srfi/srfi-38.go ./lib/guile/2.0/ccache/srfi/srfi-34.go ./lib/guile/2.0/ccache/srfi/srfi-13.go ./lib/guile/2.0/ccache/srfi/srfi-41.go ./lib/guile/2.0/ccache/srfi/srfi-19.go ./lib/guile/2.0/ccache/srfi/srfi-67.go ./lib/guile/2.0/ccache/srfi/srfi-9.go ./lib/guile/2.0/ccache/srfi/srfi-2.go ./lib/guile/2.0/ccache/srfi/srfi-4/ ./lib/guile/2.0/ccache/srfi/srfi-4/gnu.go ./lib/guile/2.0/ccache/srfi/srfi-60.go ./lib/guile/2.0/ccache/srfi/srfi-11.go ./lib/guile/2.0/ccache/srfi/srfi-69.go ./lib/guile/2.0/ccache/srfi/srfi-6.go ./lib/guile/2.0/ccache/srfi/srfi-37.go ./lib/guile/2.0/ccache/srfi/srfi-39.go ./lib/guile/2.0/ccache/srfi/srfi-1.go ./lib/guile/2.0/ccache/srfi/srfi-8.go ./lib/guile/2.0/ccache/srfi/srfi-9/ ./lib/guile/2.0/ccache/srfi/srfi-9/gnu.go ./lib/guile/2.0/ccache/srfi/srfi-45.go ./lib/guile/2.0/ccache/srfi/srfi-42.go ./lib/guile/2.0/ccache/srfi/srfi-16.go ./lib/guile/2.0/ccache/srfi/srfi-31.go ./lib/guile/2.0/ccache/srfi/srfi-18.go ./lib/guile/2.0/ccache/srfi/srfi-88.go ./lib/guile/2.0/ccache/srfi/srfi-10.go ./lib/guile/2.0/ccache/srfi/srfi-35.go ./lib/guile/2.0/ccache/srfi/srfi-98.go ./lib/guile/2.0/ccache/texinfo.go ./lib/guile/2.0/ccache/statprof.go ./bin/ ./bin/guile guile (GNU Guile) 2.0.9 Copyright (C) 2013 Free Software Foundation, Inc. License LGPLv3+: GNU LGPL 3 or later . This is free software: you are free to change and redistribute it. There is NO WARRANTY, to the extent permitted by law. @ build-succeeded /tmp/guix-tests/store/kn0gx5na8k2nilq6c362bmavywnilkhq-gu= ile-bootstrap-2.0.drv - @ build-started /tmp/guix-tests/store/a1p3v98i9vp6wiw1a7yh608j0kc8dklv-slee= p-then-succeed.drv - x86_64-linux /tmp/guix-tests/var/log/guix/drvs/a1//p3v= 98i9vp6wiw1a7yh608j0kc8dklv-sleep-then-succeed.drv.bz2 @ build-succeeded /tmp/guix-tests/store/a1p3v98i9vp6wiw1a7yh608j0kc8dklv-sl= eep-then-succeed.drv - @ build-started /tmp/guix-tests/store/nzs8yyjwcl3b3pw7yrwvshq7km0slqqg-bar.= drv - x86_64-linux /tmp/guix-tests/var/log/guix/drvs/nz//s8yyjwcl3b3pw7yrwv= shq7km0slqqg-bar.drv.bz2 @ build-succeeded /tmp/guix-tests/store/nzs8yyjwcl3b3pw7yrwvshq7km0slqqg-ba= r.drv - @ build-started /tmp/guix-tests/store/7amfgi1b8y64ckydz2w6sl125ajdzh6w-foo.= drv - x86_64-linux /tmp/guix-tests/var/log/guix/drvs/7a//mfgi1b8y64ckydz2w6= sl125ajdzh6w-foo.drv.bz2 @ build-succeeded /tmp/guix-tests/store/7amfgi1b8y64ckydz2w6sl125ajdzh6w-fo= o.drv - (search-path %load-path "ice-9/boot-9.scm")) + (input* + (add-to-store + %store + (basename input) + #t + "sha256" + input)) + (drv (derivation + %store + "derivation-with-input-file" + %bash + `(,builder) + #:env-vars + `(("in" unquote input*)) + #:inputs + `((,%bash) (,builder) (,input))))) + (and (build-derivations %store (list drv)) + (valid-path? + %store + (derivation->output-path drv))))) actual-value: #t result: PASS test-name: derivation fails but keep going location: /tmp/guix-build-guix-0.13.0.drv-0/source/tests/derivations.scm:165 source: + (test-assert + "derivation fails but keep going" + (with-store + store + (let* ((d1 (derivation + %store + "fails" + %bash + `("-c" "false") + #:inputs + `((,%bash)))) + (d2 (build-expression->derivation + %store + "sleep-then-succeed" + `(begin ,(random-text) (sleep 2) (mkdir %output))))) + (set-build-options + %store + #:use-substitutes? + #f + #:keep-going? + #t) + (guard (c ((nix-protocol-error? c) + (and (=3D 100 (nix-protocol-error-status c)) + (string-contains + (nix-protocol-error-message c) + (derivation-file-name d1)) + (not (valid-path? %store (derivation->output-path d= 1))) + (valid-path? %store (derivation->output-path d2))))) + (build-derivations %store (list d1 d2)) + #f)))) actual-value: #t result: PASS test-name: identical files are deduplicated location: /tmp/guix-build-guix-0.13.0.drv-0/source/tests/derivations.scm:192 source: + (test-assert + "identical files are deduplicated" + (let* ((build1 + (add-text-to-store + %store + "one.sh" + "echo hello, world > \"$out\"\n" + '())) + (build2 + (add-text-to-store + %store + "two.sh" + "# Hey!\necho hello, world > \"$out\"\n" + '())) + (drv1 (derivation + %store + "foo" + %bash + `(,build1) + #:inputs + `((,%bash) (,build1)))) + (drv2 (derivation + %store + "bar" + %bash + `(,build2) + #:inputs + `((,%bash) (,build2))))) + (and (build-derivations %store (list drv1 drv2)) + (let ((file1 (derivation->output-path drv1)) + (file2 (derivation->output-path drv2))) + (and (valid-path? %store file1) + (valid-path? %store file2) + (string=3D? + (call-with-input-file file1 get-string-all) + "hello, world\n") + (=3D (stat:ino (lstat file1)) + (stat:ino (lstat file2)))))))) actual-value: #t result: PASS test-name: built-in-builders location: /tmp/guix-build-guix-0.13.0.drv-0/source/tests/derivations.scm:214 source: + (test-equal + "built-in-builders" + '("download") + (built-in-builders %store)) expected-value: ("download") actual-value: ("download") result: PASS test-name: unknown built-in builder location: /tmp/guix-build-guix-0.13.0.drv-0/source/tests/derivations.scm:218 source: + (test-assert + "unknown built-in builder" + (let ((drv (derivation + %store + "ohoh" + "builtin:does-not-exist" + '()))) + (guard (c ((nix-protocol-error? c) + (string-contains + (nix-protocol-error-message c) + @ build-started /tmp/guix-tests/store/96bncx0a55ryyvb2i6z8i6rycxwlpwhg-oh= oh.drv - x86_64-linux /tmp/guix-tests/var/log/guix/drvs/96//bncx0a55ryyvb2i= 6z8i6rycxwlpwhg-ohoh.drv.bz2 error: unsupported builtin function 'does-not-exist' builder for `/tmp/guix-tests/store/96bncx0a55ryyvb2i6z8i6rycxwlpwhg-ohoh.dr= v' failed with exit code 1 @ build-failed /tmp/guix-tests/store/96bncx0a55ryyvb2i6z8i6rycxwlpwhg-ohoh.= drv - 1 builder for `/tmp/guix-tests/store/96bncx0a55ryyvb2i6z8i6rycxwlpwhg= -ohoh.drv' failed with exit code 1 @ build-started /tmp/guix-tests/store/qs0jgc6alfldawhrypjnd7qakvqcnfsx-worl= d.drv - x86_64-linux /tmp/guix-tests/var/log/guix/drvs/qs//0jgc6alfldawhryp= jnd7qakvqcnfsx-world.drv.bz2 Starting download of /tmp/guix-tests/store/0r5zj3ykn23xwr1nqfkx6kwyy0lvyim0= -world =46rom http://localhost:10500/foo/bar... =1B[K bar 64B 0B/s 00:00 [ = ] 0.0% =1B[K bar 64B 136KiB/s 00:00 [##################= ##] 100.0% @ build-succeeded /tmp/guix-tests/store/qs0jgc6alfldawhrypjnd7qakvqcnfsx-wo= rld.drv - @ build-started /tmp/guix-tests/store/6la0xpq36f4bcqx246a5bvf3bwba79zk-worl= d.drv - x86_64-linux /tmp/guix-tests/var/log/guix/drvs/6l//a0xpq36f4bcqx246= a5bvf3bwba79zk-world.drv.bz2 Starting download of /tmp/guix-tests/store/rx75wpgpakq8d90wmggwc7ayvk6sgkgl= -world =46rom http://localhost:10500/foo/bar... =1B[K bar 13B 0B/s 00:00 [ = ] 0.0% =1B[K bar 13B 20KiB/s 00:00 [##################= ##] 100.0% output path `/tmp/guix-tests/store/rx75wpgpakq8d90wmggwc7ayvk6sgkgl-world' = should have sha256 hash `0rhzmici4idp83rp5a5y2936rgkj2knhv3flcfss934yczyj70= i6', instead has `0a7pd3rizm1qb3kz1ad1wzrijrhwsnq3lj7qprc86zp6a6r5drk8' @ build-failed /tmp/guix-tests/store/6la0xpq36f4bcqx246a5bvf3bwba79zk-world= .drv - 1 output path `/tmp/guix-tests/store/rx75wpgpakq8d90wmggwc7ayvk6sgkg= l-world' should have sha256 hash `0rhzmici4idp83rp5a5y2936rgkj2knhv3flcfss9= 34yczyj70i6', instead has `0a7pd3rizm1qb3kz1ad1wzrijrhwsnq3lj7qprc86zp6a6r5= drk8' @ build-started /tmp/guix-tests/store/w2arlbd6bzh72kp6fj3x378vg99w72qx-will= -never-be-found.drv - x86_64-linux /tmp/guix-tests/var/log/guix/drvs/w2//ar= lbd6bzh72kp6fj3x378vg99w72qx-will-never-be-found.drv.bz2 Starting download of /tmp/guix-tests/store/1mjwnd62k14wz6sn4xf2sacw3ps7vqgf= -will-never-be-found =46rom http://localhost:10500/foo/bar... ERROR: download failed "http://localhost:10500/foo/bar" 404 "Such is life" failed to download "/tmp/guix-tests/store/1mjwnd62k14wz6sn4xf2sacw3ps7vqgf-= will-never-be-found" from "http://localhost:10500/foo/bar" builder for `/tmp/guix-tests/store/w2arlbd6bzh72kp6fj3x378vg99w72qx-will-ne= ver-be-found.drv' failed to produce output path `/tmp/guix-tests/store/1mjw= nd62k14wz6sn4xf2sacw3ps7vqgf-will-never-be-found' @ build-failed /tmp/guix-tests/store/w2arlbd6bzh72kp6fj3x378vg99w72qx-will-= never-be-found.drv - 1 builder for `/tmp/guix-tests/store/w2arlbd6bzh72kp6f= j3x378vg99w72qx-will-never-be-found.drv' failed to produce output path `/tm= p/guix-tests/store/1mjwnd62k14wz6sn4xf2sacw3ps7vqgf-will-never-be-found' @ build-started /tmp/guix-tests/store/5hqvbsh3kc0mgh41rda902fk0vqjcq01-worl= d.drv - x86_64-linux /tmp/guix-tests/var/log/guix/drvs/5h//qvbsh3kc0mgh41rd= a902fk0vqjcq01-world.drv.bz2 guix perform-download: error: /tmp/guix-tests/store/5hqvbsh3kc0mgh41rda902f= k0vqjcq01-world.drv is not a fixed-output derivation builder for `/tmp/guix-tests/store/5hqvbsh3kc0mgh41rda902fk0vqjcq01-world.d= rv' failed with exit code 1 @ build-failed /tmp/guix-tests/store/5hqvbsh3kc0mgh41rda902fk0vqjcq01-world= .drv - 1 builder for `/tmp/guix-tests/store/5hqvbsh3kc0mgh41rda902fk0vqjcq0= 1-world.drv' failed with exit code 1 "failed"))) + (build-derivations %store (list drv)) + #f))) actual-value: 75 result: PASS test-name: 'download' built-in builder location: /tmp/guix-build-guix-0.13.0.drv-0/source/tests/derivations.scm:227 source: + (test-assert + "'download' built-in builder" + (let ((text (random-text))) + (with-http-server + 200 + text + (let* ((drv (derivation + %store + "world" + "builtin:download" + '() + #:env-vars + `(("url" unquote (object->string (%local-url)))) + #:hash-algo + 'sha256 + #:hash + (sha256 (string->utf8 text))))) + (and (build-derivations %store (list drv)) + (string=3D? + (call-with-input-file + (derivation->output-path drv) + get-string-all) + text)))))) actual-value: #t result: PASS test-name: 'download' built-in builder, invalid hash location: /tmp/guix-build-guix-0.13.0.drv-0/source/tests/derivations.scm:243 source: + (test-assert + "'download' built-in builder, invalid hash" + (with-http-server + 200 + "hello, world!" + (let* ((drv (derivation + %store + "world" + "builtin:download" + '() + #:env-vars + `(("url" unquote (object->string (%local-url)))) + #:hash-algo + 'sha256 + #:hash + (sha256 (random-bytevector 100))))) + (guard (c ((nix-protocol-error? c) + (string-contains + (nix-protocol-error-message c) + "failed"))) + (build-derivations %store (list drv)) + #f)))) actual-value: 76 result: PASS test-name: 'download' built-in builder, not found location: /tmp/guix-build-guix-0.13.0.drv-0/source/tests/derivations.scm:258 source: + (test-assert + "'download' built-in builder, not found" + (with-http-server + 404 + "not found" + (let* ((drv (derivation + %store + "will-never-be-found" + "builtin:download" + '() + #:env-vars + `(("url" unquote (object->string (%local-url)))) + #:hash-algo + 'sha256 + #:hash + (sha256 (random-bytevector 100))))) + (guard (c ((nix-protocol-error? c) + (string-contains + (nix-protocol-error-message (pk c)) + "failed"))) + (build-derivations %store (list drv)) + #f)))) ;;; (#) actual-value: 90 result: PASS test-name: 'download' built-in builder, not fixed-output location: /tmp/guix-build-guix-0.13.0.drv-0/source/tests/derivations.scm:271 source: + (test-assert + "'download' built-in builder, not fixed-output" + (let* ((source (add-text-to-store %store "hello" "hi!")) + (url (string-append "file://" source)) + (drv (derivation + %store + "world" + "builtin:download" + '() + #:env-vars + `(("url" unquote (object->string url)))))) + (guard (c ((nix-protocol-error? c) + (string-contains + (nix-protocol-error-message c) + "failed"))) + (build-derivations %store (list drv)) + #f))) actual-value: 76 result: PASS test-name: 'download' built-in builder, check mode location: /tmp/guix-build-guix-0.13.0.drv-0/source/tests/derivations.scm:284 source: + (test-assert + "'download' built-in builder, check mode" + (let* ((text (random-text)) @ build-started /tmp/guix-tests/store/4bs71ij07ysw7qv0xk9fhnzl4vqxxbgw-worl= d.drv - x86_64-linux /tmp/guix-tests/var/log/guix/drvs/4b//s71ij07ysw7qv0xk= 9fhnzl4vqxxbgw-world.drv.bz2 Starting download of /tmp/guix-tests/store/qrvc4nscfnw1y0xmpz59zlqckllvn4xw= -world =46rom http://localhost:10500/foo/bar... =1B[K bar 64B 0B/s 00:00 [ = ] 0.0% =1B[K bar 64B 99KiB/s 00:00 [##################= ##] 100.0% @ build-succeeded /tmp/guix-tests/store/4bs71ij07ysw7qv0xk9fhnzl4vqxxbgw-wo= rld.drv - @ build-started /tmp/guix-tests/store/4bs71ij07ysw7qv0xk9fhnzl4vqxxbgw-worl= d.drv - x86_64-linux /tmp/guix-tests/var/log/guix/drvs/4b//s71ij07ysw7qv0xk= 9fhnzl4vqxxbgw-world.drv.bz2 Starting download of /tmp/guix-tests/store/1yg5xq2ad7pgc2nn9h6jdfn69gh3rb53= -world =46rom http://localhost:10500/foo/bar... =1B[K bar 64B 0B/s 00:00 [ = ] 0.0% =1B[K bar 64B 137KiB/s 00:00 [##################= ##] 100.0% warning: rewriting hashes in `/tmp/guix-tests/store/qrvc4nscfnw1y0xmpz59zlq= ckllvn4xw-world'; cross fingers + (drv (derivation + %store + "world" + "builtin:download" + '() + #:env-vars + `(("url" unquote (object->string (%local-url)))) + #:hash-algo + 'sha256 + #:hash + (sha256 (string->utf8 text))))) + (and (with-http-server + 200 + text + (build-derivations %store (list drv))) + (with-http-server + 200 + text + (build-derivations + %store + (list drv) + (build-mode check))) + (string=3D? + (call-with-input-file + (derivation->output-path drv) + get-string-all) + text)))) actual-value: #t result: PASS test-name: derivation-name location: /tmp/guix-build-guix-0.13.0.drv-0/source/tests/derivations.scm:303 source: + (test-equal + "derivation-name" + "foo-0.0" + (let ((drv (derivation %store "foo-0.0" %bash '()))) + (derivation-name drv))) expected-value: "foo-0.0" actual-value: "foo-0.0" result: PASS test-name: derivation-output-names location: /tmp/guix-build-guix-0.13.0.drv-0/source/tests/derivations.scm:308 source: + (test-equal + "derivation-output-names" + '(("out") ("bar" "chbouib")) + (let ((drv1 (derivation %store "foo-0.0" %bash '())) + (drv2 (derivation + %store + "foo-0.0" + %bash + '() + #:outputs + '("bar" "chbouib")))) + (list (derivation-output-names drv1) + (derivation-output-names drv2)))) expected-value: (("out") ("bar" "chbouib")) actual-value: (("out") ("bar" "chbouib")) result: PASS test-name: offloadable-derivation? location: /tmp/guix-build-guix-0.13.0.drv-0/source/tests/derivations.scm:316 source: + (test-assert + "offloadable-derivation?" + (and (offloadable-derivation? + (derivation %store "foo" %bash '())) + (offloadable-derivation? + (derivation + %store + "foo" + %bash + '() + #:substitutable? + #f)) + (not (offloadable-derivation? + (derivation + %store + "foo" + %bash + '() + #:local-build? + #t))))) actual-value: #t result: PASS test-name: substitutable-derivation? location: /tmp/guix-build-guix-0.13.0.drv-0/source/tests/derivations.scm:325 source: + (test-assert + "substitutable-derivation?" + (and (substitutable-derivation? + (derivation %store "foo" %bash '())) + (substitutable-derivation? + (derivation + %store + "foo" + %bash + '() + #:local-build? + #t)) + (not (substitutable-derivation? + (derivation + %store + "foo" + %bash + '() + #:substitutable? + #f))))) actual-value: #t result: PASS test-name: fixed-output-derivation? location: /tmp/guix-build-guix-0.13.0.drv-0/source/tests/derivations.scm:334 source: + (test-assert + "fixed-output-derivation?" + (let* ((builder + (add-text-to-store + %store + "my-fixed-builder.sh" + "echo -n hello > $out" + '())) + (hash (sha256 (string->utf8 "hello"))) + (drv (derivation + %store + "fixed" + %bash + `(,builder) + #:inputs + `((,builder)) + #:hash + hash + #:hash-algo + 'sha256))) + (fixed-output-derivation? drv))) actual-value: #t result: PASS test-name: fixed-output derivation location: /tmp/guix-build-guix-0.13.0.drv-0/source/tests/derivations.scm:344 source: + (test-assert + "fixed-output derivation" + (let* @ build-started /tmp/guix-tests/store/k4nhzjjfk1acbcpsvm2yhxkj5jv= qm59l-fixed.drv - x86_64-linux /tmp/guix-tests/var/log/guix/drvs/k4//nhzjjf= k1acbcpsvm2yhxkj5jvqm59l-fixed.drv.bz2 @ build-succeeded /tmp/guix-tests/store/k4nhzjjfk1acbcpsvm2yhxkj5jvqm59l-fi= xed.drv - @ build-started /tmp/guix-tests/store/b85qz6zrg22iilj4wcvja2w69vvzp9hy-fixe= d-rec.drv - x86_64-linux /tmp/guix-tests/var/log/guix/drvs/b8//5qz6zrg22iil= j4wcvja2w69vvzp9hy-fixed-rec.drv.bz2 @ build-succeeded /tmp/guix-tests/store/b85qz6zrg22iilj4wcvja2w69vvzp9hy-fi= xed-rec.drv - ((builder + (add-text-to-store + %store + "my-fixed-builder.sh" + "echo -n hello > $out" + '())) + (hash (sha256 (string->utf8 "hello"))) + (drv (derivation + %store + "fixed" + %bash + `(,builder) + #:inputs + `((,builder)) + #:hash + hash + #:hash-algo + 'sha256)) + (succeeded? + (build-derivations %store (list drv)))) + (and succeeded? + (let ((p (derivation->output-path drv))) + (and (equal? + (string->utf8 "hello") + (call-with-input-file p get-bytevector-all)) + (bytevector? (query-path-hash %store p))))))) actual-value: #t result: PASS test-name: fixed-output derivation: output paths are equal location: /tmp/guix-build-guix-0.13.0.drv-0/source/tests/derivations.scm:359 source: + (test-assert + "fixed-output derivation: output paths are equal" + (let* ((builder1 + (add-text-to-store + %store + "fixed-builder1.sh" + "echo -n hello > $out" + '())) + (builder2 + (add-text-to-store + %store + "fixed-builder2.sh" + "echo hey; echo -n hello > $out" + '())) + (hash (sha256 (string->utf8 "hello"))) + (drv1 (derivation + %store + "fixed" + %bash + `(,builder1) + #:hash + hash + #:hash-algo + 'sha256)) + (drv2 (derivation + %store + "fixed" + %bash + `(,builder2) + #:hash + hash + #:hash-algo + 'sha256)) + (succeeded? + (build-derivations %store (list drv1 drv2)))) + (and succeeded? + (equal? + (derivation->output-path drv1) + (derivation->output-path drv2))))) actual-value: #t result: PASS test-name: fixed-output derivation, recursive location: /tmp/guix-build-guix-0.13.0.drv-0/source/tests/derivations.scm:376 source: + (test-assert + "fixed-output derivation, recursive" + (let* ((builder + (add-text-to-store + %store + "my-fixed-builder.sh" + "echo -n hello > $out" + '())) + (hash (sha256 (string->utf8 "hello"))) + (drv (derivation + %store + "fixed-rec" + %bash + `(,builder) + #:inputs + `((,builder)) + #:hash + (base32 + "0sg9f58l1jj88w6pdrfdpj5x9b1zrwszk84j81zvby36q9whhhqa") + #:hash-algo + 'sha256 + #:recursive? + #t)) + (succeeded? + (build-derivations %store (list drv)))) + (and succeeded? + (let ((p (derivation->output-path drv))) + (and (equal? + (string->utf8 "hello") + (call-with-input-file p get-bytevector-all)) + (bytevector? (query-path-hash %store p))))))) actual-value: #t result: PASS test-name: derivation with a fixed-output input location: /tmp/guix-build-guix-0.13.0.drv-0/source/tests/derivations.scm:393 source: + (test-assert + "derivation with a fixed-output input" + (let* ((builder1 + (add-text-to-store + %store + "fixed-builder1.sh" + "echo -n hello > $out" + '())) + (builder2 + (add-text-to-store + %store + "fixed-builder2.sh" + "echo hey; echo -n hello > $out" + '())) + (hash (sha256 (string->utf8 "hello"))) + (fixed1 + (derivation + @ build-started /tmp/guix-tests/store/2q3q6qs3wvi5d5v807lgn76ab0q4341v-fi= nal.drv - x86_64-linux /tmp/guix-tests/var/log/guix/drvs/2q//3q6qs3wvi5d5v8= 07lgn76ab0q4341v-final.drv.bz2 /tmp/guix-tests/store/7bdcga4xc915pgzf524xhjk677521whr-fixed @ build-succeeded /tmp/guix-tests/store/2q3q6qs3wvi5d5v807lgn76ab0q4341v-fi= nal.drv - @ build-started /tmp/guix-tests/store/jgsbqbf10dnfyjmyjsphx715znbn8rhv-fixe= d.drv - x86_64-linux /tmp/guix-tests/var/log/guix/drvs/jg//sbqbf10dnfyjmyjs= phx715znbn8rhv-fixed.drv.bz2 @ build-succeeded /tmp/guix-tests/store/jgsbqbf10dnfyjmyjsphx715znbn8rhv-fi= xed.drv - @ build-started /tmp/guix-tests/store/1s96ljyrlllvp5b91s56i5hdy2chhyw2-fixe= d.drv - x86_64-linux /tmp/guix-tests/var/log/guix/drvs/1s//96ljyrlllvp5b91s= 56i5hdy2chhyw2-fixed.drv.bz2 @ build-succeeded /tmp/guix-tests/store/1s96ljyrlllvp5b91s56i5hdy2chhyw2-fi= xed.drv - %store + "fixed" + %bash + `(,builder1) + #:hash + hash + #:hash-algo + 'sha256)) + (fixed2 + (derivation + %store + "fixed" + %bash + `(,builder2) + #:hash + hash + #:hash-algo + 'sha256)) + (fixed-out (derivation->output-path fixed1)) + (builder3 + (add-text-to-store + %store + "final-builder.sh" + "echo $in ; (read -u 3 c; echo $c) 3< $in > $out" + '())) + (final1 + (derivation + %store + "final" + %bash + `(,builder3) + #:env-vars + `(("in" unquote fixed-out)) + #:inputs + `((,%bash) (,builder3) (,fixed1)))) + (final2 + (derivation + %store + "final" + %bash + `(,builder3) + #:env-vars + `(("in" unquote fixed-out)) + #:inputs + `((,%bash) (,builder3) (,fixed2)))) + (succeeded? + (build-derivations %store (list final1 final2)))) + (and succeeded? + (equal? + (derivation->output-path final1) + (derivation->output-path final2))))) actual-value: #t result: PASS test-name: multiple-output derivation location: /tmp/guix-build-guix-0.13.0.drv-0/source/tests/derivations.scm:427 source: + (test-assert + "multiple-output derivation" + (let* ((builder + (add-text-to-store + %store + "my-fixed-builder.sh" + "echo one > $out ; echo two > $second" + '())) + (drv (derivation + %store + "fixed" + %bash + `(,builder) + #:env-vars + '(("HOME" . "/homeless") + ("zzz" . "Z!") + ("AAA" . "A!")) + #:inputs + `((,%bash) (,builder)) + #:outputs + '("out" "second"))) + (succeeded? + (build-derivations %store (list drv)))) + (and succeeded? + (let ((one (derivation->output-path drv "out")) + (two (derivation->output-path drv "second"))) + (and (lset=3D equal? + (derivation->output-paths drv) + `(("out" unquote one) ("second" unquote two))) + (eq? 'one (call-with-input-file one read)) + (eq? 'two (call-with-input-file two read))))))) actual-value: #t result: PASS test-name: multiple-output derivation, non-alphabetic order location: /tmp/guix-build-guix-0.13.0.drv-0/source/tests/derivations.scm:448 source: + (test-assert + "multiple-output derivation, non-alphabetic order" + (let* ((builder + (add-text-to-store + %store + "my-fixed-builder.sh" + "echo one > $out ; echo two > $AAA" + '())) + (drv (derivation + %store + "fixed" + %bash + `(,builder) + #:inputs + `((,%bash) (,builder)) + #:outputs + '("out" "AAA"))) + (succeeded? + (build-derivations %store (list drv)))) + (and succeeded? + (let ((one (derivation->output-path drv "out")) + (two (derivation->output-path drv "AAA"))) + (and (eq? 'one (call-with-input-file one read)) + (eq? 'two (call-with-input-file two read))))))) actual-value: #t result: PASS test-name: read-derivation vs. derivation location: /tmp/guix-build-guix-0.13.0.drv-0/source/tests/derivations.scm:465 source: + (test-assert + "read-derivation vs. derivation" + (let* ((sources + (unfold + (cut >=3D <> 10) + (lambda (n) + (add-text-to-store + %store + (format #f "input~a" n) + (random-text))) + #{1+}# + 0)) + (inputs + (map (lambda (file) + (derivation + %store + "derivation-input" + %bash + '() + #:inputs + `((,%bash) (,file)))) + sources)) + (builder + (add-text-to-store + %store + "builder.sh" + "echo one > $one ; echo two > $two" + '())) + (drv (derivation + %store + "derivation" + %bash + `(,builder) + #:inputs + `((,%bash) + (,builder) + ,@(map list (append sources inputs))) + #:outputs + '("two" "one"))) + (drv* (call-with-input-file + (derivation-file-name drv) + read-derivation))) + (equal? drv* drv))) actual-value: #t result: PASS test-name: multiple-output derivation, derivation-path->output-path location: /tmp/guix-build-guix-0.13.0.drv-0/source/tests/derivations.scm:492 source: + (test-assert + "multiple-output derivation, derivation-path->output-path" + (let* ((builder + (add-text-to-store + %store + "builder.sh" + "echo one > $out ; echo two > $second" + '())) + (drv (derivation + %store + "multiple" + %bash + `(,builder) + #:outputs + '("out" "second"))) + (drv-file (derivation-file-name drv)) + (one (derivation->output-path drv "out")) + (two (derivation->output-path drv "second")) + (first (derivation-path->output-path drv-file "out")) + (second + (derivation-path->output-path drv-file "second"))) + (and (not (string=3D? one two)) + (string-suffix? "-second" two) + (string=3D? first one) + (string=3D? second two)))) actual-value: #t result: PASS test-name: user of multiple-output derivation location: /tmp/guix-build-guix-0.13.0.drv-0/source/tests/derivations.scm:509 source: + (test-assert + "user of multiple-output derivation" + (let* ((builder1 + (add-text-to-store + %store + "my-mo-builder.sh" + "echo one > $out ; echo two > $two" + '())) + (mdrv (derivation + %store + "multiple-output" + %bash + `(,builder1) + #:inputs + `((,%bash) (,builder1)) + #:outputs + '("out" "two"))) + (builder2 + (add-text-to-store + %store + "my-mo-user-builder.sh" + "read x < $one;\n re= ad y < $two;\n echo \"($x $y)\" > $= out" + '())) + (udrv (derivation + %store + "multiple-output-user" + %bash + `(,builder2) + #:env-vars + `(("one" + unquote + (derivation->output-path mdrv "out")) + ("two" + unquote + (derivation->output-path mdrv "two"))) + #:inputs + `((,%bash) (,builder2) (,mdrv) (,mdrv "two"))))) + (and (build-derivations %store (list (pk 'udrv udrv))) + (let ((p (derivation->output-path udrv))) + (and (valid-path? %store p) + (equal? '(one two) (call-with-input-file p read))))))) ;;; (udrv # @ build-started /tmp/guix-tests/store/iryf= 8h5akyy02qd3dd9ps1ka026cyanz-multiple-output.drv - x86_64-linux /tmp/guix-t= ests/var/log/guix/drvs/ir//yf8h5akyy02qd3dd9ps1ka026cyanz-multiple-output.d= rv.bz2 @ build-succeeded /tmp/guix-tests/store/iryf8h5akyy02qd3dd9ps1ka026cyanz-mu= ltiple-output.drv - @ build-started /tmp/guix-tests/store/d1iq16cxzglxwmv478pk9viic0vm0ca2-mult= iple-output-user.drv - x86_64-linux /tmp/guix-tests/var/log/guix/drvs/d1//i= q16cxzglxwmv478pk9viic0vm0ca2-multiple-output-user.drv.bz2 @ build-succeeded /tmp/guix-tests/store/d1iq16cxzglxwmv478pk9viic0vm0ca2-mu= ltiple-output-user.drv - @ build-started /tmp/guix-tests/store/mbi7gj0nlckkz5xchza6rl5vwsnybh73-clos= ure-graphs.drv - x86_64-linux /tmp/guix-tests/var/log/guix/drvs/mb//i7gj0nl= ckkz5xchza6rl5vwsnybh73-closure-graphs.drv.bz2 @ build-succeeded /tmp/guix-tests/store/mbi7gj0nlckkz5xchza6rl5vwsnybh73-cl= osure-graphs.drv - @ build-started /tmp/guix-tests/store/q4wh93j1i84snrx51al231wnj4g5i99b-allo= wed.drv - x86_64-linux /tmp/guix-tests/var/log/guix/drvs/q4//wh93j1i84snrx5= 1al231wnj4g5i99b-allowed.drv.bz2 @ build-succeeded /tmp/guix-tests/store/q4wh93j1i84snrx51al231wnj4g5i99b-al= lowed.drv - @ build-started /tmp/guix-tests/store/nxjmh1ipl69ak2x01igkqr2m0qg312bs-disa= llowed.drv - x86_64-linux /tmp/guix-tests/var/log/guix/drvs/nx//jmh1ipl69ak= 2x01igkqr2m0qg312bs-disallowed.drv.bz2 output (`/tmp/guix-tests/store/sjsz32mf9z3nwz33v72l68x0l3m4gdy0-disallowed'= ) is not allowed to refer to path `/tmp/guix-tests/store/bdx3lhq3793i8lz6fv= ldrp917ba52v1v-foo' @ build-failed /tmp/guix-tests/store/nxjmh1ipl69ak2x01igkqr2m0qg312bs-disal= lowed.drv - 1 output (`/tmp/guix-tests/store/sjsz32mf9z3nwz33v72l68x0l3m4gd= y0-disallowed') is not allowed to refer to path `/tmp/guix-tests/store/bdx3= lhq3793i8lz6fvldrp917ba52v1v-foo' /tmp/guix-tests/store/01sib6yydjyifqm8is82l8q4xr6g84lx-multiple-output-user= 1ac8460>) actual-value: #t result: PASS test-name: derivation with #:references-graphs location: /tmp/guix-build-guix-0.13.0.drv-0/source/tests/derivations.scm:542 source: + (test-assert + "derivation with #:references-graphs" + (let* ((input1 + (add-text-to-store + %store + "foo" + "hello" + (list %bash))) + (input2 + (add-text-to-store + %store + "bar" + (number->string (random 7777)) + (list input1))) + (builder + (add-text-to-store + %store + "build-graph" + (format + #f + "\n~a $out\n (while read l ; do echo $l ; done) < bash > $= out/bash\n (while read l ; do echo $l ; done) < input1 > $out/input1\n (whi= le read l ; do echo $l ; done) < input2 > $out/input2" + %mkdir) + (list %mkdir))) + (drv (derivation + %store + "closure-graphs" + %bash + `(,builder) + #:references-graphs + `(("bash" unquote %bash) + ("input1" unquote input1) + ("input2" unquote input2)) + #:inputs + `((,%bash) (,builder)))) + (out (derivation->output-path drv))) + (define (deps path . deps) + (let ((count (length deps))) + (string-append + path + "\n\n" + (number->string count) + "\n" + (string-join (sort deps string? input1 %bash) + (string-append (deps %bash) (deps input1 %bash)) + (string-append (deps input1 %bash) (deps %bash)))) + ("/input2" + unquote + (string-concatenate + (map cdr + (sort (map (lambda (p d) (cons p (apply deps p d))) + (list %bash input1 input2) + (list '() (list %bash) (list input1))) + (lambda (x y) + (match x + ((p1 . _) + (match y + ((p2 . _) + (string $out") + #:inputs + `((,%bash)) + #:allowed-references + '()))) + (build-derivations %store (list drv)))) actual-value: #t result: PASS test-name: derivation #:allowed-references, not allowed location: /tmp/guix-build-guix-0.13.0.drv-0/source/tests/derivations.scm:599 source: + (test-assert + "derivation #:allowed-references, not allowed" + (let* ((txt (add-text-to-store %store "foo" "Hello, world.")) + (drv (derivation + %store + "disallowed" + %bash + `("-c" ,(string-append "echo " txt "> $out")) + #:inputs + `((,%bash) (,txt)) + #:allowed-references + '()))) + (guard (c ((nix-protocol-error? c) #t)) + (build-derivations %store (list drv)) + #f))) actual-value: #t result: PASS test-name: @ build-started /tmp/guix-tests/store/gn8l3dbhnpjd4xnaq16jnigicb= 2yqv68-allowed.drv - x86_64-linux /tmp/guix-tests/var/log/guix/drvs/gn//8l3= dbhnpjd4xnaq16jnigicb2yqv68-allowed.drv.bz2 @ build-succeeded /tmp/guix-tests/store/gn8l3dbhnpjd4xnaq16jnigicb2yqv68-al= lowed.drv - @ build-started /tmp/guix-tests/store/wi2xv7yipw4nx5xls95bygbj7dl62ml8-disa= llowed.drv - x86_64-linux /tmp/guix-tests/var/log/guix/drvs/wi//2xv7yipw4nx= 5xls95bygbj7dl62ml8-disallowed.drv.bz2 output (`/tmp/guix-tests/store/x16606f0yf78viwdwhzcgvqcm8p8m1zf-disallowed'= ) is not allowed to refer to path `/tmp/guix-tests/store/x16606f0yf78viwdwh= zcgvqcm8p8m1zf-disallowed' @ build-failed /tmp/guix-tests/store/wi2xv7yipw4nx5xls95bygbj7dl62ml8-disal= lowed.drv - 1 output (`/tmp/guix-tests/store/x16606f0yf78viwdwhzcgvqcm8p8m1= zf-disallowed') is not allowed to refer to path `/tmp/guix-tests/store/x166= 06f0yf78viwdwhzcgvqcm8p8m1zf-disallowed' @ build-started /tmp/guix-tests/store/vbnwanpq295lszpzd9x5rw8gyvzdai6f-disa= llowed.drv - x86_64-linux /tmp/guix-tests/var/log/guix/drvs/vb//nwanpq295ls= zpzd9x5rw8gyvzdai6f-disallowed.drv.bz2 @ build-succeeded /tmp/guix-tests/store/vbnwanpq295lszpzd9x5rw8gyvzdai6f-di= sallowed.drv - @ build-started /tmp/guix-tests/store/cbw7ax1vdz8i453gibbky564xs1iggmr-disd= isallowed.drv - x86_64-linux /tmp/guix-tests/var/log/guix/drvs/cb//w7ax1vdz= 8i453gibbky564xs1iggmr-disdisallowed.drv.bz2 output (`/tmp/guix-tests/store/lnay1n74vhpqndqwd4r7k439xw98kd2a-disdisallow= ed') is not allowed to refer to path `/tmp/guix-tests/store/bdx3lhq3793i8lz= 6fvldrp917ba52v1v-foo' @ build-failed /tmp/guix-tests/store/cbw7ax1vdz8i453gibbky564xs1iggmr-disdi= sallowed.drv - 1 output (`/tmp/guix-tests/store/lnay1n74vhpqndqwd4r7k439xw9= 8kd2a-disdisallowed') is not allowed to refer to path `/tmp/guix-tests/stor= e/bdx3lhq3793i8lz6fvldrp917ba52v1v-foo' @ build-started /tmp/guix-tests/store/31yf7n2dcl507am5akav41kpk53h8ixj-leak= ed-env-vars.drv - x86_64-linux /tmp/guix-tests/var/log/guix/drvs/31//yf7n2d= cl507am5akav41kpk53h8ixj-leaked-env-vars.drv.bz2 @ build-succeeded /tmp/guix-tests/store/31yf7n2dcl507am5akav41kpk53h8ixj-le= aked-env-vars.drv - derivation #:allowed-references, self allowed location: /tmp/guix-build-guix-0.13.0.drv-0/source/tests/derivations.scm:611 source: + (test-assert + "derivation #:allowed-references, self allowed" + (let ((drv (derivation + %store + "allowed" + %bash + '("-c" "echo $out > $out") + #:inputs + `((,%bash)) + #:allowed-references + '("out")))) + (build-derivations %store (list drv)))) actual-value: #t result: PASS test-name: derivation #:allowed-references, self not allowed location: /tmp/guix-build-guix-0.13.0.drv-0/source/tests/derivations.scm:618 source: + (test-assert + "derivation #:allowed-references, self not allowed" + (let ((drv (derivation + %store + "disallowed" + %bash + `("-c" ,"echo $out > $out") + #:inputs + `((,%bash)) + #:allowed-references + '()))) + (guard (c ((nix-protocol-error? c) #t)) + (build-derivations %store (list drv)) + #f))) actual-value: #t result: PASS test-name: derivation #:disallowed-references, ok location: /tmp/guix-build-guix-0.13.0.drv-0/source/tests/derivations.scm:629 source: + (test-assert + "derivation #:disallowed-references, ok" + (let ((drv (derivation + %store + "disallowed" + %bash + '("-c" "echo hello > $out") + #:inputs + `((,%bash)) + #:disallowed-references + '("out")))) + (build-derivations %store (list drv)))) actual-value: #t result: PASS test-name: derivation #:disallowed-references, not ok location: /tmp/guix-build-guix-0.13.0.drv-0/source/tests/derivations.scm:636 source: + (test-assert + "derivation #:disallowed-references, not ok" + (let* ((txt (add-text-to-store %store "foo" "Hello, world.")) + (drv (derivation + %store + "disdisallowed" + %bash + `("-c" ,(string-append "echo " txt "> $out")) + #:inputs + `((,%bash) (,txt)) + #:disallowed-references + (list txt)))) + (guard (c ((nix-protocol-error? c) #t)) + (build-derivations %store (list drv)) + #f))) actual-value: #t result: PASS test-name: derivation #:leaked-env-vars location: /tmp/guix-build-guix-0.13.0.drv-0/source/tests/derivations.scm:651 source: + (test-equal + "derivation #:leaked-env-vars" + (getenv "NIX_STATE_DIR") + (let* ((value (getenv "NIX_STATE_DIR")) + (drv (derivation + %store + "leaked-env-vars" + %bash + '("-c" "echo -n $NIX_STATE_DIR > $out") + #:hash + (sha256 (string->utf8 value)) + #:hash-algo + 'sha256 + #:inputs + `((,%bash)) + #:leaked-env-vars + '("NIX_STATE_DIR")))) + (and (build-derivations %store (list drv)) + (call-with-input-file + (derivation->output-path drv) + get-string-all)))) expected-value: "/tmp/guix-tests/var/11448" actual-value: "/tmp/guix-tests/var/11448" result: PASS test-name: build derivation with coreutils location: /tmp/guix-build-guix-0.13.0.drv-0/source/tests/derivations.scm:672 source: + (test-assert + "build derivation with coreutils" + (let* ((builder + (add-text-to-store + %store + "build-with-coreutils.sh" + "echo $PATH ; mkdir --version ; mkdir $out ; touch $out/good" + '())) + (drv (derivation + %store + "foo" + %bash + `(,builder) + #:env-vars + `(("PATH" + unquote + (string-append + (derivation->output-path %coreutils) + @ build-started /tmp/guix-tests/store/9d7mw11w6hmhnzq7ns8fl91plvyyimpj-a.= drv - x86_64-linux /tmp/guix-tests/var/log/guix/drvs/9d//7mw11w6hmhnzq7ns8f= l91plvyyimpj-a.drv.bz2 @ build-succeeded /tmp/guix-tests/store/9d7mw11w6hmhnzq7ns8fl91plvyyimpj-a.= drv - "/bin"))) + #:inputs + `((,builder) (,%coreutils)))) + (succeeded? + (build-derivations %store (list drv)))) + (and succeeded? + (let ((p (derivation->output-path drv))) + (and (valid-path? %store p) + (file-exists? (string-append p "/good"))))))) result: SKIP test-name: build-expression->derivation and invalid module name location: /tmp/guix-build-guix-0.13.0.drv-0/source/tests/derivations.scm:695 source: + (test-equal + "build-expression->derivation and invalid module name" + '(file-search-error + "guix/module/that/does/not/exist.scm") + (guard (c ((file-search-error? c) + (list 'file-search-error + (file-search-error-file-name c)))) + (build-expression->derivation + %store + "foo" + #t + #:modules + '((guix module that does not exist))))) expected-value: (file-search-error "guix/module/that/does/not/exist.scm") actual-value: (file-search-error "guix/module/that/does/not/exist.scm") result: PASS test-name: build-expression->derivation and builder encoding location: /tmp/guix-build-guix-0.13.0.drv-0/source/tests/derivations.scm:704 source: + (test-equal + "build-expression->derivation and builder encoding" + '("UTF-8" #t) + (let* ((exp '(=CE=BB (=CE=B1) (+ =CE=B1 1))) + (drv (build-expression->derivation %store "foo" exp))) + (match (derivation-builder-arguments drv) + ((... builder) + (with-fluids + ((%default-port-encoding "UTF-8")) + (call-with-input-file + builder + (lambda (port) + (list (port-encoding port) + (->bool + (string-contains + (get-string-all port) + "(=CE=BB (=CE=B1) (+ =CE=B1 1))")))))))))) expected-value: ("UTF-8" #t) actual-value: ("UTF-8" #t) result: PASS test-name: build-expression->derivation and derivation-prerequisites location: /tmp/guix-build-guix-0.13.0.drv-0/source/tests/derivations.scm:718 source: + (test-assert + "build-expression->derivation and derivation-prerequisites" + (let ((drv (build-expression->derivation %store "fail" #f))) + (any (match-lambda + (($ path) + (string=3D? + path + (derivation-file-name (%guile-for-build))))) + (derivation-prerequisites drv)))) actual-value: #t result: PASS test-name: derivation-prerequisites and valid-derivation-input? location: /tmp/guix-build-guix-0.13.0.drv-0/source/tests/derivations.scm:725 source: + (test-assert + "derivation-prerequisites and valid-derivation-input?" + (let* ((a (build-expression->derivation + %store + "a" + '(mkdir %output))) + (b (build-expression->derivation + %store + "b" + `(list ,(random-text)))) + (c (build-expression->derivation + %store + "c" + `(mkdir %output) + #:inputs + `(("a" ,a) ("b" ,b))))) + (build-derivations + %store + (list a + (package-derivation %store %bootstrap-guile))) + (match (derivation-prerequisites + c + (cut valid-derivation-input? %store <>)) + ((($ file ("out"))) + (string=3D? file (derivation-file-name b))) + (x (pk 'fail x #f))))) actual-value: #t result: PASS test-name: build-expression->derivation without inputs location: /tmp/guix-build-guix-0.13.0.drv-0/source/tests/derivations.scm:743 source: + (test-assert + "build-expression->derivation without inputs" + (let* ((builder + '(begin + (mkdir %output) + (call-with-output-file + (string-append %output "/test") + (lambda (p) (display '(hello guix) p))))) + (drv (@ build-started /tmp/guix-tests/store/siz27i7vk0g1xngsx049= p9vrvss9c712-goo.drv - x86_64-linux /tmp/guix-tests/var/log/guix/drvs/si//z= 27i7vk0g1xngsx049p9vrvss9c712-goo.drv.bz2 @ build-succeeded /tmp/guix-tests/store/siz27i7vk0g1xngsx049p9vrvss9c712-go= o.drv - substitute: warning: authentication and authorization of substitutes disabl= ed! substitute: guix substitute: warning: ACL for archive imports seems to be u= ninitialized, substitutes may be unavailable @ build-started /tmp/guix-tests/store/qfl2559affw2jnz43j8c6dx0rjngqns3-sile= nt.drv - x86_64-linux /tmp/guix-tests/var/log/guix/drvs/qf//l2559affw2jnz43= j8c6dx0rjngqns3-silent.drv.bz2 building of `/tmp/guix-tests/store/qfl2559affw2jnz43j8c6dx0rjngqns3-silent.= drv' timed out after 1 seconds of silence @ build-failed /tmp/guix-tests/store/qfl2559affw2jnz43j8c6dx0rjngqns3-silen= t.drv - timeout killing process 11645 substitute: warning: authentication and authorization of substitutes disabl= ed! substitute: guix substitute: warning: ACL for archive imports seems to be u= ninitialized, substitutes may be unavailable @ build-started /tmp/guix-tests/store/6d3dbcj98inv78d5abwp41fbis15kvy6-slow= .drv - x86_64-linux /tmp/guix-tests/var/log/guix/drvs/6d//3dbcj98inv78d5abw= p41fbis15kvy6-slow.drv.bz2 building of `/tmp/guix-tests/store/6d3dbcj98inv78d5abwp41fbis15kvy6-slow.dr= v' timed out after 1 seconds @ build-failed /tmp/guix-tests/store/6d3dbcj98inv78d5abwp41fbis15kvy6-slow.= drv - timeout killing process 11655 @ build-started /tmp/guix-tests/store/cbc4v7vanc01h71qnngr0k35kvvvik9v-inpu= t.drv - x86_64-linux /tmp/guix-tests/var/log/guix/drvs/cb//c4v7vanc01h71qnn= gr0k35kvvvik9v-input.drv.bz2 @ build-succeeded /tmp/guix-tests/store/cbc4v7vanc01h71qnngr0k35kvvvik9v-in= put.drv - @ build-started /tmp/guix-tests/store/5ykgrvz6nsm8rz51hww0wfb7kj83s5x7-some= thing.drv - x86_64-linux /tmp/guix-tests/var/log/guix/drvs/5y//kgrvz6nsm8rz= 51hww0wfb7kj83s5x7-something.drv.bz2 @ build-succeeded /tmp/guix-tests/store/5ykgrvz6nsm8rz51hww0wfb7kj83s5x7-so= mething.drv - finding garbage collector roots... removing stale temporary roots file `/tmp/guix-tests/var/11448/temproots/11= 464' deleting unused links... build-expression->derivation + %store + "goo" + builder)) + (succeeded? + (build-derivations %store (list drv)))) + (and succeeded? + (let ((p (derivation->output-path drv))) + (equal? + '(hello guix) + (call-with-input-file + (string-append p "/test") + read)))))) actual-value: #t result: PASS test-name: build-expression->derivation and max-silent-time location: /tmp/guix-build-guix-0.13.0.drv-0/source/tests/derivations.scm:756 source: + (test-assert + "build-expression->derivation and max-silent-time" + (let* ((store (let ((s (open-connection))) + (set-build-options s #:max-silent-time 1) + s)) + (builder '(begin (sleep 100) (mkdir %output) #t)) + (drv (build-expression->derivation + store + "silent" + builder)) + (out-path (derivation->output-path drv))) + (guard (c ((nix-protocol-error? c) + (and (string-contains + (nix-protocol-error-message c) + "failed") + (not (valid-path? store out-path))))) + (build-derivations store (list drv)) + #f))) actual-value: #t result: PASS test-name: build-expression->derivation and timeout location: /tmp/guix-build-guix-0.13.0.drv-0/source/tests/derivations.scm:770 source: + (test-assert + "build-expression->derivation and timeout" + (let* ((store (let ((s (open-connection))) + (set-build-options s #:timeout 1) + s)) + (builder '(begin (sleep 100) (mkdir %output) #t)) + (drv (build-expression->derivation + store + "slow" + builder)) + (out-path (derivation->output-path drv))) + (guard (c ((nix-protocol-error? c) + (and (string-contains + (nix-protocol-error-message c) + "failed") + (not (valid-path? store out-path))))) + (build-derivations store (list drv)) + #f))) actual-value: #t result: PASS test-name: build-expression->derivation and derivation-prerequisites-to-bui= ld location: /tmp/guix-build-guix-0.13.0.drv-0/source/tests/derivations.scm:784 source: + (test-assert + "build-expression->derivation and derivation-prerequisites-to-build" + (let ((drv (build-expression->derivation %store "fail" #f))) + (null? (derivation-prerequisites-to-build %store drv)))) actual-value: #t result: PASS test-name: derivation-prerequisites-to-build when outputs already present location: /tmp/guix-build-guix-0.13.0.drv-0/source/tests/derivations.scm:790 source: + (test-assert + "derivation-prerequisites-to-build when outputs already present" + (let* ((builder '(begin (mkdir %output) #t)) + (input-drv + (build-expression->derivation + %store + "input" + builder)) + (input-path + (derivation-output-path + (assoc-ref (derivation-outputs input-drv) "out"))) + (drv (build-expression->derivation + %store + "something" + builder + #:inputs + `(("i" ,input-drv)))) + (output (derivation->output-path drv))) + (when (valid-path? %store input-path) + (delete-paths %store (list input-path))) + (when (valid-path? %store output) + (delete-paths %store (list output))) + (and (equal? + (map derivation-input-path + (derivation-prerequisites-to-build %store drv)) + (list (derivation-file-name input-drv))) + (build-derivations %store (list drv)) + (delete-paths %store (list input-path)) + (not (valid-path? %store input-path)) + (null? (derivation-prerequisites-to-build %store drv))))) actual-value: #t result: PASS test-name: substitute: warning: authentication and authorization of substit= utes disabled! substitute: guix substitute: warning: ACL for archive imports seems to be u= ninitialized, substitutes may be unavailable substitute: warning: authentication and authorization of substitutes disabl= ed! substitute: guix substitute: warning: ACL for archive imports seems to be u= ninitialized, substitutes may be unavailable derivation-prerequisites-to-build and substitutes location: /tmp/guix-build-guix-0.13.0.drv-0/source/tests/derivations.scm:819 source: + (test-assert + "derivation-prerequisites-to-build and substitutes" + (let* ((store (open-connection)) + (drv (build-expression->derivation + store + "prereq-subst" + (random 1000))) + (output (derivation->output-path drv))) + (set-build-options + store + #:use-substitutes? + #t + #:substitute-urls + (%test-substitute-urls)) + (with-derivation-narinfo + drv + (let-values + (((build download) + (derivation-prerequisites-to-build store drv)) + ((build* download*) + (derivation-prerequisites-to-build + store + drv + #:substitutable? + (const #f)))) + (and (null? build) + (equal? download (list output)) + (null? download*) + (null? build*)))))) actual-value: #t result: PASS test-name: derivation-prerequisites-to-build and substitutes, non-substitut= able build location: /tmp/guix-build-guix-0.13.0.drv-0/source/tests/derivations.scm:841 source: + (test-assert + "derivation-prerequisites-to-build and substitutes, non-substitutable b= uild" + (let* ((store (open-connection)) + (drv (build-expression->derivation + store + "prereq-no-subst" + (random 1000) + #:substitutable? + #f)) + (output (derivation->output-path drv))) + (set-build-options + store + #:use-substitutes? + #t + #:substitute-urls + (%test-substitute-urls)) + (with-derivation-narinfo + drv + (let-values + (((build download) + (derivation-prerequisites-to-build store drv))) + (and (null? download) + (match build + (((? derivation-input? input)) + (string=3D? + (derivation-input-path input) + (derivation-file-name drv))))))))) actual-value: #t result: PASS test-name: derivation-prerequisites-to-build and substitutes, local build location: /tmp/guix-build-guix-0.13.0.drv-0/source/tests/derivations.scm:863 source: + (test-assert + "derivation-prerequisites-to-build and substitutes, local build" + (with-store + store + (let* ((drv (build-expression->derivation + store + "prereq-subst-local" + (random 1000) + #:local-build? + #t)) + (output (derivation->output-path drv))) + (set-build-options + store + #:use-substitutes? + #t + #:substitute-urls + (%test-substitute-urls)) + (with-derivation-narinfo + drv + (let-values + (((build download) + (derivation-prerequisites-to-build store drv))) + (and (null? build) + (match download + (((? string? item)) + (string=3D? item (derivation->output-path drv)))))= ))))) actual-value: #t result: PASS test-name: derivation-prerequisites-to-build in 'check' mode location: /tmp/guix-build-guix-0.13.0.drv-0/source/tests/derivations.scm:885 source: + (test-assert + "derivation-prerequisites-to-build in 'check' mode" + (with-store + store + (let* ((dep (build-expression->derivation + store + "dep" + `(begin ,(random-text) (mkdir %output)))) + (drv (build-expression->derivation + store + "to-check" + '(mkdir %output) + #:inputs + `(("dep" ,dep))))) + (build-derivations store (list drv)) + (delete-paths + store + (list (derivation->output-path dep))) + (and (null? (derivation-prerequisites-to-build store drv)) + (match (substitute: warning: authentication and authorization = of substitutes disabled! substitute: guix substitute: warning: ACL for archive imports seems to be u= ninitialized, substitutes may be unavailable building path(s) `/tmp/guix-tests/store/5rphcyyr0qnzr2asxpgs6v81ax49vx2j-de= p' building path(s) `/tmp/guix-tests/store/fxglm2n761f2950jkmqpk41hxycps0qx-to= -check' finding garbage collector roots... removing stale temporary roots file `/tmp/guix-tests/var/11448/temproots/11= 677' removing stale temporary roots file `/tmp/guix-tests/var/11448/temproots/.f= use_hidden0000dad000001437' deleting `/tmp/guix-tests/store/5rphcyyr0qnzr2asxpgs6v81ax49vx2j-dep' deleting `/tmp/guix-tests/store/trash' deleting unused links... note: currently hard linking saves 0.09 MiB @ build-started /tmp/guix-tests/store/kvz3csrwpha43pk3mvhwsrzw2yz5qviv-fail= .drv - x86_64-linux /tmp/guix-tests/var/log/guix/drvs/kv//z3csrwpha43pk3mvh= wsrzw2yz5qviv-fail.drv.bz2 builder for `/tmp/guix-tests/store/kvz3csrwpha43pk3mvhwsrzw2yz5qviv-fail.dr= v' failed with exit code 1 @ build-failed /tmp/guix-tests/store/kvz3csrwpha43pk3mvhwsrzw2yz5qviv-fail.= drv - 1 builder for `/tmp/guix-tests/store/kvz3csrwpha43pk3mvhwsrzw2yz5qviv= -fail.drv' failed with exit code 1 @ build-started /tmp/guix-tests/store/v3d6ak4h46illn6yqkid6fsid3i749yy-doub= le.drv - x86_64-linux /tmp/guix-tests/var/log/guix/drvs/v3//d6ak4h46illn6yq= kid6fsid3i749yy-double.drv.bz2 @ build-succeeded /tmp/guix-tests/store/v3d6ak4h46illn6yqkid6fsid3i749yy-do= uble.drv - derivation-prerequisites-to-build + store + drv + #:mode + (build-mode check)) + ((input) + (string=3D? + (derivation-input-path input) + (derivation-file-name dep)))))))) actual-value: #t result: PASS test-name: substitution-oracle and #:substitute? #f location: /tmp/guix-build-guix-0.13.0.drv-0/source/tests/derivations.scm:905 source: + (test-assert + "substitution-oracle and #:substitute? #f" + (with-store + store + (let* ((dep (build-expression->derivation + store + "dep" + `(begin ,(random-text) (mkdir %output)))) + (drv (build-expression->derivation + store + "not-subst" + `(begin ,(random-text) (mkdir %output)) + #:substitutable? + #f + #:inputs + `(("dep" ,dep)))) + (query #f)) + (define (record-substitutable-path-query store paths) + (when query (error "already called!" query)) + (set! query paths) + '()) + (mock ((guix store) + substitutable-paths + record-substitutable-path-query) + (let ((pred (substitution-oracle store (list drv)))) + (pred (derivation->output-path drv)))) + (equal? + (pk 'query query) + (list (derivation->output-path dep)))))) ;;; (query ("/tmp/guix-tests/store/vz8xlbfsqkwsv4dvaa5dfvpqgngrs07d-dep")) actual-value: #t result: PASS test-name: build-expression->derivation with expression returning #f location: /tmp/guix-build-guix-0.13.0.drv-0/source/tests/derivations.scm:934 source: + (test-assert + "build-expression->derivation with expression returning #f" + (let* ((builder '(begin (mkdir %output) #f)) + (drv (build-expression->derivation + %store + "fail" + builder)) + (out-path (derivation->output-path drv))) + (guard (c ((nix-protocol-error? c) + (and (string-match + "build .* failed" + (nix-protocol-error-message c)) + (not (valid-path? %store out-path))))) + (build-derivations %store (list drv)) + #f))) actual-value: #t result: PASS test-name: build-expression->derivation with two outputs location: /tmp/guix-build-guix-0.13.0.drv-0/source/tests/derivations.scm:949 source: + (test-assert + "build-expression->derivation with two outputs" + (let* ((builder + '(begin + (call-with-output-file + (assoc-ref %outputs "out") + (lambda (p) (display '(hello) p))) + (call-with-output-file + (assoc-ref %outputs "second") + (lambda (p) (display '(world) p))))) + (drv (build-expression->derivation + %store + "double" + builder + #:outputs + '("out" "second"))) + (succeeded? + (build-derivations %store (list drv)))) + (and succeeded? + (let ((one (derivation->output-path drv)) + (two (derivation->output-path drv "second"))) + (and (equal? '(hello) (call-with-input-file one read)) + (equal? '(world) (call-with-input-file two read))))))) actual-value: #t result: PASS test-name: build-expression->derivation with one input location: /tmp/guix-build-guix-0.13.0.drv-0/source/tests/derivations.scm:968 source: + (test-assert + "build-expression->derivation with one input" + (let* ((builder + '(call-with-output-file + %output + (lambda (p) + (let ((cu (assoc-ref %build-inputs "cu"))) + (close 1) + (dup2 (port->fdes p) 1) + (execl (string-append cu "/bin/uname") + @ build-started /tmp/guix-tests/store/vs63w833h9dn987d6j8= 0x9nggmjhjj6n-module-import.drv - x86_64-linux /tmp/guix-tests/var/log/guix= /drvs/vs//63w833h9dn987d6j80x9nggmjhjj6n-module-import.drv.bz2 @ build-succeeded /tmp/guix-tests/store/vs63w833h9dn987d6j80x9nggmjhjj6n-mo= dule-import.drv - @ build-started /tmp/guix-tests/store/9xp57zkgn9n85i77xd2975k2lh6hlxrl-modu= le-import-compiled.drv - x86_64-linux /tmp/guix-tests/var/log/guix/drvs/9x/= /p57zkgn9n85i77xd2975k2lh6hlxrl-module-import-compiled.drv.bz2 @ build-succeeded /tmp/guix-tests/store/9xp57zkgn9n85i77xd2975k2lh6hlxrl-mo= dule-import-compiled.drv - @ build-started /tmp/guix-tests/store/yz1m0dxzg68vryd8yra1fiaxlni4ppfp-test= -with-modules.drv - x86_64-linux /tmp/guix-tests/var/log/guix/drvs/yz//1m0d= xzg68vryd8yra1fiaxlni4ppfp-test-with-modules.drv.bz2 @ build-succeeded /tmp/guix-tests/store/yz1m0dxzg68vryd8yra1fiaxlni4ppfp-te= st-with-modules.drv - "uname" + "-a"))))) + (drv (build-expression->derivation + %store + "uname" + builder + #:inputs + `(("cu" ,%coreutils)))) + (succeeded? + (build-derivations %store (list drv)))) + (and succeeded? + (let ((p (derivation->output-path drv))) + (string-contains + (call-with-input-file p read-line) + "GNU"))))) result: SKIP test-name: build-expression->derivation with modules location: /tmp/guix-build-guix-0.13.0.drv-0/source/tests/derivations.scm:984 source: + (test-assert + "build-expression->derivation with modules" + (let* ((builder + `(begin + (use-modules (guix build utils)) + (let ((out (assoc-ref %outputs "out"))) + (mkdir-p (string-append out "/guile/guix/nix")) + #t))) + (drv (build-expression->derivation + %store + "test-with-modules" + builder + #:modules + '((guix build utils))))) + (and (build-derivations %store (list drv)) + (let* ((p (derivation->output-path drv)) + (s (stat (string-append p "/guile/guix/nix")))) + (eq? (stat:type s) 'directory))))) actual-value: #t result: PASS test-name: build-expression->derivation: same fixed-output path location: /tmp/guix-build-guix-0.13.0.drv-0/source/tests/derivations.scm:999 source: + (test-assert + "build-expression->derivation: same fixed-output path" + (let* ((builder1 + '(call-with-output-file + %output + (lambda (p) (write "hello" p)))) + (builder2 + '(call-with-output-file + (pk 'difference-here! %output) + (lambda (p) (write "hello" p)))) + (hash (sha256 (string->utf8 "hello"))) + (input1 + (build-expression->derivation + %store + "fixed" + builder1 + #:hash + hash + #:hash-algo + 'sha256)) + (input2 + (build-expression->derivation + %store + "fixed" + builder2 + #:hash + hash + #:hash-algo + 'sha256)) + (succeeded? + (build-derivations %store (list input1 input2)))) + (and succeeded? + (not (string=3D? + (derivation-file-name input1) + (derivation-file-name input2))) + (string=3D? + (derivation->output-path input1) + (derivation->output-path input2))))) actual-value: #t result: PASS test-name: build-expression->derivation with a fixed-output input location: /tmp/guix-build-guix-0.13.0.drv-0/source/tests/derivations.scm:10= 20 source: + (test-assert + "build-expression->derivation with a fixed-output input" + (let* ((builder1 + '(call-with-output-file + %output + (lambda (p) (write "hello" p)))) + (builder2 + '(call-with-output-file + (pk 'difference-here! %output) + (lambda (p) (write "hello" p)))) + (hash (sha256 (string->utf8 "hello"))) + (input1 + (build-expression->derivation + %store + "fixed" + builder1 + #:hash + hash + #:hash-algo + 'sha256)) + (input2 + (build-expression->derivation + %store + "fixed" + builder2 + #:hash + hash + #:hash-algo + 'sha256)) + (builder3 + '(let ((input (assoc-ref %build-inputs "input"))) + (call-with-output-file + %output + (lambda (out) + (format #f "My input is ~a.~%" input))))) + (final1 + (@ build-started /tmp/guix-tests/store/8dkhnfprkjn6p5hh6abjbvh= cypif1djn-final.drv - x86_64-linux /tmp/guix-tests/var/log/guix/drvs/8d//kh= nfprkjn6p5hh6abjbvhcypif1djn-final.drv.bz2 @ build-succeeded /tmp/guix-tests/store/8dkhnfprkjn6p5hh6abjbvhcypif1djn-fi= nal.drv - @ build-started /tmp/guix-tests/store/q9ml6iwz4b8jffgd6l3jkllm0lm9g7aw-fixe= d-rec.drv - x86_64-linux /tmp/guix-tests/var/log/guix/drvs/q9//ml6iwz4b8jff= gd6l3jkllm0lm9g7aw-fixed-rec.drv.bz2 @ build-succeeded /tmp/guix-tests/store/q9ml6iwz4b8jffgd6l3jkllm0lm9g7aw-fi= xed-rec.drv - @ build-started /tmp/guix-tests/store/9a2z4zz7sraa065z4fa12g9sg6mlhkj5-smal= l-fixed-rec.drv - x86_64-linux /tmp/guix-tests/var/log/guix/drvs/9a//2z4zz7= sraa065z4fa12g9sg6mlhkj5-small-fixed-rec.drv.bz2 @ build-succeeded /tmp/guix-tests/store/9a2z4zz7sraa065z4fa12g9sg6mlhkj5-sm= all-fixed-rec.drv - @ build-started /tmp/guix-tests/store/aakag457jih22azd1mkhcvnlnv9115ky-fixe= d-rec-user.drv - x86_64-linux /tmp/guix-tests/var/log/guix/drvs/aa//kag457j= ih22azd1mkhcvnlnv9115ky-fixed-rec-user.drv.bz2 @ build-succeeded /tmp/guix-tests/store/aakag457jih22azd1mkhcvnlnv9115ky-fi= xed-rec-user.drv - build-expression->derivation + %store + "final" + builder3 + #:inputs + `(("input" ,input1)))) + (final2 + (build-expression->derivation + %store + "final" + builder3 + #:inputs + `(("input" ,input2))))) + (and (string=3D? + (derivation->output-path final1) + (derivation->output-path final2)) + (string=3D? + (derivation->output-path final1) + (derivation-path->output-path + (derivation-file-name final1))) + (build-derivations %store (list final1 final2))))) actual-value: #t result: PASS test-name: build-expression->derivation produces recursive fixed-output location: /tmp/guix-build-guix-0.13.0.drv-0/source/tests/derivations.scm:10= 51 source: + (test-assert + "build-expression->derivation produces recursive fixed-output" + (let* ((builder + '(begin + (use-modules (srfi srfi-26)) + (mkdir %output) + (chdir %output) + (call-with-output-file + "exe" + (cut display "executable" <>)) + (chmod "exe" 511) + (symlink "exe" "symlink") + (mkdir "subdir"))) + (drv (build-expression->derivation + %store + "fixed-rec" + builder + #:hash-algo + 'sha256 + #:hash + (base32 + "10k1lw41wyrjf9mxydi0is5nkpynlsvgslinics4ppir13g7d74p") + #:recursive? + #t))) + (and (build-derivations %store (list drv)) + (let* ((dir (derivation->output-path drv)) + (exe (string-append dir "/exe")) + (link (string-append dir "/symlink")) + (subdir (string-append dir "/subdir"))) + (and (executable-file? exe) + (string=3D? + "executable" + (call-with-input-file exe get-string-all)) + (string=3D? "exe" (readlink link)) + (file-is-directory? subdir)))))) actual-value: #t result: PASS test-name: build-expression->derivation uses recursive fixed-output location: /tmp/guix-build-guix-0.13.0.drv-0/source/tests/derivations.scm:10= 77 source: + (test-assert + "build-expression->derivation uses recursive fixed-output" + (let* ((builder + '(call-with-output-file + %output + (lambda (port) (display "hello" port)))) + (fixed (build-expression->derivation + %store + "small-fixed-rec" + builder + #:hash-algo + 'sha256 + #:hash + (base32 + "0sg9f58l1jj88w6pdrfdpj5x9b1zrwszk84j81zvby36q9whhhqa= ") + #:recursive? + #t)) + (in (derivation->output-path fixed)) + (builder + `(begin + (mkdir %output) + (chdir %output) + (symlink ,in "symlink"))) + (drv (build-expression->derivation + %store + "fixed-rec-user" + builder + #:inputs + `(("fixed" ,fixed))))) + (and (build-derivations %store (list drv)) + (let ((out (derivation->output-path drv))) + (string=3D? + (readlink (string-append out "/symlink")) + in))))) actual-value: #t result: PASS test-name: build-expression->derivation with #:references-graphs location: /tmp/guix-build-guix-0.13.0.drv-0/source/tests/derivations.scm:10= 99 source: + (test-assert + "build-expression->derivation with #:references-graphs" + (let* ((input (add-text-to-store + %store + "foo" + "hello" + (list %bash %mkdir))) + (builder '(copy-file "input" %output)) + @ build-started /tmp/guix-tests/store/33xr95dfil5qna3dxlzlzyvrlw9nycn0-re= ferences-graphs.drv - x86_64-linux /tmp/guix-tests/var/log/guix/drvs/33//xr= 95dfil5qna3dxlzlzyvrlw9nycn0-references-graphs.drv.bz2 @ build-succeeded /tmp/guix-tests/store/33xr95dfil5qna3dxlzlzyvrlw9nycn0-re= ferences-graphs.drv - @ build-started /tmp/guix-tests/store/ajqc0l1rbgd83hdid7ain2wr0wiwvvh4-orig= inal-drv2.drv - x86_64-linux /tmp/guix-tests/var/log/guix/drvs/aj//qc0l1rbg= d83hdid7ain2wr0wiwvvh4-original-drv2.drv.bz2 @ build-succeeded /tmp/guix-tests/store/ajqc0l1rbgd83hdid7ain2wr0wiwvvh4-or= iginal-drv2.drv - @ build-started /tmp/guix-tests/store/vks5g20fjlmi5daip35rrd34869fnql9-drv-= to-remap.drv - x86_64-linux /tmp/guix-tests/var/log/guix/drvs/vk//s5g20fjlm= i5daip35rrd34869fnql9-drv-to-remap.drv.bz2 @ build-succeeded /tmp/guix-tests/store/vks5g20fjlmi5daip35rrd34869fnql9-dr= v-to-remap.drv - (drv (build-expression->derivation + %store + "references-graphs" + builder + #:references-graphs + `(("input" unquote input)))) + (out (derivation->output-path drv))) + (define (deps path . deps) + (let ((count (length deps))) + (string-append + path + "\n\n" + (number->string count) + "\n" + (string-join (sort deps stringderivation + %store + "original-drv1" + #f + #:guile-for-build + joke)) + (drv2 (build-expression->derivation + %store + "original-drv2" + '(call-with-output-file + %output + (lambda (p) (display "hello" p))))) + (drv3 (build-expression->derivation + %store + "drv-to-remap" + '(let ((in (assoc-ref %build-inputs "in"))) + (copy-file in %output)) + #:inputs + `(("in" ,drv1)) + #:guile-for-build + joke)) + (drv4 (map-derivation + %store + drv3 + `((,drv1 unquote drv2) (,joke unquote good)))) + (out (derivation->output-path drv4))) + (and (build-derivations + %store + (list (pk 'remapped drv4))) + (call-with-input-file out get-string-all)))) ;;; (remapped # /tmp/guix-tests/store/f8prvykpaplzl0gw9qykipvi= q3vil9ws-drv-to-remap 21a2b90>) expected-value: "hello" actual-value: "hello" result: PASS test-name: map-derivation, sources location: /tmp/guix-build-guix-0.13.0.drv-0/source/tests/derivations.scm:11= 53 source: + (test-equal + "map-derivation, sources" + "hello" + (let* ((script1 + (add-text-to-store %store "fail.sh" "exit 1")) + (script2 + (add-text-to-store + %store + "hi.sh" + "echo -n hello > $out")) + (bash-full + (package-derivation + %store + (@ (gnu packages bash) bash))) + (drv1 (derivation + %store + "drv-to-remap" + (derivation->output-path bash-full) + `("-e" ,script1) + #:inputs + `((,bash-full) (,script1)))) + (drv2 (map-derivation + %store + drv1 + `((,bash-full unquote %bash) + (,script1 unquote script2)))) + (out (derivation->output-path drv2))) + (and (build-derivations + %store + (list (pk 'remapped* drv2))) + (call-with-input-file out get-string-all)))) ;;; (remapped* # /tmp/guix-tests/store/d16rf6zch2w23cn1v1gm8r3w12pc7y2m-drv-to-remap 1c010= f0>) expected-value: "hello" actual-value: "hello" result: PASS SKIP: tests/packages =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D test-name: printer with location location: /tmp/guix-build-guix-0.13.0.drv-0/source/tests/packages.scm:69 source: + (test-assert + "printer with location" + (string-match + "^#$" + (with-output-to-string + (lambda () + (write (dummy-package + "foo" + (location (make-location "foo.scm" 42 7)))))))) actual-value: #("#" (0 . 35)) result: PASS test-name: printer without location location: /tmp/guix-build-guix-0.13.0.drv-0/source/tests/packages.scm:77 source: + (test-assert + "printer without location" + (string-match + "^#$" + (with-output-to-string + (lambda () + (write (dummy-package "foo" (location #f))))))) actual-value: #("#" (0 . 24)) result: PASS test-name: hidden-package location: /tmp/guix-build-guix-0.13.0.drv-0/source/tests/packages.scm:84 source: + (test-assert + "hidden-package" + (and (hidden-package? + (hidden-package (dummy-package "foo"))) + (not (hidden-package? (dummy-package "foo"))))) actual-value: #t result: PASS test-name: package-superseded location: /tmp/guix-build-guix-0.13.0.drv-0/source/tests/packages.scm:88 source: + (test-assert + "package-superseded" + (let* ((new (dummy-package "bar")) + (old (deprecated-package "foo" new))) + (and (eq? (package-superseded old) new) + (mock ((gnu packages) + find-best-packages-by-name + (const (list old))) + (specification->package "foo") + (and (eq? new (specification->package "foo")) + (eq? new (specification->package+output "foo"))))))) actual-value: #t result: PASS test-name: transaction-upgrade-entry, zero upgrades location: /tmp/guix-build-guix-0.13.0.drv-0/source/tests/packages.scm:97 source: + (test-assert + "transaction-upgrade-entry, zero upgrades" + (let* ((old (dummy-package "foo" (version "1"))) + (tx (mock ((gnu packages) + find-newest-available-packages + (const vlist-null)) + ((@@ (guix scripts package) + transaction-upgrade-entry) + (manifest-entry + (inherit (package->manifest-entry old)) + (item (string-append + (%store-prefix) + "/" + (make-string 32 #\e) + "-foo-1"))) + (manifest-transaction))))) + (manifest-transaction-null? tx))) actual-value: #t result: PASS test-name: transaction-upgrade-entry, one upgrade location: /tmp/guix-build-guix-0.13.0.drv-0/source/tests/packages.scm:109 source: + (test-assert + "transaction-upgrade-entry, one upgrade" + (let* ((old (dummy-package "foo" (version "1"))) + (new (dummy-package "foo" (version "2"))) + (tx (mock ((gnu packages) + find-newest-available-packages + (const (vhash-cons "foo" (list "2" new) vlist-null))) + ((@@ (guix scripts package) + transaction-upgrade-entry) + (manifest-entry + (inherit (package->manifest-entry old)) + (item (string-append + (%store-prefix) + "/" + (make-string 32 #\e) + "-foo-1"))) + (manifest-transaction))))) + (and (match (manifest-transaction-install tx) + ((($ "foo" "2" "out" item)) + (eq? item new))) + (null? (manifest-transaction-remove tx))))) actual-value: #t result: PASS test-name: transaction-upgrade-entry, superseded package location: /tmp/guix-build-guix-0.13.0.drv-0/source/tests/packages.scm:125 source: + (test-assert + "transaction-upgrade-entry, superseded package" + (let* ((old (dummy-package "foo" (version "1"))) + (new (dummy-package "bar" (version "2"))) + (dep (deprecated-package "foo" new)) + (tx (mock ((gnu packages) + find-newest-available-packages + (const (vhash-cons "foo" (list "2" dep) vlist-null))) + ((@@ (guix scripts package) + transaction-upgrade-entry) + (manifest-entry + (inherit (package->manifest-entry old)) + (item (string-append + (%store-prefix) + "/" + (make-string 32 #\e) + "-foo-1"))) + (manifest-transaction))))) + (and (match (manifest-transaction-install tx) + ((($ "bar" "2" "out" item)) + (eq? item new))) + (match (manifest-transaction-remove tx) + (((? manifest-pattern? pattern)) + (and (string=3D? (manifest-pattern-name pattern) "foo") + (string=3D? (manifest-pattern-version pattern) "1") + (string=3D? + (manifest-pattern-output pattern) + "out"))))))) actual-value: #t result: PASS test-name: package-field-location location: /tmp/guix-build-guix-0.13.0.drv-0/source/tests/packages.scm:146 source: + (test-assert + "package-field-location" + (let () + (define (goto port line column) + (unless + (and (=3D (port-column port) (- column 1)) + (=3D (port-line port) (- line 1))) + (unless + (eof-object? (get-char port)) + (goto port line column)))) + (define read-at + (match-lambda + (($ file line column) + (call-with-input-file + (search-path %load-path file) + (lambda (port) + (goto port line column) + (read port)))))) + (and (member + (read-at + (package-field-location %bootstrap-guile 'name)) + (let ((name (package-name %bootstrap-guile))) + (list name `(name ,name)))) + (member + (read-at + (package-field-location + %bootstrap-guile + 'version)) + (let ((version (package-version %bootstrap-guile))) + (list version `(version ,version)))) + (not (package-field-location + %bootstrap-guile + 'does-not-exist))))) actual-value: #t result: PASS test-name: package-field-location, relative file name location: /tmp/guix-build-guix-0.13.0.drv-0/source/tests/packages.scm:173 source: + (test-equal + "package-field-location, relative file name" + (location-file + (package-location %bootstrap-guile)) + (with-fluids + ((%file-port-name-canonicalization 'absolute)) + (location-file + (package-field-location + %bootstrap-guile + 'version)))) expected-value: "gnu/packages/bootstrap.scm" actual-value: "gnu/packages/bootstrap.scm" result: PASS test-name: package-transitive-inputs location: /tmp/guix-build-guix-0.13.0.drv-0/source/tests/packages.scm:178 source: + (test-assert + "package-transitive-inputs" + (let* ((a (dummy-package "a")) + (b (dummy-package + "b" + (propagated-inputs `(("a" ,a))))) + (c (dummy-package "c" (inputs `(("a" ,a))))) + (d (dummy-package + "d" + (propagated-inputs `(("x" "something.drv"))))) + (e (dummy-package + "e" + (inputs `(("b" ,b) ("c" ,c) ("d" ,d)))))) + (and (null? (package-transitive-inputs a)) + (equal? + `(("a" ,a)) + (package-transitive-inputs b)) + (equal? + `(("a" ,a)) + (package-transitive-inputs c)) + (equal? + (package-propagated-inputs d) + (package-transitive-inputs d)) + (equal? + `(("b" ,b) + ("c" ,c) + ("d" ,d) + ("a" ,a) + ("x" "something.drv")) + (pk 'x (package-transitive-inputs e)))))) ;;; (x (("b" #) ("c" #) ("d" #) ("a" #) ("x" "something.drv"))) actual-value: #t result: PASS test-name: package-transitive-inputs, no duplicates location: /tmp/guix-build-guix-0.13.0.drv-0/source/tests/packages.scm:197 source: + (test-assert + "package-transitive-inputs, no duplicates" + (let* ((a (dummy-package "a")) + (b (dummy-package + "b" + (inputs `(("a+" ,a))) + (native-inputs `(("a*" ,a))) + (propagated-inputs `(("a" ,a))))) + (c (dummy-package + "c" + (propagated-inputs `(("b" ,b))))) + (d (dummy-package "d" (inputs `(("a" ,a) ("c" ,c))))) + (e (dummy-package "e" (inputs `(("b" ,b) ("c" ,c)))))) + (and (null? (package-transitive-inputs a)) + (equal? + `(("a*" ,a) ("a+" ,a) ("a" ,a)) + (package-transitive-inputs b)) + (equal? + `(("b" ,b) ("a" ,a)) + (package-transitive-inputs c)) + (equal? + `(("a" ,a) ("c" ,c) ("b" ,b)) + (package-transitive-inputs d)) + (equal? + `(("b" ,b) ("c" ,c) ("a" ,a)) + (package-transitive-inputs e))))) actual-value: #t result: PASS test-name: package-transitive-supported-systems location: /tmp/guix-build-guix-0.13.0.drv-0/source/tests/packages.scm:219 source: + (test-equal + "package-transitive-supported-systems" + '(("x" "y" "z") ("x" "y") ("y") ("y") ("y")) + (let* ((a (dummy-package + "a" + (build-system trivial-build-system) + (supported-systems '("x" "y" "z")))) + (b (dummy-package + "b" + (build-system trivial-build-system) + (supported-systems '("x" "y")) + (inputs `(("a" ,a))))) + (c (dummy-package + "c" + (build-system trivial-build-system) + (supported-systems '("y" "z")) + (inputs `(("b" ,b))))) + (d (dummy-package + "d" + (build-system trivial-build-system) + (supported-systems '("x" "y" "z")) + (inputs `(("b" ,b) ("c" ,c))))) + (e (dummy-package + "e" + (build-system trivial-build-system) + (supported-systems '("x" "y" "z")) + (inputs `(("d" ,d)))))) + (list (package-transitive-supported-systems a) + (package-transitive-supported-systems b) + (package-transitive-supported-systems c) + (package-transitive-supported-systems d) + (package-transitive-supported-systems e)))) expected-value: (("x" "y" "z") ("x" "y") ("y") ("y") ("y")) actual-value: (("x" "y" "z") ("x" "y") ("y") ("y") ("y")) result: PASS test-name: origin-actual-file-name location: /tmp/guix-build-guix-0.13.0.drv-0/source/tests/packages.scm:252 source: + (test-equal + "origin-actual-file-name" + "foo-1.tar.gz" + (let ((o (dummy-origin + (uri "http://www.example.com/foo-1.tar.gz")))) + (origin-actual-file-name o))) expected-value: "foo-1.tar.gz" actual-value: "foo-1.tar.gz" result: PASS test-name: origin-actual-file-name, file-name location: /tmp/guix-build-guix-0.13.0.drv-0/source/tests/packages.scm:257 source: + (test-equal + "origin-actual-file-name, file-name" + "foo-1.tar.gz" + (let ((o (dummy-origin + (uri "http://www.example.com/tarball") + (file-name "foo-1.tar.gz")))) + (origin-actual-file-name o))) expected-value: "foo-1.tar.gz" actual-value: "foo-1.tar.gz" result: PASS test-name: package-direct-sources, no source location: /tmp/guix-build-guix-0.13.0.drv-0/source/tests/packages.scm:274 source: + (test-assert + "package-direct-sources, no source" + (null? (package-direct-sources a))) actual-value: #t result: PASS test-name: package-direct-sources, #f source location: /tmp/guix-build-guix-0.13.0.drv-0/source/tests/packages.scm:276 source: + (test-equal + "package-direct-sources, #f source" + (list i) + (package-direct-sources b)) expected-value: (#) actual-value: (#) result: PASS test-name: package-direct-sources, not input source location: /tmp/guix-build-guix-0.13.0.drv-0/source/tests/packages.scm:279 source: + (test-equal + "package-direct-sources, not input source" + (list u) + (package-direct-sources d)) expected-value: (#) actual-value: (#) result: PASS test-name: package-direct-sources location: /tmp/guix-build-guix-0.13.0.drv-0/source/tests/packages.scm:282 source: + (test-assert + "package-direct-sources" + (let ((s (package-direct-sources c))) + (and (=3D (length (pk 's-sources s)) 2) + (member o s) + (member i s)))) ;;; (s-sources (# #)) actual-value: (#) result: PASS test-name: package-transitive-sources location: /tmp/guix-build-guix-0.13.0.drv-0/source/tests/packages.scm:287 source: + (test-assert + "package-transitive-sources" + (let ((s (package-transitive-sources d))) + (and (=3D (length (pk 'd-sources s)) 3) + (member o s) + (member i s) + (member u s)))) ;;; (d-sources (# # #)) actual-value: (# # #) result: PASS test-name: transitive-input-references location: /tmp/guix-build-guix-0.13.0.drv-0/source/tests/packages.scm:294 source: + (test-assert + "transitive-input-references" + (let* ((a (dummy-package "a")) + (b (dummy-package "b")) + (c (dummy-package + "c" + (inputs `(("a" ,a))) + (propagated-inputs `(("boo" ,b))))) + (d (dummy-package "d" (inputs `(("c*" ,c))))) + (keys (map (match-lambda (('assoc-ref 'l key) key)) + (pk 'refs + (transitive-input-references + 'l + (package-inputs d)))))) + (and (=3D (length keys) 2) + (member "c*" keys) + (member "boo" keys)))) ;;; (refs ((assoc-ref l "c*") (assoc-ref l "boo"))) actual-value: ("boo") result: PASS test-name: package-transitive-supported-systems, implicit inputs location: /tmp/guix-build-guix-0.13.0.drv-0/source/tests/packages.scm:311 source: + (test-equal + "package-transitive-supported-systems, implicit inputs" + %supported-systems + (let ((p (dummy-package + "foo" + (build-system gnu-build-system) + (supported-systems + `("does-not-exist" "foobar" ,@%supported-systems))))) + (package-transitive-supported-systems p))) expected-value: ("x86_64-linux" "i686-linux" "armhf-linux" "mips64el-linux") actual-value: ("x86_64-linux" "i686-linux" "armhf-linux" "mips64el-linux") result: PASS test-name: supported-package? location: /tmp/guix-build-guix-0.13.0.drv-0/source/tests/packages.scm:322 source: + (test-assert + "supported-package?" + (let ((p (dummy-package + "foo" + (build-system gnu-build-system) + (supported-systems + '("x86_64-linux" "does-not-exist"))))) + (and (supported-package? p "x86_64-linux") + (not (supported-package? p "does-not-exist")) + (not (supported-package? p "i686-linux"))))) actual-value: #t result: PASS test-name: package-source-derivation, file location: /tmp/guix-build-guix-0.13.0.drv-0/source/tests/packages.scm:332 source: + (test-assert + "package-source-derivation, file" + (let* ((file (search-path %load-path "guix.scm")) + (package + (package + (inherit (dummy-package "p")) + (source file))) + (source + (package-source-derivation + %store + (package-source package)))) + (and (store-path? source) + (valid-path? %store source) + (equal? + (call-with-input-file source get-bytevector-all) + (call-with-input-file file get-bytevector-all))))) actual-value: #t result: PASS test-name: package-source-derivation, store path location: /tmp/guix-build-guix-0.13.0.drv-0/source/tests/packages.scm:343 source: + (test-assert + "package-source-derivation, store path" + (let* ((file (add-to-store + %store + "guix.scm" + #t + "sha256" + (search-path %load-path "guix.scm"))) + (package + (package + (inherit (dummy-package "p")) + (source file))) + (source + (package-source-derivation + %store + (package-source package)))) + (string=3D? file source))) actual-value: #t result: PASS test-name: package-source-derivation, indirect store path location: /tmp/guix-build-guix-0.13.0.drv-0/source/tests/packages.scm:352 source: + (test-assert + "package-source-derivation, indirect store path" + (let* ((dir (add-to-store + %store + "guix-build" + #t + "sha256" + (dirname + (search-path %load-path "guix/build/utils.scm")))) + (package + (package + (inherit (dummy-package "p")) + (source (string-append dir "/utils.scm")))) + (source + (package-source-derivation + %store + (package-source package)))) + (and (direct-store-path? source) + (string-suffix? "utils.scm" source)))) actual-value: #t result: PASS test-name: package-source-derivation, local-file location: /tmp/guix-build-guix-0.13.0.drv-0/source/tests/packages.scm:363 source: + (test-assert + "package-source-derivation, local-file" + (let* ((file (local-file "../guix/base32.scm")) + (package + (package + (inherit (dummy-package "p")) + (source file))) + (source + (package-source-derivation + %store + (package-source package)))) + (and (store-path? source) + (string-suffix? "base32.scm" source) + (valid-path? %store source) + (equal? + (call-with-input-file source get-bytevector-all) + (call-with-input-file + (search-path %load-path "guix/base32.scm") + get-bytevector-all))))) actual-value: #t result: PASS test-name: package-source-derivation, snippet location: /tmp/guix-build-guix-0.13.0.drv-0/source/tests/packages.scm:378 source: + (test-equal + "package-source-derivation, snippet" + "OK" + (let* ((file (search-bootstrap-binary + (match (%current-system) + ("armhf-linux" "guile-2.0.11.tar.xz") + ("aarch64-linux" "guile-2.0.14.tar.xz") + (_ "guile-2.0.9.tar.xz")) + (%current-system))) + (sha256 (call-with-input-file file port-sha256)) + (fetch (lambda* (url hash-algo hash #:optional name #:key system) + (pk 'fetch url hash-algo hash name system) + (interned-file url))) + (source + (bootstrap-origin + (origin + (method fetch) + (uri file) + (sha256 sha256) + (patch-inputs + `(("tar" ,%bootstrap-coreutils&co) + ("xz" ,%bootstrap-coreutils&co) + ("patch" ,%bootstrap-coreutils&co))) + (patch-guile %bootstrap-guile) + (modules '((guix build utils))) + (snippet + '(begin + (chmod "." 511) + (symlink "guile" "guile-rocks") + (copy-recursively + "../share/guile/2.0/scripts" + "scripts") + (chmod ".." 511)))))) + (package + (package + (inherit (dummy-package "with-snippet")) + (source source) + (build-system trivial-build-system) + (inputs + `(("tar" + ,(search-bootstrap-binary "tar" (%current-system))) + ("xz" + ,(search-bootstrap-binary "xz" (%current-system))))) + (arguments + `(#:guile + ,%bootstrap-guile + #:builder + (let ((tar (assoc-ref %build-inputs "tar")) + (xz (assoc-ref %build-inputs "xz")) + (source (assoc-ref %build-inputs "source"))) + (and (zero? (system* + tar + "xvf" + source + "--use-compress-program" + xz)) + (string=3D? "guile" (readlink "bin/guile-rocks")) + (file-exists? "bin/scripts/compile.scm") + (let ((out (assoc-ref %outputs "out"))) + (call-with-output-file + out + (lambda (p) (display "OK" p)))))))))) + (drv (package-derivation %store package)) + (out (derivation->output-path drv))) + (and (build-derivations + %store + (list (pk 'snippet-drv drv))) + (call-with-input-file out get-string-all)))) result: SKIP test-name: return value location: /tmp/guix-build-guix-0.13.0.drv-0/source/tests/packages.scm:442 source: + (test-assert + "return value" + (let ((drv (package-derivation %store (dummy-package "p")))) + (and (derivation? drv) + (file-exists? (derivation-file-name drv))))) actual-value: #t result: PASS test-name: package-output location: /tmp/guix-build-guix-0.13.0.drv-0/source/tests/packages.scm:447 source: + (test-assert + "package-output" + (let* ((package (dummy-package "p")) + (drv (package-derivation %store package))) + (and (derivation? drv) + (string=3D? + (derivation->output-path drv) + (package-output %store package "out"))))) actual-value: #t result: PASS test-name: patch not found yields a run-time error location: /tmp/guix-build-guix-0.13.0.drv-0/source/tests/packages.scm:454 source: + (test-assert + "patch not found yields a run-time error" + (guard (c ((condition-has-type? c &message) + (and (string-contains + random seed for tests: 1495526084 package 'foo' has been superseded by 'bar' package 'foo' has been superseded by 'bar' package 'foo' has been superseded by 'bar' package 'foo' has been superseded by 'bar' @ build-started /tmp/guix-tests/store/hvyvgjygf729vfvbpl2k3dqvsiwx59cw-triv= ial-0.drv - x86_64-linux /tmp/guix-tests/var/log/guix/drvs/hv//yvgjygf729vf= vbpl2k3dqvsiwx59cw-trivial-0.drv.bz2 @ build-succeeded /tmp/guix-tests/store/hvyvgjygf729vfvbpl2k3dqvsiwx59cw-tr= ivial-0.drv - (condition-message c) + "does-not-exist.patch") + (string-contains + (condition-message c) + "not found")))) + (let ((p (package + (inherit (dummy-package "p")) + (source + (origin + (method (const #f)) + (uri "http://whatever") + (patches + (list (search-patch "does-not-exist.patch"))) + (sha256 + (base32 + "0amn0bbwqvsvvsh6drfwz20ydc2czk374lzw5kksbh6b= f78k4ks4"))))))) + (package-derivation %store p) + #f))) actual-value: 28 result: PASS test-name: &package-input-error location: /tmp/guix-build-guix-0.13.0.drv-0/source/tests/packages.scm:474 source: + (test-equal + "&package-input-error" + (list dummy (current-module)) + (guard (c ((package-input-error? c) + (list (package-error-package c) + (package-error-invalid-input c)))) + (package-derivation %store dummy))) expected-value: (# #) actual-value: (# #) result: PASS test-name: reference to non-existent output location: /tmp/guix-build-guix-0.13.0.drv-0/source/tests/packages.scm:481 source: + (test-assert + "reference to non-existent output" + (parameterize + ((%graft? #f)) + (let* ((dep (dummy-package "dep")) + (p (dummy-package + "p" + (inputs `(("dep" ,dep "non-existent")))))) + (guard (c ((derivation-missing-output-error? c) + (and (string=3D? + (derivation-missing-output c) + "non-existent") + (equal? + (package-derivation %store dep) + (derivation-error-derivation c))))) + (package-derivation %store p))))) actual-value: #t result: PASS test-name: trivial location: /tmp/guix-build-guix-0.13.0.drv-0/source/tests/packages.scm:493 source: + (test-assert + "trivial" + (let* ((p (package + (inherit (dummy-package "trivial")) + (build-system trivial-build-system) + (source #f) + (arguments + `(#:guile + ,%bootstrap-guile + #:builder + (begin + (mkdir %output) + (call-with-output-file + (string-append %output "/test") + (lambda (p) (display '(hello guix) p)))))))) + (d (package-derivation %store p))) + (and (build-derivations %store (list d)) + (let ((p (pk 'drv d (derivation->output-path d)))) + (equal? + '(hello guix) + (call-with-input-file + (string-append p "/test") + read)))))) ;;; (drv # /tmp/guix-tests/store/3pp7cs8ycxg16yldqd62lrk306ck1g72= -trivial-0 3194eb0> "/tmp/guix-tests/store/3pp7cs8ycxg16yldqd62lrk306ck1g72= -trivial-0") actual-value: #t result: PASS test-name: trivial with local file as input location: /tmp/guix-build-guix-0.13.0.drv-0/source/tests/packages.scm:511 source: + (test-assert + "trivial with local file as input" + (let* ((i (search-path %load-path "ice-9/boot-9.scm")) + (p (package + (inherit + (dummy-package "trivial-with-input-file")) + (build-system trivial-build-system) + (source #f) + (arguments + `(#:guile + ,%bootstrap-guile + #:builder + (copy-file + @ build-started /tmp/guix-tests/store/a6yjh360wy274bw6v69b7i4ybgz= nhc72-trivial-with-input-file-0.drv - x86_64-linux /tmp/guix-tests/var/log/= guix/drvs/a6//yjh360wy274bw6v69b7i4ybgznhc72-trivial-with-input-file-0.drv.= bz2 @ build-succeeded /tmp/guix-tests/store/a6yjh360wy274bw6v69b7i4ybgznhc72-tr= ivial-with-input-file-0.drv - @ build-started /tmp/guix-tests/store/62hvlyvzl8zdm919i5f51clhvy5a5yab-triv= ial-with-source-0.drv - x86_64-linux /tmp/guix-tests/var/log/guix/drvs/62//= hvlyvzl8zdm919i5f51clhvy5a5yab-trivial-with-source-0.drv.bz2 @ build-succeeded /tmp/guix-tests/store/62hvlyvzl8zdm919i5f51clhvy5a5yab-tr= ivial-with-source-0.drv - @ build-started /tmp/guix-tests/store/jmw8n1jv0clislyswj0gnc7mm52q0kjv-triv= ial-system-dependent-input-0.drv - x86_64-linux /tmp/guix-tests/var/log/gui= x/drvs/jm//w8n1jv0clislyswj0gnc7mm52q0kjv-trivial-system-dependent-input-0.= drv.bz2 @ build-succeeded /tmp/guix-tests/store/jmw8n1jv0clislyswj0gnc7mm52q0kjv-tr= ivial-system-dependent-input-0.drv - (assoc-ref %build-inputs "input") + %output))) + (inputs `(("input" ,i))))) + (d (package-derivation %store p))) + (and (build-derivations %store (list d)) + (let ((p (pk 'drv d (derivation->output-path d)))) + (equal? + (call-with-input-file p get-bytevector-all) + (call-with-input-file i get-bytevector-all)))))) ;;; (drv # /tmp/guix-tests/store/ig6yxsjih7q2g4zm= lplm1psjz5yprqad-trivial-with-input-file-0 3194c30> "/tmp/guix-tests/store/= ig6yxsjih7q2g4zmlplm1psjz5yprqad-trivial-with-input-file-0") actual-value: #t result: PASS test-name: trivial with source location: /tmp/guix-build-guix-0.13.0.drv-0/source/tests/packages.scm:527 source: + (test-assert + "trivial with source" + (let* ((i (search-path %load-path "ice-9/boot-9.scm")) + (p (package + (inherit (dummy-package "trivial-with-source")) + (build-system trivial-build-system) + (source i) + (arguments + `(#:guile + ,%bootstrap-guile + #:builder + (copy-file + (assoc-ref %build-inputs "source") + %output))))) + (d (package-derivation %store p))) + (and (build-derivations %store (list d)) + (let ((p (derivation->output-path d))) + (equal? + (call-with-input-file p get-bytevector-all) + (call-with-input-file i get-bytevector-all)))))) actual-value: #t result: PASS test-name: trivial with system-dependent input location: /tmp/guix-build-guix-0.13.0.drv-0/source/tests/packages.scm:542 source: + (test-assert + "trivial with system-dependent input" + (let* ((p (package + (inherit + (dummy-package "trivial-system-dependent-input")) + (build-system trivial-build-system) + (source #f) + (arguments + `(#:guile + ,%bootstrap-guile + #:builder + (let ((out (assoc-ref %outputs "out")) + (bash (assoc-ref %build-inputs "bash"))) + (zero? (system* + bash + "-c" + (format #f "echo hello > ~a" out)))))) + (inputs + `(("bash" + ,(search-bootstrap-binary + "bash" + (%current-system))))))) + (d (package-derivation %store p))) + (and (build-derivations %store (list d)) + (let ((p (pk 'drv d (derivation->output-path d)))) + (eq? 'hello (call-with-input-file p read)))))) ;;; (drv # /tmp/guix-tests/store/8pqmam9mm= npd071ya49hv33dnp8p24f5-trivial-system-dependent-input-0 3194870> "/tmp/gui= x-tests/store/8pqmam9mmnpd071ya49hv33dnp8p24f5-trivial-system-dependent-inp= ut-0") actual-value: #t result: PASS test-name: search paths location: /tmp/guix-build-guix-0.13.0.drv-0/source/tests/packages.scm:560 source: + (test-assert + "search paths" + (let* ((p (make-prompt-tag "return-search-paths")) + (s (build-system + (name 'raw) + (description + "Raw build system with direct store access") + (lower (lambda* (name + #:key + source + inputs + system + target + #:allow-other-keys) + (bag (name name) + (system system) + (target target) + (build-inputs inputs) + (build (lambda* (store + name + inputs + #:key + outputs + system + search-paths) + search-paths))))))) + (x (list (search-path-specification + (variable "GUILE_LOAD_PATH") + (files '("share/guile/site/2.0"))) + (search-path-specification + (variable "GUILE_LOAD_COMPILED_PATH") + (files '("share/guile/site/2.0"))))) + (a (package + (inherit (dummy-package "guile")) + (build-system s) + (native-search-paths x))) + (b (package + (inherit (dummy-package "guile-foo")) + (build-system s) + (inputs `(("guile" ,a))))) + (c (package + (inherit (dummy-package "guile-bar")) + (build-system s) + (inputs `(("guile" ,a) ("guile-foo" ,b)))))) + (let-syntax ((collect + (syntax-rules () + ((_ body ...) + (call-with-prompt + p + (lambda () body ...) + (lambda (k search-paths) search-paths)))))) + (and (null? (collect (package-derivation %store a))) + (equal? + x + (collect (package-derivation %store b))) + (equal? + x + (collect (package-derivation %store c))))))) actual-value: #t result: PASS test-name: package-transitive-native-search-paths location: /tmp/guix-build-guix-0.13.0.drv-0/source/tests/packages.scm:602 source: + (test-assert + "package-transitive-native-search-paths" + (let* ((sp (lambda (name) + (list (search-path-specification + (variable name) + (files '("foo/bar")))))) + (p0 (dummy-package + "p0" + (native-search-paths (sp "PATH0")))) + (p1 (dummy-package + "p1" + (native-search-paths (sp "PATH1")))) + (p2 (dummy-package + "p2" + (native-search-paths (sp "PATH2")) + (inputs `(("p0" ,p0))) + (propagated-inputs `(("p1" ,p1))))) + (p3 (dummy-package + "p3" + (native-search-paths (sp "PATH3")) + (native-inputs `(("p0" ,p0))) + (propagated-inputs `(("p2" ,p2)))))) + (lset=3D string=3D? + '("PATH1" "PATH2" "PATH3") + (map search-path-specification-variable + (package-transitive-native-search-paths p3))))) actual-value: #t result: PASS test-name: package-cross-derivation location: /tmp/guix-build-guix-0.13.0.drv-0/source/tests/packages.scm:622 source: + (test-assert + "package-cross-derivation" + (let ((drv (package-cross-derivation + %store + (dummy-package "p") + "mips64el-linux-gnu"))) + (and (derivation? drv) + (file-exists? (derivation-file-name drv))))) actual-value: #t result: PASS test-name: package-cross-derivation, trivial-build-system location: /tmp/guix-build-guix-0.13.0.drv-0/source/tests/packages.scm:628 source: + (test-assert + "package-cross-derivation, trivial-build-system" + (let ((p (package + (inherit (dummy-package "p")) + (build-system trivial-build-system) + (arguments '(#:builder (exit 1)))))) + (let ((drv (package-cross-derivation + %store + p + "mips64el-linux-gnu"))) + (derivation? drv)))) actual-value: #t result: PASS test-name: package-cross-derivation, no cross builder location: /tmp/guix-build-guix-0.13.0.drv-0/source/tests/packages.scm:635 source: + (test-assert + "package-cross-derivation, no cross builder" + (let* ((b (build-system + (inherit trivial-build-system) + (lower (const #f)))) + (p (package + (inherit (dummy-package "p")) + (build-system b)))) + (guard (c ((package-cross-build-system-error? c) + (eq? (package-error-package c) p))) + (package-cross-derivation + %store + p + "mips64el-linux-gnu") + #f))) actual-value: #t result: PASS test-name: package-grafts, indirect grafts location: /tmp/guix-build-guix-0.13.0.drv-0/source/tests/packages.scm:663 source: + (test-assert + "package-grafts, indirect grafts" + (let* ((new (dummy-package + "dep" + (arguments '(#:implicit-inputs? #f)))) + (dep (package (inherit new) (version "0.0"))) + (dep* (package (inherit dep) (replacement new))) + (dummy (dummy-package + "dummy" + (arguments '(#:implicit-inputs? #f)) + (inputs `(("dep" ,dep*)))))) + (equal? + (package-grafts %store dummy) + (list (graft (origin (package-derivation %store dep)) + (replacement (package-derivation %store new))))))) actual-value: #t result: PASS test-name: package-grafts, indirect grafts, propagated inputs location: /tmp/guix-build-guix-0.13.0.drv-0/source/tests/packages.scm:696 source: + (test-assert + "package-grafts, indirect grafts, propagated inputs" + (let* ((new (dummy-package + "dep" + (arguments '(#:implicit-inputs? #f)))) + (dep (package (inherit new) (version "0.0"))) + (dep* (package (inherit dep) (replacement new))) + (prop (dummy-package + "propagated" + (propagated-inputs `(("dep" ,dep*))) + (arguments '(#:implicit-inputs? #f)))) + (dummy (dummy-package + "dummy" + (arguments '(#:implicit-inputs? #f)) + (inputs `(("prop" ,prop)))))) + (equal? + (package-grafts %store dummy) + (list (graft (origin (package-derivation %store dep)) + (replacement (package-derivation %store new))))))) actual-value: #t result: PASS test-name: package-grafts, same replacement twice location: /tmp/guix-build-guix-0.13.0.drv-0/source/tests/packages.scm:712 source: + (test-assert + "package-grafts, same replacement twice" + (let* ((new (dummy-package + "dep" + (version "1") + (arguments '(#:implicit-inputs? #f)))) + (dep (package + (inherit new) + (version "0") + (replacement new))) + (p1 (dummy-package + "intermediate1" + (arguments '(#:implicit-inputs? #f)) + (inputs `(("dep" ,dep))))) + (p2 (dummy-package + "intermediate2" + (arguments '(#:implicit-inputs? #f)) + (inputs `(("dep" ,(package (inherit dep))))))) + (p3 (dummy-package + "final" + (arguments '(#:implicit-inputs? #f)) + (inputs `(("p1" ,p1) ("p2" ,p2)))))) + (equal? + (package-grafts %store p3) + (list (graft (origin + (package-derivation + %store + (package (inherit dep) (replacement #f)))) + (replacement (package-derivation %store new))))))) actual-value: #t result: PASS test-name: replacement also grafted location: /tmp/guix-build-guix-0.13.0.drv-0/source/tests/packages.scm:736 source: + (test-assert + "replacement also grafted" + (let* ((p1r (dummy-package + "P1" + (build-system trivial-build-system) + (arguments + `(#:guile + ,%bootstrap-guile + #:builder + (let ((out (assoc-ref %outputs "out"))) + @ build-started /tmp/guix-tests/store/4fy6qbf23zv784brzwpkkrmwpnmbp2gr-p1= -0.drv - x86_64-linux /tmp/guix-tests/var/log/guix/drvs/4f//y6qbf23zv784brz= wpkkrmwpnmbp2gr-p1-0.drv.bz2 @ build-succeeded /tmp/guix-tests/store/4fy6qbf23zv784brzwpkkrmwpnmbp2gr-p1= -0.drv - @ build-started /tmp/guix-tests/store/107g7qq7946g9vvbp8vqcpx98xjb79df-P2-0= .drv - x86_64-linux /tmp/guix-tests/var/log/guix/drvs/10//7g7qq7946g9vvbp8v= qcpx98xjb79df-P2-0.drv.bz2 @ build-succeeded /tmp/guix-tests/store/107g7qq7946g9vvbp8vqcpx98xjb79df-P2= -0.drv - (mkdir out) + (call-with-output-file + (string-append out "/replacement") + (const #t))))))) + (p1 (package + (inherit p1r) + (name "p1") + (replacement p1r) + (arguments + `(#:guile + ,%bootstrap-guile + #:builder + (mkdir (assoc-ref %outputs "out")))))) + (p2r (dummy-package + "P2" + (build-system trivial-build-system) + (inputs `(("p1" ,p1))) + (arguments + `(#:guile + ,%bootstrap-guile + #:builder + (let ((out (assoc-ref %outputs "out"))) + (mkdir out) + (chdir out) + (symlink (assoc-ref %build-inputs "p1") "p1") + (call-with-output-file + (string-append out "/replacement") + (const #t))))))) + (p2 (package + (inherit p2r) + (name "p2") + (replacement p2r) + (arguments + `(#:guile + ,%bootstrap-guile + #:builder + (let ((out (assoc-ref %outputs "out"))) + (mkdir out) + (chdir out) + (symlink (assoc-ref %build-inputs "p1") "p1")))))) + (p3 (dummy-package + "p3" + (build-system trivial-build-system) + (inputs `(("p2" ,p2))) + (arguments + `(#:guile + ,%bootstrap-guile + #:builder + (let ((out (assoc-ref %outputs "out"))) + (mkdir out) + (chdir out) + (symlink (assoc-ref %build-inputs "p2") "p2"))))))) + (lset=3D equal? + (package-grafts %store p3) + (list (graft (origin + (package-derivation %store p1 #:graft? #f)) + (replacement (package-derivation %store p1r))) + (graft (origin + (package-derivation %store p2 #:graft? #f)) + (replacement + (package-derivation %store p2r #:graft? #t)))))= )) actual-value: #t result: PASS test-name: package->bag location: /tmp/guix-build-guix-0.13.0.drv-0/source/tests/packages.scm:829 source: + (test-equal + "package->bag" + `("foo86-hurd" + #f + (,(package-source gnu-make)) + (,(canonical-package glibc)) + (,(canonical-package coreutils))) + (let ((bag (package->bag gnu-make "foo86-hurd"))) + (list (bag-system bag) + (bag-target bag) + (assoc-ref (bag-build-inputs bag) "source") + (assoc-ref (bag-build-inputs bag) "libc") + (assoc-ref (bag-build-inputs bag) "coreutils")))) expected-value: ("foo86-hurd" #f (#) (#) = (#)) actual-value: ("foo86-hurd" #f (#) (#) (#= )) result: PASS test-name: package->bag, cross-compilation location: /tmp/guix-build-guix-0.13.0.drv-0/source/tests/packages.scm:838 source: + (test-equal + "package->bag, cross-compilation" + `(,(%current-system) + "foo86-hurd" + (,(package-source gnu-make)) + (,(canonical-package glibc)) + (,(canonical-package coreutils))) + (let ((bag (package->bag + gnu-make + (%current-system) + "foo86-hurd"))) + (list (bag-system bag) + (bag-target bag) + (assoc-ref (bag-build-inputs bag) "source") + (assoc-ref (bag-build-inputs bag) "libc") + (assoc-ref (bag-build-inputs bag) "coreutils")))) expected-value: ("x86_64-linux" "foo86-hurd" (#) (#) (#)) actual-value: ("x86_64-linux" "foo86-hurd" (#) (#) (#= )) result: PASS test-name: package->bag, propagated inputs location: /tmp/guix-build-guix-0.13.0.drv-0/source/tests/packages.scm:848 source: + (test-assert + "package->bag, propagated inputs" + (let* ((dep (dummy-package "dep")) + (prop (dummy-package + "prop" + (propagated-inputs `(("dep" ,dep))))) + (dummy (dummy-package + "dummy" + (inputs `(("prop" ,prop))))) + (inputs + (bag-transitive-inputs + (package->bag dummy #:graft? #f)))) + (match (assoc "dep" inputs) + (("dep" package) (eq? package dep))))) actual-value: #t result: PASS test-name: bag->derivation location: /tmp/guix-build-guix-0.13.0.drv-0/source/tests/packages.scm:859 source: + (test-assert + "bag->derivation" + (parameterize + ((%graft? #f)) + (let ((bag (package->bag gnu-make)) + (drv (package-derivation %store gnu-make))) + (parameterize + ((%current-system "foox86-hurd")) + (equal? drv (bag->derivation %store bag)))))) actual-value: #t result: PASS test-name: bag->derivation, cross-compilation location: /tmp/guix-build-guix-0.13.0.drv-0/source/tests/packages.scm:866 source: + (test-assert + "bag->derivation, cross-compilation" + (parameterize + ((%graft? #f)) + (let* ((target "mips64el-linux-gnu") + (bag (package->bag gnu-make (%current-system) target)) + (drv (package-cross-derivation %store gnu-make target))) + (parameterize + ((%current-system "foox86-hurd") + (%current-target-system "foo64-linux-gnu")) + (equal? drv (bag->derivation %store bag)))))) actual-value: #t result: PASS test-name: GNU Make, bootstrap location: /tmp/guix-build-guix-0.13.0.drv-0/source/tests/packages.scm:877 source: + (test-assert + "GNU Make, bootstrap" + (let ((gnu-make + (@@ (gnu packages commencement) gnu-make-boot0))) + (and (package? gnu-make) + (or (location? (package-location gnu-make)) + (not (package-location gnu-make))) + (let* ((drv (package-derivation %store gnu-make)) + (out (derivation->output-path drv))) + (and (build-derivations %store (list drv)) + (file-exists? (string-append out "/bin/make"))))))) result: SKIP test-name: package-mapping location: /tmp/guix-build-guix-0.13.0.drv-0/source/tests/packages.scm:889 source: + (test-equal + "package-mapping" + 42 + (let* ((dep (dummy-package + "chbouib" + (native-inputs `(("x" ,grep))))) + (p0 (dummy-package + "example" + (inputs + `(("foo" ,coreutils) ("bar" ,grep) ("baz" ,dep))))) + (transform + (lambda (p) (package (inherit p) (source 42)))) + (rewrite (package-mapping transform)) + (p1 (rewrite p0))) + (and (eq? p1 (rewrite p0)) + (eqv? 42 (package-source p1)) + (match (package-inputs p1) + ((("foo" dep1) ("bar" dep2) ("baz" dep3)) + (and (eq? dep1 (rewrite coreutils)) + (eq? dep2 (rewrite grep)) + (eq? dep3 (rewrite dep)) + (eqv? 42 + (package-source dep1) + (package-source dep2) + (package-source dep3)) + (match (package-native-inputs dep3) + ((("x" dep)) + (and (eq? dep (rewrite grep)) + (package-source dep)))))))))) expected-value: 42 actual-value: 42 result: PASS test-name: package-input-rewriting location: /tmp/guix-build-guix-0.13.0.drv-0/source/tests/packages.scm:916 source: + (test-assert + "package-input-rewriting" + (let* ((dep (dummy-package + "chbouib" + (native-inputs `(("x" ,grep))))) + (p0 (dummy-package + "example" + (inputs + `(("foo" ,coreutils) ("bar" ,grep) ("baz" ,dep))))) + (rewrite + (package-input-rewriting + `((,coreutils unquote sed) + (,grep unquote findutils)) + (cut string-append "r-" <>))) + (p1 (rewrite p0)) + (p2 (rewrite p0))) + (and (not (eq? p1 p0)) + (eq? p1 p2) + (string=3D? "r-example" (package-name p1)) + (match (package-inputs p1) + ((("foo" dep1) ("bar" dep2) ("baz" dep3)) + (and (eq? dep1 sed) + (eq? dep2 findutils) + (string=3D? (package-name dep3) "r-chbouib") + (eq? dep3 (rewrite dep)) + (match (package-native-inputs dep3) + ((("x" dep)) (eq? dep findutils))))))))) actual-value: #t result: PASS test-name: fold-packages location: /tmp/guix-build-guix-0.13.0.drv-0/source/tests/packages.scm:941 source: + (test-eq + "fold-packages" + hello + (fold-packages + (lambda (p r) + (if (string=3D? (package-name p) "hello") p r)) + #f)) expected-value: # actual-value: # result: PASS test-name: fold-packages, hidden package location: /tmp/guix-build-guix-0.13.0.drv-0/source/tests/packages.scm:948 source: + (test-assert + "fold-packages, hidden package" + (match (fold-packages + (lambda (p r) + (if (and (string=3D? (package-name p) "guile") + (string-prefix? "2.0" (package-version p))) + (cons p r) + r)) + '()) + ((one) (eq? one guile-2.0)))) actual-value: #t result: PASS test-name: find-packages-by-name location: /tmp/guix-build-guix-0.13.0.drv-0/source/tests/packages.scm:962 source: + (test-assert + "find-packages-by-name" + (match (find-packages-by-name "hello") + (((? (cut eq? hello <>))) #t) + (wrong (pk 'find-packages-by-name wrong #f)))) actual-value: #t result: PASS test-name: find-packages-by-name with version location: /tmp/guix-build-guix-0.13.0.drv-0/source/tests/packages.scm:967 source: + (test-assert + "find-packages-by-name with version" + (match (find-packages-by-name + "hello" + (package-version hello)) + (((? (cut eq? hello <>))) #t) + (wrong (pk 'find-packages-by-name wrong #f)))) actual-value: #t result: PASS test-name: --search-paths with pattern location: /tmp/guix-build-guix-0.13.0.drv-0/source/tests/packages.scm:972 source: + (test-assert + "--search-paths with pattern" + (let* ((p1 (package + (name "foo") + (version "0") + (source #f) + (build-system trivial-build-system) + @ build-started /tmp/guix-tests/store/776fmfgvl86sycqhwylvbxvj8la= mpqyr-foo-0.drv - x86_64-linux /tmp/guix-tests/var/log/guix/drvs/77//6fmfgv= l86sycqhwylvbxvj8lampqyr-foo-0.drv.bz2 @ build-succeeded /tmp/guix-tests/store/776fmfgvl86sycqhwylvbxvj8lampqyr-fo= o-0.drv - @ build-started /tmp/guix-tests/store/r2cwc0ymafj3fih71ddlpvv48ibh3r5f-libx= ml2-0.0.0.drv - x86_64-linux /tmp/guix-tests/var/log/guix/drvs/r2//cwc0ymaf= j3fih71ddlpvv48ibh3r5f-libxml2-0.0.0.drv.bz2 @ build-succeeded /tmp/guix-tests/store/r2cwc0ymafj3fih71ddlpvv48ibh3r5f-li= bxml2-0.0.0.drv - @ build-started /tmp/guix-tests/store/2kgydlmck3v1yhapigr0nngwsii3zg09-modu= le-import.drv - x86_64-linux /tmp/guix-tests/var/log/guix/drvs/2k//gydlmck3= v1yhapigr0nngwsii3zg09-module-import.drv.bz2 @ build-succeeded /tmp/guix-tests/store/2kgydlmck3v1yhapigr0nngwsii3zg09-mo= dule-import.drv - @ build-started /tmp/guix-tests/store/zlmj31wzwc9zr5x2jcjlbcq8v04jfmli-modu= le-import-compiled.drv - x86_64-linux /tmp/guix-tests/var/log/guix/drvs/zl/= /mj31wzwc9zr5x2jcjlbcq8v04jfmli-module-import-compiled.drv.bz2 @ build-succeeded /tmp/guix-tests/store/zlmj31wzwc9zr5x2jcjlbcq8v04jfmli-mo= dule-import-compiled.drv - @ build-started /tmp/guix-tests/store/vpkk5ncdij2jxrq5rzbkanigs8ykfzvb-prof= ile.drv - x86_64-linux /tmp/guix-tests/var/log/guix/drvs/vp//kk5ncdij2jxrq5= rzbkanigs8ykfzvb-profile.drv.bz2 @ build-succeeded /tmp/guix-tests/store/vpkk5ncdij2jxrq5rzbkanigs8ykfzvb-pr= ofile.drv - (arguments + `(#:guile + ,%bootstrap-guile + #:modules + ((guix build utils)) + #:builder + (begin + (use-modules (guix build utils)) + (let ((out (assoc-ref %outputs "out"))) + (mkdir-p (string-append out "/xml/bar/baz")) + (call-with-output-file + (string-append out "/xml/bar/baz/catalog.xml") + (lambda (port) (display "xml? wat?!" port))))))) + (synopsis #f) + (description #f) + (home-page #f) + (license #f))) + (p2 (package + (name "libxml2") + (version "0.0.0") + (source #f) + (build-system trivial-build-system) + (arguments + `(#:guile + ,%bootstrap-guile + #:builder + (mkdir (assoc-ref %outputs "out")))) + (native-search-paths + (package-native-search-paths libxml2)) + (synopsis #f) + (description #f) + (home-page #f) + (license #f))) + (prof (run-with-store + %store + (profile-derivation + (manifest + (map package->manifest-entry (list p1 p2))) + #:hooks + '() + #:locales? + #f) + #:guile-for-build + (%guile-for-build)))) + (build-derivations %store (list prof)) + (string-match + (format + #f + "^export XML_CATALOG_FILES=3D\"~a/xml/+bar/baz/catalog\\.xml\"\n" + (regexp-quote (derivation->output-path prof))) + (with-output-to-string + (lambda () + (guix-package + "-p" + (derivation->output-path prof) + "--search-paths")))))) actual-value: #("export XML_CATALOG_FILES=3D\"/tmp/guix-tests/store/xfvb2ph= p359331lx0yvs40csll9rag95-profile/xml/bar/baz/catalog.xml\"\n" (0 . 114)) result: PASS test-name: --search-paths with single-item search path location: /tmp/guix-build-guix-0.13.0.drv-0/source/tests/packages.scm:1020 source: + (test-assert + "--search-paths with single-item search path" + (let* ((p1 (dummy-package + "foo" + (build-system trivial-build-system) + (arguments + `(#:guile + ,%bootstrap-guile + #:modules + ((guix build utils)) + #:builder + (begin + (use-modules (guix build utils)) + (let ((out (assoc-ref %outputs "out"))) + (mkdir-p (string-append out "/etc/ssl/certs")) + (call-with-output-file + (string-append + out + "/etc/ssl/certs/ca-certificates.crt") + (const #t)))))))) + (p2 (package (inherit p1) (name "bar"))) + (p3 (dummy-package + "git" + (build-system trivial-build-system) + (arguments + `(#:guile + ,%bootstrap-guile + #:builder + (mkdir (assoc-ref %outputs "out")))) + (native-search-paths + (package-native-search-paths git)))) + (prof1 (run-with-store + %store + (profile-derivation + (packages->manifest (list p1 p3)) + #:hooks + '() + #:locales? + #f) + #:guile-for-build + (%guile-for-build))) + (prof2 (run-with-store + %store + @ build-started /tmp/guix-tests/store/z037c1pxr6gd46nxgv66r14x3bv= macc6-bar-0.drv - x86_64-linux /tmp/guix-tests/var/log/guix/drvs/z0//37c1px= r6gd46nxgv66r14x3bvmacc6-bar-0.drv.bz2 @ build-succeeded /tmp/guix-tests/store/z037c1pxr6gd46nxgv66r14x3bvmacc6-ba= r-0.drv - @ build-started /tmp/guix-tests/store/rvhc8kmr5b52q16m0cmhlm321sy7cczb-foo-= 0.drv - x86_64-linux /tmp/guix-tests/var/log/guix/drvs/rv//hc8kmr5b52q16m0c= mhlm321sy7cczb-foo-0.drv.bz2 @ build-succeeded /tmp/guix-tests/store/rvhc8kmr5b52q16m0cmhlm321sy7cczb-fo= o-0.drv - @ build-started /tmp/guix-tests/store/ilbcggmc6x2s6gffll2k7b1ryyvr0p3j-git-= 0.drv - x86_64-linux /tmp/guix-tests/var/log/guix/drvs/il//bcggmc6x2s6gffll= 2k7b1ryyvr0p3j-git-0.drv.bz2 @ build-succeeded /tmp/guix-tests/store/ilbcggmc6x2s6gffll2k7b1ryyvr0p3j-gi= t-0.drv - @ build-started /tmp/guix-tests/store/6dls0qzhbnza3g7f93p1a612dqkr76hz-prof= ile.drv - x86_64-linux /tmp/guix-tests/var/log/guix/drvs/6d//ls0qzhbnza3g7f= 93p1a612dqkr76hz-profile.drv.bz2 @ build-succeeded /tmp/guix-tests/store/6dls0qzhbnza3g7f93p1a612dqkr76hz-pr= ofile.drv - @ build-started /tmp/guix-tests/store/wlbck30fx0hyrvw6w83fn0a3y2rc0gbp-prof= ile.drv - x86_64-linux /tmp/guix-tests/var/log/guix/drvs/wl//bck30fx0hyrvw6= w83fn0a3y2rc0gbp-profile.drv.bz2 @ build-succeeded /tmp/guix-tests/store/wlbck30fx0hyrvw6w83fn0a3y2rc0gbp-pr= ofile.drv - error: this-package-does-not-exist: unknown package (profile-derivation + (packages->manifest (list p2 p3)) + #:hooks + '() + #:locales? + #f) + #:guile-for-build + (%guile-for-build)))) + (build-derivations %store (list prof1 prof2)) + (string-match + (format + #f + "^export GIT_SSL_CAINFO=3D\"~a/etc/ssl/certs/ca-certificates.crt" + (regexp-quote (derivation->output-path prof1))) + (with-output-to-string + (lambda () + (guix-package + "-p" + (derivation->output-path prof1) + "-p" + (derivation->output-path prof2) + "--search-paths")))))) actual-value: #("export GIT_SSL_CAINFO=3D\"/tmp/guix-tests/store/gvd1ajkzd5= yvzqs3z4cdqixk2gll8245-profile/etc/ssl/certs/ca-certificates.crt\"\n" (0 . = 119)) result: PASS test-name: specification->package when not found location: /tmp/guix-build-guix-0.13.0.drv-0/source/tests/packages.scm:1066 source: + (test-equal + "specification->package when not found" + 'quit + (catch 'quit + (lambda () + (specification->package + "this-package-does-not-exist")) + (lambda (key . args) key))) expected-value: quit actual-value: quit result: PASS SKIP: tests/snix =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D test-name: factorize-uri location: /tmp/guix-build-guix-0.13.0.drv-0/source/tests/snix.scm:36 source: + (test-assert + "factorize-uri" + (every? + (match-lambda + ((uri version '-> expected) + (equal? (factorize-uri uri version) expected))) + '(("http://example.com/foo.tgz" + "1.0" + -> + "http://example.com/foo.tgz") + ("http://example.com/foo-2.8.tgz" + "2.8" + -> + ("http://example.com/foo-" version ".tgz")) + ("http://example.com/2.8/foo-2.8.tgz" + "2.8" + -> + ("http://example.com/" + version + "/foo-" + version + ".tgz"))))) actual-value: #t result: PASS test-name: nixpkgs->guix-package location: /tmp/guix-build-guix-0.13.0.drv-0/source/tests/snix.scm:54 source: + (test-assert + "nixpkgs->guix-package" + (match (nixpkgs->guix-package + %nixpkgs-directory + "guile") + (('package + ('name "guile") + ('version (? string?)) + ('source ('origin _ ...)) + ('build-system _) + ('inputs ('quasiquote (inputs ...))) + ('propagated-inputs ('quasiquote (pinputs ...))) + ('home-page (? string?)) + ('synopsis (? string?)) + ('description (? string?)) + ('license (? symbol?))) + (and (member '("libffi" ,libffi) inputs) + (member '("gmp" ,gmp) pinputs) + #t)) + (x (pk 'fail x #f)))) result: SKIP FAIL: tests/store =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D test-name: open-connection with file:// URI location: /tmp/guix-build-guix-0.13.0.drv-0/source/tests/store.scm:51 source: + (test-assert + "open-connection with file:// URI" + (let ((store (open-connection + (string-append "file://" (%daemon-socket-uri))))) + (and (add-text-to-store store "foo" "bar") + (begin (close-connection store) #t)))) actual-value: #t result: PASS test-name: connection handshake error location: /tmp/guix-build-guix-0.13.0.drv-0/source/tests/store.scm:59 source: + (test-equal + "connection handshake error" + EPROTO + (let ((port (%make-void-port "rw"))) + (guard (c ((nix-connection-error? c) + (and (eq? port (nix-connection-error-file c)) + (nix-connection-error-code c)))) + (open-connection #f #:port port) + 'broken))) expected-value: 71 actual-value: 71 result: PASS test-name: store-path-hash-part location: /tmp/guix-build-guix-0.13.0.drv-0/source/tests/store.scm:68 source: + (test-equal + "store-path-hash-part" + "283gqy39v3g9dxjy26rynl0zls82fmcg" + (store-path-hash-part + (string-append + (%store-prefix) + "/283gqy39v3g9dxjy26rynl0zls82fmcg-guile-2.0.7"))) expected-value: "283gqy39v3g9dxjy26rynl0zls82fmcg" actual-value: "283gqy39v3g9dxjy26rynl0zls82fmcg" result: PASS test-name: store-path-hash-part #f location: /tmp/guix-build-guix-0.13.0.drv-0/source/tests/store.scm:74 source: + (test-equal + "store-path-hash-part #f" + #f + (store-path-hash-part + (string-append + (%store-prefix) + "/foo/bar/283gqy39v3g9dxjy26rynl0zls82fmcg-guile-2.0.7"))) expected-value: #f actual-value: #f result: PASS test-name: store-path-package-name location: /tmp/guix-build-guix-0.13.0.drv-0/source/tests/store.scm:80 source: + (test-equal + "store-path-package-name" + "guile-2.0.7" + (store-path-package-name + (string-append + (%store-prefix) + "/283gqy39v3g9dxjy26rynl0zls82fmcg-guile-2.0.7"))) expected-value: "guile-2.0.7" actual-value: "guile-2.0.7" result: PASS test-name: store-path-package-name #f location: /tmp/guix-build-guix-0.13.0.drv-0/source/tests/store.scm:86 source: + (test-equal + "store-path-package-name #f" + #f + (store-path-package-name + "/foo/bar/283gqy39v3g9dxjy26rynl0zls82fmcg-guile-2.0.7")) expected-value: #f actual-value: #f result: PASS test-name: direct-store-path? location: /tmp/guix-build-guix-0.13.0.drv-0/source/tests/store.scm:91 source: + (test-assert + "direct-store-path?" + (and (direct-store-path? + (string-append + (%store-prefix) + "/283gqy39v3g9dxjy26rynl0zls82fmcg-guile-2.0.7")) + (not (direct-store-path? + (string-append + (%store-prefix) + "/283gqy39v3g9dxjy26rynl0zls82fmcg-guile-2.0.7/bin/guile"= ))) + (not (direct-store-path? (%store-prefix))))) actual-value: #t result: PASS test-name: add-data-to-store location: /tmp/guix-build-guix-0.13.0.drv-0/source/tests/store.scm:103 source: + (test-equal + "add-data-to-store" + #vu8(1 2 3 4 5) + (call-with-input-file + (add-data-to-store %store "data" #vu8(1 2 3 4 5)) + get-bytevector-all)) expected-value: #vu8(1 2 3 4 5) actual-value: #vu8(1 2 3 4 5) result: PASS test-name: valid-path? live location: /tmp/guix-build-guix-0.13.0.drv-0/source/tests/store.scm:108 source: + (test-assert + "valid-path? live" + (let ((p (add-text-to-store %store "hello" "hello, world"))) + (valid-path? %store p))) actual-value: #t result: PASS test-name: valid-path? false location: /tmp/guix-build-guix-0.13.0.drv-0/source/tests/store.scm:112 source: + (test-assert + "valid-path? false" + (not (valid-path? + %store + (string-append + (%store-prefix) + "/" + (make-string 32 #\e) + "-foobar")))) actual-value: #t result: PASS test-name: valid-path? error location: /tmp/guix-build-guix-0.13.0.drv-0/source/tests/store.scm:117 source: + (test-assert + "valid-path? error" + (with-store + s + (random seed for tests: 1495525993 finding garbage collector roots... removing stale temporary roots file `/tmp/guix-tests/var/12270/temproots/12= 286' determining live/dead paths... finding garbage collector roots... removing stale temporary roots file `/tmp/guix-tests/var/12270/temproots/.f= use_hidden0000ea9c000016bb' determining live/dead paths... finding garbage collector roots... removing stale temporary roots file `/tmp/guix-tests/var/12270/temproots/.f= use_hidden0000ea9c000016bd' determining live/dead paths... finding garbage collector roots... removing stale temporary roots file `/tmp/guix-tests/var/12270/temproots/.f= use_hidden0000ea9c000016be' deleting unused links... finding garbage collector roots... removing stale temporary roots file `/tmp/guix-tests/var/12270/temproots/.f= use_hidden0000ea9c000016c0' removing stale temporary roots file `/tmp/guix-tests/var/12270/temproots/12= 307' deleting `/tmp/guix-tests/store/9zknarblxg7fqa2xa995yn851fqfv5cd-delete-me' deleting `/tmp/guix-tests/store/trash' deleting unused links... note: currently hard linking saves 0.52 MiB finding garbage collector roots... removing stale temporary roots file `/tmp/guix-tests/var/12270/temproots/.f= use_hidden0000ea9c000016c2' removing stale temporary roots file `/tmp/guix-tests/var/12270/temproots/12= 312' deleting `/tmp/guix-tests/store/a27v317kpgsn1k82vnqhn02s9hjqwg5f-delete-me' deleting `/tmp/guix-tests/store/trash' deleting unused links... note: currently hard linking saves 0.52 MiB guard (c ((nix-protocol-error? c) #t)) + (valid-path? s "foo") + #f))) actual-value: #t result: PASS test-name: valid-path? recovery location: /tmp/guix-build-guix-0.13.0.drv-0/source/tests/store.scm:123 source: + (test-assert + "valid-path? recovery" + (with-store + s + (let-syntax ((true-if-error + (syntax-rules () + ((_ exp) + (guard (c ((nix-protocol-error? c) #t)) exp #f))))) + (and (true-if-error (valid-path? s "foo")) + (true-if-error (valid-path? s "bar")) + (true-if-error (valid-path? s "baz")) + (true-if-error (valid-path? s "chbouib")) + (valid-path? + s + (add-text-to-store s "valid" "yeah")))))) actual-value: #t result: PASS test-name: hash-part->path location: /tmp/guix-build-guix-0.13.0.drv-0/source/tests/store.scm:140 source: + (test-assert + "hash-part->path" + (let ((p (add-text-to-store %store "hello" "hello, world"))) + (equal? + (hash-part->path %store (store-path-hash-part p)) + p))) actual-value: #t result: PASS test-name: dead-paths location: /tmp/guix-build-guix-0.13.0.drv-0/source/tests/store.scm:145 source: + (test-assert + "dead-paths" + (let ((p (add-text-to-store + %store + "random-text" + (random-text)))) + (->bool (member p (dead-paths %store))))) actual-value: #t result: PASS test-name: permanent root location: /tmp/guix-build-guix-0.13.0.drv-0/source/tests/store.scm:166 source: + (test-assert + "permanent root" + (let* ((p (with-store + store + (let ((p (add-text-to-store + store + "random-text" + (random-text)))) + (add-permanent-root p) + (add-permanent-root p) + p)))) + (and (member p (live-paths %store)) + (begin + (remove-permanent-root p) + (->bool (member p (dead-paths %store))))))) actual-value: #t result: PASS test-name: dead path can be explicitly collected location: /tmp/guix-build-guix-0.13.0.drv-0/source/tests/store.scm:178 source: + (test-assert + "dead path can be explicitly collected" + (let ((p (add-text-to-store + %store + "random-text" + (random-text) + '()))) + (let-values + (((paths freed) (delete-paths %store (list p)))) + (and (equal? paths (list p)) + (> freed 0) + (not (file-exists? p)))))) actual-value: #f result: FAIL test-name: add-text-to-store vs. delete-paths location: /tmp/guix-build-guix-0.13.0.drv-0/source/tests/store.scm:186 source: + (test-assert + "add-text-to-store vs. delete-paths" + (with-store + store + (let* ((text (random-text)) + (path (add-text-to-store store "delete-me" text)) + (deleted (delete-paths store (list path))) + (path2 (add-text-to-store store "delete-me" text))) + (and (string=3D? path path2) + (equal? deleted (list path)) + (valid-path? store path) + (file-exists? path))))) actual-value: #t result: PASS test-name: add-to-store vs. delete-paths location: /tmp/guix-build-guix-0.13.0.drv-0/source/tests/store.scm:199 source: + (test-assert + "add-to-store vs. delete-paths" + (with-store + store + (let* ((file (search-path %load-path "guix.scm")) + (path (add-to-store store "delete-me" #t "sha256" file)) + (deleted (delete-paths store (list path))) + (path2 (add-to-store store "delete-me" #t "sha256" file))) + (and (string=3D? path path2) + (equal? deleted (list path)) + (valid-path? store path) + (file-exists? path))))) actual-value: #t result: PASS test-name: references location: /tmp/guix-build-guix-0.13.0.drv-0/source/tests/store.scm:211 source: + (test-assert + "references" + (let* ((t1 (add-text-to-store + %store + substitute: warning: authentication and authorization of substitu= tes disabled! substitute: guix substitute: warning: ACL for archive imports seems to be u= ninitialized, substitutes may be unavailable "random1" + (random-text))) + (t2 (add-text-to-store + %store + "random2" + (random-text) + (list t1)))) + (and (equal? (list t1) (references %store t2)) + (equal? (list t2) (referrers %store t1)) + (null? (references %store t1)) + (null? (referrers %store t2))))) actual-value: #t result: PASS test-name: references/substitutes missing reference info location: /tmp/guix-build-guix-0.13.0.drv-0/source/tests/store.scm:221 source: + (test-assert + "references/substitutes missing reference info" + (with-store + s + (set-build-options s #:use-substitutes? #f) + (guard (c ((nix-protocol-error? c) #t)) + (let* ((b (add-to-store + s + "bash" + #t + "sha256" + (search-bootstrap-binary + "bash" + (%current-system)))) + (d (derivation + s + "the-thing" + b + '("--help") + #:inputs + `((,b))))) + (references/substitutes + s + (list (derivation->output-path d) b)) + #f)))) actual-value: #t result: PASS test-name: references/substitutes with substitute info location: /tmp/guix-build-guix-0.13.0.drv-0/source/tests/store.scm:233 source: + (test-assert + "references/substitutes with substitute info" + (with-store + s + (set-build-options s #:use-substitutes? #t) + (let* ((t1 (add-text-to-store s "random1" (random-text))) + (t2 (add-text-to-store + s + "random2" + (random-text) + (list t1))) + (t3 (add-text-to-store + s + "build" + "echo -n $t2 > $out")) + (b (add-to-store + s + "bash" + #t + "sha256" + (search-bootstrap-binary + "bash" + (%current-system)))) + (d (derivation + s + "the-thing" + b + `("-e" ,t3) + #:inputs + `((,b) (,t3) (,t2)) + #:env-vars + `(("t2" unquote t2)))) + (o (derivation->output-path d))) + (with-derivation-narinfo + d + (sha256 =3D> (sha256 (string->utf8 t2))) + (references =3D> (list t2)) + (equal? + (references/substitutes s (list o t3 t2 t1)) + `((,t2) () (,t1) ())))))) actual-value: #t result: PASS test-name: substitutable-path-info when substitutes are turned off location: /tmp/guix-build-guix-0.13.0.drv-0/source/tests/store.scm:257 source: + (test-equal + "substitutable-path-info when substitutes are turned off" + '() + (with-store + s + (set-build-options s #:use-substitutes? #f) + (let* ((b (add-to-store + s + "bash" + #t + "sha256" + (search-bootstrap-binary + "bash" + (%current-system)))) + (d (derivation + s + "the-thing" + b + '("--version") + #:inputs + `((,b)))) + (o (derivation->output-path d))) + (with-derivation-narinfo + d + (substitutable-path-info s (list o)))))) expected-value: () actual-value: () result: PASS test-name: substitutable-paths when substitutes are turned off location: /tmp/guix-build-guix-0.13.0.drv-0/source/tests/store.scm:270 source: + (test-equal + "substitutable-paths when substitutes are turned off" + '() + (with-store + s + (set-build-options s #:use-substitutes? #f) + (let* ((b (@ build-started /tmp/guix-tests/store/hpwsa76fzjzv9dir8my0= 73aadvlr9kdg-the-thing.drv - x86_64-linux /tmp/guix-tests/var/log/guix/drvs= /hp//wsa76fzjzv9dir8my073aadvlr9kdg-the-thing.drv.bz2 @ build-succeeded /tmp/guix-tests/store/hpwsa76fzjzv9dir8my073aadvlr9kdg-th= e-thing.drv - add-to-store + s + "bash" + #t + "sha256" + (search-bootstrap-binary + "bash" + (%current-system)))) + (d (derivation + s + "the-thing" + b + '("--version") + #:inputs + `((,b)))) + (o (derivation->output-path d))) + (with-derivation-narinfo + d + (substitutable-paths s (list o)))))) expected-value: () actual-value: () result: PASS test-name: requisites location: /tmp/guix-build-guix-0.13.0.drv-0/source/tests/store.scm:283 source: + (test-assert + "requisites" + (let* ((t1 (add-text-to-store + %store + "random1" + (random-text) + '())) + (t2 (add-text-to-store + %store + "random2" + (random-text) + (list t1))) + (t3 (add-text-to-store + %store + "random3" + (random-text) + (list t2))) + (t4 (add-text-to-store + %store + "random4" + (random-text) + (list t1 t3)))) + (define (same? x y) + (and (=3D (length x) (length y)) + (lset=3D equal? x y))) + (and (same? (requisites %store (list t1)) (list t1)) + (same? (requisites %store (list t2)) + (list t1 t2)) + (same? (requisites %store (list t3)) + (list t1 t2 t3)) + (same? (requisites %store (list t4)) + (list t1 t2 t3 t4)) + (same? (requisites %store (list t1 t2 t3 t4)) + (list t1 t2 t3 t4))))) actual-value: #t result: PASS test-name: derivers location: /tmp/guix-build-guix-0.13.0.drv-0/source/tests/store.scm:303 source: + (test-assert + "derivers" + (let* ((b (add-text-to-store + %store + "build" + "echo $foo > $out" + '())) + (s (add-to-store + %store + "bash" + #t + "sha256" + (search-bootstrap-binary + "bash" + (%current-system)))) + (d (derivation + %store + "the-thing" + s + `("-e" ,b) + #:env-vars + `(("foo" unquote (random-text))) + #:inputs + `((,b) (,s)))) + (o (derivation->output-path d))) + (and (build-derivations %store (list d)) + (equal? + (query-derivation-outputs + %store + (derivation-file-name d)) + (list o)) + (equal? + (valid-derivers %store o) + (list (derivation-file-name d)))))) actual-value: #t result: PASS test-name: topologically-sorted, one item location: /tmp/guix-build-guix-0.13.0.drv-0/source/tests/store.scm:319 source: + (test-assert + "topologically-sorted, one item" + (let* ((a (add-text-to-store %store "a" "a")) + (b (add-text-to-store %store "b" "b" (list a))) + (c (add-text-to-store %store "c" "c" (list b))) + (d (add-text-to-store %store "d" "d" (list c))) + (s (topologically-sorted %store (list d)))) + (equal? s (list a b c d)))) actual-value: #t result: PASS test-name: topologically-sorted, several items location: /tmp/guix-build-guix-0.13.0.drv-0/source/tests/store.scm:327 source: + (test-assert + "topologically-sorted, several items" + (let* ((a (add-text-to-store %store "a" "a")) + (b (add-text-to-store %store "b" "b" (list a))) + (c (add-text-to-store %store "c" "c" (list b))) + (d (add-text-to-store %store "d" "d" (list c))) + (s1 (topologically-sorted %store (list d a c b))) + (s2 (topologically-sorted %store (list b d c a b d)))) + (equal? s1 s2 (list a b c d)))) actual-value: #t result: PASS test-name: topologically-sorted, more difficult location: /tmp/guix-build-guix-0.13.0.drv-0/source/tests/store.scm:336 source: + (test-assert + "topologically-sorted, more difficult" + (let* ((a (add-text-to-store %store "a" "a")) + (b (add-text-to-store %store "b" "b" (list a))) + (c (add-text-to-store %store "c" "c" (list b))) + (d (add-text-to-store %store "d" "d" (list c))) + (w (add-text-to-store %store "w" "w")) + (x (add-text-to-store %store "x" "x" (list w))) + (y (add-text-to-store %store "y" "y" (list x d))) + (s1 (topologically-sorted %store (list y))) + (s2 (topologically-sorted %store (list c y))) + (s3 (topologically-sorted + %store + (cons y (references %store y))))) + (let* ((x-then-d? + (equal? (references %store y) (list x d)))) + (and (equal? + s1 + (if x-then-d? + (list w x a b c d y) + (list a b c d w x y))) + (equal? + s2 + (if x-then-d? + (list a b c w x d y) + (list a b c d w x y))) + (lset=3D string=3D? s1 s3))))) actual-value: #t result: PASS test-name: current-build-output-port, UTF-8 location: /tmp/guix-build-guix-0.13.0.drv-0/source/tests/store.scm:360 source: + (test-assert + "current-build-output-port, UTF-8" + (string-contains + (with-fluids + ((%default-port-encoding "UTF-8")) + (call-with-output-string + (lambda (port) + (parameterize + ((current-build-output-port port)) + (let* ((s "Here=E2=80=99s a Greek letter: =CE=BB.") + (d (build-expression->derivation + %store + "foo" + `(display ,s) + #:guile-for-build + (package-derivation + s + %bootstrap-guile + (%current-system))))) + (guard (c ((nix-protocol-error? c) #t)) + (build-derivations %store (list d)))))))) + "Here=E2=80=99s a Greek letter: =CE=BB.")) actual-value: 175 result: PASS test-name: current-build-output-port, UTF-8 + garbage location: /tmp/guix-build-guix-0.13.0.drv-0/source/tests/store.scm:376 source: + (test-assert + "current-build-output-port, UTF-8 + garbage" + (string-contains + (with-fluids + ((%default-port-encoding "UTF-8")) + (call-with-output-string + (lambda (port) + (parameterize + ((current-build-output-port port)) + (let ((d (build-expression->derivation + %store + "foo" + `(begin + (use-modules (rnrs io ports)) + (display "garbage: ") + (put-bytevector (current-output-port) #vu8(128)) + (display "lambda: =CE=BB\n")) + #:guile-for-build + (package-derivation %store %bootstrap-guile)))) + (guard (c ((nix-protocol-error? c) #t)) + (build-derivations %store (list d)))))))) + (cond-expand + (guile-2.2 "garbage: =EF=BF=BDlambda: =CE=BB") + (else "garbage: ?lambda: =CE=BB")))) actual-value: 175 result: PASS test-name: log-file, derivation location: /tmp/guix-build-guix-0.13.0.drv-0/source/tests/store.scm:398 source: + (test-assert + "log-file, derivation" + (let* ((b (add-text-to-store + %store + "build" + "echo $foo > $out" + '())) + (s (add-to-store + %store + "bash" + #t + "sha256" + (search-bootstrap-binary + "bash" + (%current-system)))) + (d (derivation + %store + "the-thing" + s + `("-e" ,b) + #:env-vars + @ build-started /tmp/guix-tests/store/fngaw9mvikwb56697gv68k554jzjring-th= e-thing.drv - x86_64-linux /tmp/guix-tests/var/log/guix/drvs/fn//gaw9mvikwb= 56697gv68k554jzjring-the-thing.drv.bz2 @ build-succeeded /tmp/guix-tests/store/fngaw9mvikwb56697gv68k554jzjring-th= e-thing.drv - @ build-started /tmp/guix-tests/store/1ghvivjgjr6n8g0vwhgjdb2v85m5v5si-the-= thing.drv - x86_64-linux /tmp/guix-tests/var/log/guix/drvs/1g//hvivjgjr6n8g= 0vwhgjdb2v85m5v5si-the-thing.drv.bz2 @ build-succeeded /tmp/guix-tests/store/1ghvivjgjr6n8g0vwhgjdb2v85m5v5si-th= e-thing.drv - `(("foo" unquote (random-text))) + #:inputs + `((,b) (,s))))) + (and (build-derivations %store (list d)) + (file-exists? + (pk (log-file %store (derivation-file-name d))))))) ;;; ("/tmp/guix-tests/var/log/guix/drvs/fn/gaw9mvikwb56697gv68k554jzjring-t= he-thing.drv.bz2") actual-value: #t result: PASS test-name: log-file, output file name location: /tmp/guix-build-guix-0.13.0.drv-0/source/tests/store.scm:410 source: + (test-assert + "log-file, output file name" + (let* ((b (add-text-to-store + %store + "build" + "echo $foo > $out" + '())) + (s (add-to-store + %store + "bash" + #t + "sha256" + (search-bootstrap-binary + "bash" + (%current-system)))) + (d (derivation + %store + "the-thing" + s + `("-e" ,b) + #:env-vars + `(("foo" unquote (random-text))) + #:inputs + `((,b) (,s)))) + (o (derivation->output-path d))) + (and (build-derivations %store (list d)) + (file-exists? (pk (log-file %store o))) + (string=3D? + (log-file %store (derivation-file-name d)) + (log-file %store o))))) ;;; ("/tmp/guix-tests/var/log/guix/drvs/1g/hvivjgjr6n8g0vwhgjdb2v85m5v5si-t= he-thing.drv.bz2") actual-value: #t result: PASS test-name: no substitutes location: /tmp/guix-build-guix-0.13.0.drv-0/source/tests/store.scm:425 source: + (test-assert + "no substitutes" + (with-store + s + (let* ((d1 (package-derivation + s + %bootstrap-guile + (%current-system))) + (d2 (package-derivation + s + %bootstrap-glibc + (%current-system))) + (o (map derivation->output-path (list d1 d2)))) + (set-build-options s #:use-substitutes? #f) + (and (not (has-substitutes? s (derivation-file-name d1))) + (not (has-substitutes? s (derivation-file-name d2))) + (null? (substitutable-paths s o)) + (null? (substitutable-path-info s o)))))) actual-value: #t result: PASS test-name: build-things with output path location: /tmp/guix-build-guix-0.13.0.drv-0/source/tests/store.scm:436 source: + (test-assert + "build-things with output path" + (with-store + s + (let* ((c (random-text)) + (d (build-expression->derivation + s + "substitute-me" + `(call-with-output-file + %output + (lambda (p) (display ,c p))) + #:guile-for-build + (package-derivation + s + %bootstrap-guile + (%current-system)))) + (o (derivation->output-path d))) + (set-build-options s #:use-substitutes? #f) + (build-things s (list o)) + (not (valid-path? s o))))) actual-value: #t result: PASS test-name: substitute query location: /tmp/guix-build-guix-0.13.0.drv-0/source/tests/store.scm:456 source: + (test-assert + "substitute query" + (with-store + s + (let* ((d (package-derivation + s + %bootstrap-guile + (%current-system))) + (o (derivation->output-path d))) + (with-derivation-narinfo + d + (false-if-exception + (delete-file-recursively + (string-append + (getenv "XDG_CACHE_HOME") + "/guix/substitute"))) + (set-build-options + s + #:use-substitutes? + #t + #:substitute-urls + (%test-substitute-urls)) + (and (has-substitutes? s o) + (equal? + (list o) + (substitutable-paths s (list o))) + (match (pk 'spi (substitutable-path-info s (list o))) + substitute: warning: authentication and authorization of substitu= tes disabled! substitute: guix substitute: warning: ACL for archive imports seems to be u= ninitialized, substitutes may be unavailable substitute: warning: authentication and authorization of substitutes disabl= ed! substitute: guix substitute: warning: ACL for archive imports seems to be u= ninitialized, substitutes may be unavailable substitute: warning: authentication and authorization of substitutes disabl= ed! substitute: guix substitute: warning: ACL for archive imports seems to be u= ninitialized, substitutes may be unavailable substitute: warning: authentication and authorization of substitutes disabl= ed! substitute: guix substitute: warning: ACL for archive imports seems to be u= ninitialized, substitutes may be unavailable substitute: warning: authentication and authorization of substitutes disabl= ed! substitute: guix substitute: warning: ACL for archive imports seems to be u= ninitialized, substitutes may be unavailable substitute: warning: authentication and authorization of substitutes disabl= ed! substitute: guix substitute: warning: ACL for archive imports seems to be u= ninitialized, substitutes may be unavailable @ substituter-started /tmp/guix-tests/store/z72pq6a0r2wrxcv0njs4933q88dp2lc= l-substitute-me /tmp/guix-build-guix-0.13.0.drv-0/source/nix/scripts/substi= tute warning: authentication and authorization of substitutes disabled! guix substitute: warning: ACL for archive imports seems to be uninitialized= , substitutes may be unavailable Downloading file:/tmp/guix-tests/var/12270/substituter-data/example.nar (1K= iB installed)... =1B[K example.nar 176B 0B/s 00:00 [###################= #] 100.0% @ substituter-succeeded /tmp/guix-tests/store/z72pq6a0r2wrxcv0njs4933q88dp2= lcl-substitute-me (((? substitutable? s)) + (and (string=3D? + (substitutable-deriver s) + (derivation-file-name d)) + (null? (substitutable-references s)) + (equal? (substitutable-nar-size s) 1234))))))))) ;;; (spi (#< path: "/tmp/guix-tests/store/7y0q8n6zv41lr9viyb= hihlcmhri6939f-guile-bootstrap-2.0" deriver: "/tmp/guix-tests/store/kn0gx5n= a8k2nilq6c362bmavywnilkhq-guile-bootstrap-2.0.drv" refs: () dl-size: 0 nar-= size: 1234>)) actual-value: #t result: PASS test-name: substitute query, alternating URLs location: /tmp/guix-build-guix-0.13.0.drv-0/source/tests/store.scm:480 source: + (test-assert + "substitute query, alternating URLs" + (let* ((d (with-store + s + (package-derivation + s + %bootstrap-guile + (%current-system)))) + (o (derivation->output-path d))) + (with-derivation-narinfo + d + (false-if-exception + (delete-file-recursively + (string-append + (getenv "XDG_CACHE_HOME") + "/guix/substitute"))) + (and (with-store + s + (set-build-options + s + #:use-substitutes? + #t + #:substitute-urls + (%test-substitute-urls)) + (has-substitutes? s o)) + (with-store + s + (set-build-options + s + #:use-substitutes? + #t + #:substitute-urls + (list "http://does-not-exist")) + (not (has-substitutes? s o))) + (with-store + s + (set-build-options + s + #:use-substitutes? + #t + #:substitute-urls + (%test-substitute-urls)) + (has-substitutes? s o)) + (with-store + s + (set-build-options + s + #:use-substitutes? + #t + #:substitute-urls + '()) + (not (has-substitutes? s o))))))) actual-value: #t result: PASS test-name: substitute location: /tmp/guix-build-guix-0.13.0.drv-0/source/tests/store.scm:512 source: + (test-assert + "substitute" + (with-store + s + (let* ((c (random-text)) + (d (build-expression->derivation + s + "substitute-me" + `(call-with-output-file + %output + (lambda (p) (exit 1) (display ,c p))) + #:guile-for-build + (package-derivation + s + %bootstrap-guile + (%current-system)))) + (o (derivation->output-path d))) + (with-derivation-substitute + d + c + (set-build-options + s + #:use-substitutes? + #t + #:substitute-urls + (%test-substitute-urls)) + (and (has-substitutes? s o) + (build-derivations s (list d)) + (equal? + c + (call-with-input-file o get-string-all))))))) actual-value: #t result: PASS test-name: substitute + build-things with output path location: /tmp/guix-build-guix-0.13.0.drv-0/source/tests/store.scm:531 source: + (test-assert + "substitute + build-things with output path" + (with-store + s + (let* ((c (random-text)) + (d (build-expression->derivation + s + "substitute-me" + `(call-with-output-file + %output + (lambda (p) (exit 1) (display ,c p))) + #:guile-for-build + (package-derivation + s + %bootstrap-guile + (%current-system)))) + (o (derivation->output-path d))) + (substitute: warning: authentication and authorization of substitut= es disabled! substitute: guix substitute: warning: ACL for archive imports seems to be u= ninitialized, substitutes may be unavailable @ substituter-started /tmp/guix-tests/store/la43lljnkxkq684qp9sfa3mpcfj71gy= 8-substitute-me /tmp/guix-build-guix-0.13.0.drv-0/source/nix/scripts/substi= tute warning: authentication and authorization of substitutes disabled! guix substitute: warning: ACL for archive imports seems to be uninitialized= , substitutes may be unavailable Downloading file:/tmp/guix-tests/var/12270/substituter-data/example.nar (1K= iB installed)... =1B[K example.nar 176B 0B/s 00:00 [###################= #] 100.0% @ substituter-succeeded /tmp/guix-tests/store/la43lljnkxkq684qp9sfa3mpcfj71= gy8-substitute-me substitute: warning: authentication and authorization of substitutes disabl= ed! substitute: guix substitute: warning: ACL for archive imports seems to be u= ninitialized, substitutes may be unavailable @ substituter-started /tmp/guix-tests/store/4l2phlryfj24z74xw4jb45zia952rjr= i-corrupt-substitute /tmp/guix-build-guix-0.13.0.drv-0/source/nix/scripts/s= ubstitute warning: authentication and authorization of substitutes disabled! guix substitute: warning: ACL for archive imports seems to be uninitialized= , substitutes may be unavailable Downloading file:/tmp/guix-tests/var/12270/substituter-data/example.nar (1K= iB installed)... =1B[K example.nar 128B 0B/s 00:00 [###################= #] 100.0% @ substituter-failed /tmp/guix-tests/store/4l2phlryfj24z74xw4jb45zia952rjri= -corrupt-substitute 0 hash mismatch in downloaded path `/tmp/guix-tests/sto= re/4l2phlryfj24z74xw4jb45zia952rjri-corrupt-substitute': expected 000000000= 0000000000000000000000000000000000000000000000000000000, got b8f73a6eb280e6= 3169b1de2a5b5e154676fe1ada685f1e5c7183cbb2c1dcd535 substitute: warning: authentication and authorization of substitutes disabl= ed! substitute: guix substitute: warning: ACL for archive imports seems to be u= ninitialized, substitutes may be unavailable @ substituter-started /tmp/guix-tests/store/xihgbms3wii4r9lnq8ppvzc6q6ilkgi= x-substitute-me-not /tmp/guix-build-guix-0.13.0.drv-0/source/nix/scripts/su= bstitute warning: authentication and authorization of substitutes disabled! guix substitute: warning: ACL for archive imports seems to be uninitialized= , substitutes may be unavailable Downloading file:/tmp/guix-tests/var/12270/substituter-data/example.nar (1K= iB installed)... guix substitute: error: open-file: No such file or directory: "/tmp/guix-te= sts/var/12270/substituter-data/example.nar" @ substituter-failed /tmp/guix-tests/store/xihgbms3wii4r9lnq8ppvzc6q6ilkgix= -substitute-me-not 256 fetching path `/tmp/guix-tests/store/xihgbms3wii4r9l= nq8ppvzc6q6ilkgix-substitute-me-not' failed with exit code 1 @ substituter-started /tmp/guix-tests/store/xihgbms3wii4r9lnq8ppvzc6q6ilkgi= x-substitute-me-not /tmp/guix-build-guix-0.13.0.drv-0/source/nix/scripts/su= bstitute warning: authentication and authorization of substitutes disabled! guix substitute: warning: ACL for archive imports seems to be uninitialized= , substitutes may be unavailable Downloading file:/tmp/guix-tests/var/12270/substituter-data/example.nar (1K= iB installed)... guix substitute: error: open-file: No such file or directory: "/tmp/guix-te= sts/var/12270/substituter-data/example.nar" @ substituter-failed /tmp/guix-tests/store/xihgbms3wii4r9lnq8ppvzc6q6ilkgix= -substitute-me-not 256 fetching path `/tmp/guix-tests/store/xihgbms3wii4r9l= nq8ppvzc6q6ilkgix-substitute-me-not' failed with exit code 1 @ build-started /tmp/guix-tests/store/y4fvym0427dxvdlhgf0jiknr8fpz73rz-subs= titute-me-not.drv - x86_64-linux /tmp/guix-tests/var/log/guix/drvs/y4//fvym= 0427dxvdlhgf0jiknr8fpz73rz-substitute-me-not.drv.bz2 @ build-succeeded /tmp/guix-tests/store/y4fvym0427dxvdlhgf0jiknr8fpz73rz-su= bstitute-me-not.drv - with-derivation-substitute + d + c + (set-build-options + s + #:use-substitutes? + #t + #:substitute-urls + (%test-substitute-urls)) + (and (has-substitutes? s o) + (build-things s (list o)) + (valid-path? s o) + (equal? + c + (call-with-input-file o get-string-all))))))) actual-value: #t result: PASS test-name: substitute, corrupt output hash location: /tmp/guix-build-guix-0.13.0.drv-0/source/tests/store.scm:551 source: + (test-assert + "substitute, corrupt output hash" + (with-store + s + (let* ((c "hello, world") + (d (build-expression->derivation + s + "corrupt-substitute" + `(mkdir %output) + #:guile-for-build + (package-derivation + s + %bootstrap-guile + (%current-system)))) + (o (derivation->output-path d))) + (with-derivation-substitute + d + c + (sha256 =3D> (make-bytevector 32 0)) + (set-build-options + s + #:use-substitutes? + #t + #:fallback? + #f + #:substitute-urls + (%test-substitute-urls)) + (and (has-substitutes? s o) + (guard (c ((nix-protocol-error? c) + (pk 'corrupt c) + (not (zero? (nix-protocol-error-status c))))) + (build-derivations s (list d)) + #f)))))) ;;; (corrupt #) actual-value: #t result: PASS test-name: substitute --fallback location: /tmp/guix-build-guix-0.13.0.drv-0/source/tests/store.scm:581 source: + (test-assert + "substitute --fallback" + (with-store + s + (let* ((t (random-text)) + (d (build-expression->derivation + s + "substitute-me-not" + `(call-with-output-file + %output + (lambda (p) (display ,t p))) + #:guile-for-build + (package-derivation + s + %bootstrap-guile + (%current-system)))) + (o (derivation->output-path d))) + (with-derivation-narinfo + d + (set-build-options + s + #:use-substitutes? + #t + #:substitute-urls + (%test-substitute-urls)) + (and (has-substitutes? s o) + (guard (c ((nix-protocol-error? c) + (set-build-options + s + #:use-substitutes? + #t + #:substitute-urls + (%test-substitute-urls) + #:fallback? + #t) + (and (build-derivations s (list d)) + (equal? + t + (call-with-input-file o get-string-all))))) + (build-derivations s (list d)) + #f)))))) actual-value: #t result: PASS test-name: export/import several paths location: /tmp/guix-build-guix-0.13.0.drv-0/source/tests/store.scm:613 source: + (test-assert + "export/import several paths" + (let* ((texts (unfold + (cut >=3D <> 10) + (lambda _ (random-text)) + #{1+}# + 0)) + (files (map (cut add-text-to-store %store "text" <>) + texts)) + (dump (call-with-bytevector-output-port + (cut export-paths %store files <>)))) + finding garbage collector roots... removing stale temporary roots file `/tmp/guix-tests/var/12270/temproots/.f= use_hidden0000ea9c000016c6' deleting unused links... finding garbage collector roots... removing stale temporary roots file `/tmp/guix-tests/var/12270/temproots/.f= use_hidden0000ea9c000016fe' deleting unused links... finding garbage collector roots... removing stale temporary roots file `/tmp/guix-tests/var/12270/temproots/.f= use_hidden0000ea9c0000170c' deleting unused links... (delete-paths %store files) + (and (every (negate file-exists?) files) + (let* ((source (open-bytevector-input-port dump)) + (imported (import-paths %store source))) + (and (equal? imported files) + (every file-exists? files) + (equal? + texts + (map (lambda (file) + (call-with-input-file file get-string-all)) + files))))))) actual-value: #t result: PASS test-name: export/import paths, ensure topological order location: /tmp/guix-build-guix-0.13.0.drv-0/source/tests/store.scm:633 source: + (test-assert + "export/import paths, ensure topological order" + (let* ((file0 (add-text-to-store %store "baz" (random-text))) + (file1 (add-text-to-store + %store + "foo" + (random-text) + (list file0))) + (file2 (add-text-to-store + %store + "bar" + (random-text) + (list file1))) + (files (list file1 file2)) + (dump1 (call-with-bytevector-output-port + (cute export-paths %store (list file1 file2) <>))) + (dump2 (call-with-bytevector-output-port + (cute export-paths %store (list file2 file1) <>)))) + (delete-paths %store files) + (and (every (negate file-exists?) files) + (bytevector=3D? dump1 dump2) + (let* ((source (open-bytevector-input-port dump1)) + (imported (import-paths %store source))) + (and (equal? imported (list file1 file2)) + (every file-exists? files) + (equal? (list file0) (references %store file1)) + (equal? (list file1) (references %store file2))))))) actual-value: #t result: PASS test-name: export/import incomplete location: /tmp/guix-build-guix-0.13.0.drv-0/source/tests/store.scm:655 source: + (test-assert + "export/import incomplete" + (let* ((file0 (add-text-to-store %store "baz" (random-text))) + (file1 (add-text-to-store + %store + "foo" + (random-text) + (list file0))) + (file2 (add-text-to-store + %store + "bar" + (random-text) + (list file1))) + (dump (call-with-bytevector-output-port + (cute export-paths %store (list file2) <>)))) + (delete-paths %store (list file0 file1 file2)) + (guard (c ((nix-protocol-error? c) + (and (not (zero? (nix-protocol-error-status c))) + (string-contains + (nix-protocol-error-message c) + "not valid")))) + (import-paths + %store + (open-bytevector-input-port dump))))) actual-value: 69 result: PASS test-name: export/import recursive location: /tmp/guix-build-guix-0.13.0.drv-0/source/tests/store.scm:672 source: + (test-assert + "export/import recursive" + (let* ((file0 (add-text-to-store %store "baz" (random-text))) + (file1 (add-text-to-store + %store + "foo" + (random-text) + (list file0))) + (file2 (add-text-to-store + %store + "bar" + (random-text) + (list file1))) + (dump (call-with-bytevector-output-port + (cute export-paths + %store + (list file2) + <> + #:recursive? + #t)))) + (delete-paths %store (list file0 file1 file2)) + (let ((imported + (import-paths + %store + (open-bytevector-input-port dump)))) + (and (equal? imported (list file0 file1 file2)) + (every file-exists? (list file0 file1 file2)) + finding garbage collector roots... removing stale temporary roots file `/tmp/guix-tests/var/12270/temproots/.f= use_hidden0000ea9c00001712' deleting unused links... @ build-started /tmp/guix-tests/store/l5lpzjw2r8axsmppsm7g875pynl5k7rz-bunc= h.drv - x86_64-linux /tmp/guix-tests/var/log/guix/drvs/l5//lpzjw2r8axsmppsm= 7g875pynl5k7rz-bunch.drv.bz2 @ build-succeeded /tmp/guix-tests/store/l5lpzjw2r8axsmppsm7g875pynl5k7rz-bu= nch.drv - finding garbage collector roots... removing stale temporary roots file `/tmp/guix-tests/var/12270/temproots/.f= use_hidden0000ea9c00001716' deleting unused links... (equal? (list file0) (references %store file1)) + (equal? (list file1) (references %store file2)))))) actual-value: #t result: PASS test-name: write-file & export-path yield the same result location: /tmp/guix-build-guix-0.13.0.drv-0/source/tests/store.scm:688 source: + (test-assert + "write-file & export-path yield the same result" + (run-with-store + %store + (mlet* %store-monad + ((drv1 (package->derivation %bootstrap-guile)) + (out1 -> (derivation->output-path drv1)) + (data -> + (unfold + (cut >=3D <> 26) + (lambda (i) (random-bytevector 128)) + #{1+}# + 0)) + (build -> + (gexp (begin + (use-modules (rnrs io ports) (srfi srfi-1)) + (let () + (define letters + (map (lambda (i) + (string + (integer->char + (+ i (char->integer #\a))))) + (iota 26))) + (define (touch file data) + (call-with-output-file + file + (lambda (port) (put-bytevector port data= )))) + (mkdir (ungexp output)) + (chdir (ungexp output)) + (for-each + touch + (append (drop letters 10) (take letters 10= )) + (list (ungexp-splicing data))) + #t)))) + (drv2 (gexp->derivation "bunch" build)) + (out2 -> (derivation->output-path drv2)) + (item-info -> (store-lift query-path-info))) + (mbegin + %store-monad + (built-derivations (list drv1 drv2)) + (foldm %store-monad + (lambda (item result) + (define ref-hash + (let-values + (((port get) (open-sha256-port))) + (write-file item port) + (close-port port) + (get))) + (>>=3D (item-info item) + (lambda (info) + (return + (and result + (bytevector=3D? + (path-info-hash info) + ref-hash)))))) + #t + (list out1 out2)))) + #:guile-for-build + (%guile-for-build))) actual-value: #t result: PASS test-name: import corrupt path location: /tmp/guix-build-guix-0.13.0.drv-0/source/tests/store.scm:754 source: + (test-assert + "import corrupt path" + (let* ((text (random-text)) + (file (add-text-to-store %store "text" text)) + (dump (call-with-bytevector-output-port + (cut export-paths %store (list file) <>)))) + (delete-paths %store (list file)) + (let* ((index 112) + (byte (bytevector-u8-ref dump index))) + (bytevector-u8-set! dump index (logxor 255 byte))) + (and (not (file-exists? file)) + (guard (c ((nix-protocol-error? c) + (pk 'c c) + (and (not (zero? (nix-protocol-error-status c))) + (string-contains + (nix-protocol-error-message c) + "corrupt")))) + (let* ((source (open-bytevector-input-port dump)) + (imported (import-paths %store source))) + (pk 'corrupt-imported imported) + #f))))) ;;; (c #) actual-value: 80 result: PASS test-name: register-path location: /tmp/guix-build-guix-0.13.0.drv-0/source/tests/store.scm:778 source: + (test-assert + "register-path" + (let ((file (string-append + (%store-prefix) + "/" + (make-string 32 #\f) + "-fake"))) + (when (valid-path? %store file) + (delete-paths %store (list file))) + (false-if-exception (delete-file file)) + (let ((ref (add-text-to-store + %store + "ref-of-fake" + (random-text))) + (drv (string-append file ".drv"))) + (call-with-output-file + file + (cut display "This is a fake store item.\n" <>)) + (register-path + file + #:references + (list ref) + #:deriver + drv) + (and (valid-path? %store file) + (equal? (references %store file) (list ref)) + (null? (valid-derivers %store file)) + (null? (referrers %store file)))))) actual-value: #t result: PASS test-name: verify-store location: /tmp/guix-build-guix-0.13.0.drv-0/source/tests/store.scm:798 source: + (test-assert + "verify-store" + (let* ((text (random-text)) + (file1 (add-text-to-store %store "foo" text)) + (file2 (add-text-to-store + %store + "bar" + (random-text) + (list file1)))) + (and (pk 'verify1 (verify-store %store)) + (begin + (delete-file file1) + (not (pk 'verify2 (verify-store %store)))) + (begin + (call-with-output-file + file1 + (lambda (port) (display text port))) + (pk 'verify3 (verify-store %store)))))) ;;; (verify1 #t) ;;; (verify2 #f) ;;; (verify3 #t) actual-value: #t result: PASS test-name: verify-store + check-contents location: /tmp/guix-build-guix-0.13.0.drv-0/source/tests/store.scm:815 source: + (test-assert + "verify-store + check-contents" + (with-store + s + (let* ((text (random-text)) + (drv (build-expression->derivation + s + "corrupt" + `(let ((out (assoc-ref %outputs "out"))) + (call-with-output-file + out + (lambda (port) (display ,text port))) + #t) + #:guile-for-build + (package-derivation + s + %bootstrap-guile + (%current-system)))) + (file (derivation->output-path drv))) + (with-derivation-substitute + drv + text + (and (build-derivations s (list drv)) + (verify-store s #:check-contents? #t) + (begin + (chmod file 420) + (call-with-output-file + file + (lambda (port) (display "corrupt!" port))) + #t) + (not (verify-store s #:check-contents? #t)) + (delete-paths s (list file))))))) actual-value: #f actual-error: + (srfi-34 + #) result: FAIL test-name: build-things, check mode location: /tmp/guix-build-guix-0.13.0.drv-0/source/tests/store.scm:852 source: + (test-assert + "build-things, check mode" + (with-store + store + (call-with-temporary-output-file + (lambda (entropy entropy-port) + (write (random-text) entropy-port) + (force-output entropy-port) + (let* ((drv (build-expression->derivation + store + "non-deterministic" + `(begin + substitute: warning: authentication and authoriz= ation of substitutes disabled! substitute: guix substitute: warning: ACL for archive imports seems to be u= ninitialized, substitutes may be unavailable building path(s) `/tmp/guix-tests/store/q6yd6crjvzdpzdkn9skvqqqw9g1gf7yh-no= n-deterministic' checking path(s) `/tmp/guix-tests/store/q6yd6crjvzdpzdkn9skvqqqw9g1gf7yh-no= n-deterministic' warning: rewriting hashes in `/tmp/guix-tests/store/q6yd6crjvzdpzdkn9skvqqq= w9g1gf7yh-non-deterministic'; cross fingers @ build-started /tmp/guix-tests/store/yhjs3n5rg1wyb9g94n57ddsnixqbdava-non-= deterministic.drv - x86_64-linux /tmp/guix-tests/var/log/guix/drvs/yh//js3n= 5rg1wyb9g94n57ddsnixqbdava-non-deterministic.drv.bz2 @ build-started /tmp/guix-tests/store/yhjs3n5rg1wyb9g94n57ddsnixqbdava-non-= deterministic.drv - x86_64-linux /tmp/guix-tests/var/log/guix/drvs/yh//js3n= 5rg1wyb9g94n57ddsnixqbdava-non-deterministic.drv.bz2 output =E2=80=98/tmp/guix-tests/store/w3d2wrarkykk5a54izyx9ra7wxswbq23-non-= deterministic=E2=80=99 of =E2=80=98/tmp/guix-tests/store/yhjs3n5rg1wyb9g94n= 57ddsnixqbdava-non-deterministic.drv=E2=80=99 differs from previous round @ build-failed /tmp/guix-tests/store/yhjs3n5rg1wyb9g94n57ddsnixqbdava-non-d= eterministic.drv - 1 output =E2=80=98/tmp/guix-tests/store/w3d2wrarkykk5a54= izyx9ra7wxswbq23-non-deterministic=E2=80=99 of =E2=80=98/tmp/guix-tests/sto= re/yhjs3n5rg1wyb9g94n57ddsnixqbdava-non-deterministic.drv=E2=80=99 differs = from previous round (use-modules (rnrs io ports)) + (let ((out (assoc-ref %outputs "out"))) + (call-with-output-file + out + (lambda (port) + (display + (call-with-input-file + ,entropy + get-string-all) + port))) + #t)) + #:guile-for-build + (package-derivation + store + %bootstrap-guile + (%current-system)))) + (file (derivation->output-path drv))) + (and (build-things + store + (list (derivation-file-name drv))) + (begin + (write (random-text) entropy-port) + (force-output entropy-port) + (guard (c ((nix-protocol-error? c) + (pk 'determinism-exception c) + (and (not (zero? (nix-protocol-error-status c= ))) + (string-contains + (nix-protocol-error-message c) + "deterministic")))) + (build-things + store + (list (derivation-file-name drv)) + (build-mode check)) + #f)))))))) ;;; (determinism-exception #) actual-value: 71 result: PASS test-name: build multiple times location: /tmp/guix-build-guix-0.13.0.drv-0/source/tests/store.scm:889 source: + (test-assert + "build multiple times" + (with-store + store + (set-build-options + store + #:rounds + 2 + #:use-substitutes? + #f) + (call-with-temporary-output-file + (lambda (entropy entropy-port) + (write (random-text) entropy-port) + (force-output entropy-port) + (let* ((drv (build-expression->derivation + store + "non-deterministic" + `(begin + (use-modules (rnrs io ports)) + (let ((out (assoc-ref %outputs "out"))) + (call-with-output-file + out + (lambda (port) + (display + (call-with-input-file + ,entropy + get-string-all) + port) + (call-with-output-file + ,entropy + (lambda (port) (write 'foobar port))))) + #t)) + #:guile-for-build + (package-derivation + store + %bootstrap-guile + (%current-system)))) + (file (derivation->output-path drv))) + (guard (c ((nix-protocol-error? c) + (pk 'multiple-build c) + (and (not (zero? (nix-protocol-error-status c))) + (string-contains + (nix-protocol-error-message c) + "deterministic")))) + (current-build-output-port (current-error-port)) + (build-things + store + (list (derivation-file-name drv))) + #f)))))) ;;; (multiple-build #) actual-value: 69 result: PASS test-name: store-lower location: /tmp/guix-build-guix-0.13.0.drv-0/source/tests/store.scm:927 source: + (test-equal + "store-lower" + "Lowered." + (let* ((add (store-lower text-file)) + (file (add %store "foo" "Lowered."))) + (call-with-input-file file get-string-all))) expected-value: "Lowered." actual-value: "Lowered." result: PASS test-name: current-system location: /tmp/guix-build-guix-0.13.0.drv-0/source/tests/store.scm:933 source: + (test-equal + "current-system" + "bar" + (parameterize + ((%current-system "frob")) + (run-with-store + %store + (mbegin + %store-monad + (set-current-system "bar") + (current-system)) + #:system + "foo"))) expected-value: "bar" actual-value: "bar" result: PASS test-name: query-path-info location: /tmp/guix-build-guix-0.13.0.drv-0/source/tests/store.scm:942 source: + (test-assert + "query-path-info" + (let* ((ref (add-text-to-store %store "ref" "foo")) + (item (add-text-to-store + %store + "item" + "bar" + (list ref))) + (info (query-path-info %store item))) + (and (equal? (path-info-references info) (list ref)) + (equal? + (path-info-hash info) + (sha256 + (string->utf8 + (call-with-output-string + (cut write-file item <>)))))))) actual-value: #t result: PASS test-name: path-info-deriver location: /tmp/guix-build-guix-0.13.0.drv-0/source/tests/store.scm:952 source: + (test-assert + "path-info-deriver" + (let* ((b (add-text-to-store + %store + "build" + "echo $foo > $out" + '())) + (s (add-to-store + %store + "bash" + #t + "sha256" + (search-bootstrap-binary + "bash" + (%current-system)))) + (d (derivation + %store + "the-thing" + s + `("-e" ,b) + #:env-vars + `(("foo" unquote (random-text))) + #:inputs + `((,b) (,s)))) + (o (derivation->output-path d))) + (and (build-derivations %store (list d)) + (not (path-info-deriver (query-path-info %store b))) + (string=3D? + (derivation-file-name d) + (path-info-deriver (query-path-info %store o)))))) actual-value: #t result: PASS test-name: build-cores location: /tmp/guix-build-guix-0.13.0.drv-0/source/tests/store.scm:967 source: + (test-equal + "build-cores" + (list 0 42) + (with-store + store + (let* ((build (add-text-to-store + store + "build.sh" + "echo $NIX_BUILD_CORES > $out")) + (bash (add-to-store + store + "bash" + #t + "sha256" + (search-bootstrap-binary + "bash" + (%current-system)))) + (drv1 (derivation + store + "the-thing" + bash + `("-e" ,build) + #:inputs + `((,bash) (,build)) + #:env-vars + `(("x" unquote (random-text))))) + (drv2 (derivation + store + "the-thing" + bash + `("-e" ,build) + #:inputs + `((,bash) (,build)) + #:env-vars + `(("x" unquote (random-text)))))) + (and (build-derivations store (list drv1)) + (begin + (set-build-options store #:build-cores 42) + (build-derivations store (list drv2))) + substitute: warning: authentication and authorization of substitutes disa= bled! substitute: guix substitute: warning: ACL for archive imports seems to be u= ninitialized, substitutes may be unavailable building path(s) `/tmp/guix-tests/store/cp0dcbnnabw31wpxl5k72cc6kqc8lxzc-th= e-thing' @ build-started /tmp/guix-tests/store/jirlpa3sjag01qsphdhw77ah9jjpzsrz-the-= thing.drv - x86_64-linux /tmp/guix-tests/var/log/guix/drvs/ji//rlpa3sjag01q= sphdhw77ah9jjpzsrz-the-thing.drv.bz2 @ build-succeeded /tmp/guix-tests/store/jirlpa3sjag01qsphdhw77ah9jjpzsrz-th= e-thing.drv - (list (call-with-input-file + (derivation->output-path drv1) + read) + (call-with-input-file + (derivation->output-path drv2) + read)))))) expected-value: (0 42) actual-value: (0 42) result: PASS SKIP: tests/union =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D random seed for tests: 1495528573 @ build-started /tmp/guix-tests/store/w5hzafbhxyj68wdlzydkf3gd2rj9xhbs-modu= le-import.drv - x86_64-linux /tmp/guix-tests/var/log/guix/drvs/w5//hzafbhxy= j68wdlzydkf3gd2rj9xhbs-module-import.drv.bz2 @ build-succeeded /tmp/guix-tests/store/w5hzafbhxyj68wdlzydkf3gd2rj9xhbs-mo= dule-import.drv - @ build-started /tmp/guix-tests/store/bk6y6c5s831m315cn5n8p0r4wvjh5w0c-one.= drv - x86_64-linux /tmp/guix-tests/var/log/guix/drvs/bk//6y6c5s831m315cn5n8= p0r4wvjh5w0c-one.drv.bz2 @ build-succeeded /tmp/guix-tests/store/bk6y6c5s831m315cn5n8p0r4wvjh5w0c-on= e.drv - @ build-started /tmp/guix-tests/store/628gfbr4qvj6sp47kb5q54dawrmia3nd-modu= le-import-compiled.drv - x86_64-linux /tmp/guix-tests/var/log/guix/drvs/62/= /8gfbr4qvj6sp47kb5q54dawrmia3nd-module-import-compiled.drv.bz2 @ build-succeeded /tmp/guix-tests/store/628gfbr4qvj6sp47kb5q54dawrmia3nd-mo= dule-import-compiled.drv - @ build-started /tmp/guix-tests/store/65n0cpnsjxrd997061hc1ypyq0k18anq-two.= drv - x86_64-linux /tmp/guix-tests/var/log/guix/drvs/65//n0cpnsjxrd997061hc= 1ypyq0k18anq-two.drv.bz2 @ build-succeeded /tmp/guix-tests/store/65n0cpnsjxrd997061hc1ypyq0k18anq-tw= o.drv - @ build-started /tmp/guix-tests/store/jl6cqbn3pmfskmj6p831c2pvk4d14dvm-unio= n-collision-symlink.drv - x86_64-linux /tmp/guix-tests/var/log/guix/drvs/jl= //6cqbn3pmfskmj6p831c2pvk4d14dvm-union-collision-symlink.drv.bz2 `/tmp/guix-tests/store/frj54nbxjn5nxa4nv5n8mgz6k70ar75k-two/bar' ~> `/tmp/g= uix-tests/store/5nnaqsyjniaxw2pfjdq5j55mqcyi8lnp-union-collision-symlink/ba= r' `/tmp/guix-tests/store/frj54nbxjn5nxa4nv5n8mgz6k70ar75k-two/foo/two' ~> `/t= mp/guix-tests/store/5nnaqsyjniaxw2pfjdq5j55mqcyi8lnp-union-collision-symlin= k/foo/two' `/tmp/guix-tests/store/b2jqczfis8zv2x8y1v1wjhrzzw90ibk0-one/foo/one' ~> `/t= mp/guix-tests/store/5nnaqsyjniaxw2pfjdq5j55mqcyi8lnp-union-collision-symlin= k/foo/one' @ build-succeeded /tmp/guix-tests/store/jl6cqbn3pmfskmj6p831c2pvk4d14dvm-un= ion-collision-symlink.drv - test-name: union-build with symlink to directory location: /tmp/guix-build-guix-0.13.0.drv-0/source/tests/union.scm:42 source: + (test-assert + "union-build with symlink to directory" + (let* ((one (build-expression->derivation + %store + "one" + '(begin + (use-modules (guix build utils) (srfi srfi-26)) + (let ((foo (string-append %output "/foo"))) + (mkdir-p foo) + (call-with-output-file + (string-append foo "/one") + (cut display "one" <>)))) + #:modules + '((guix build utils)))) + (two (build-expression->derivation + %store + "two" + '(begin + (use-modules (guix build utils) (srfi srfi-26)) + (let ((foo (string-append %output "/foo")) + (bar (string-append %output "/bar"))) + (mkdir-p bar) + (call-with-output-file + (string-append bar "/two") + (cut display "two" <>)) + (symlink "bar" foo))) + #:modules + '((guix build utils)))) + (builder + '(begin + (use-modules (guix build union)) + (union-build + (assoc-ref %outputs "out") + (list (assoc-ref %build-inputs "one") + (assoc-ref %build-inputs "two"))))) + (drv (build-expression->derivation + %store + "union-collision-symlink" + builder + #:inputs + `(("one" ,one) ("two" ,two)) + #:modules + '((guix build union))))) + (and (build-derivations %store (list drv)) + (with-directory-excursion + (pk (derivation->output-path drv)) + (and (string=3D? + "one" + (call-with-input-file "foo/one" get-string-all)) + (string=3D? + "two" + (call-with-input-file "foo/two" get-string-all)) + (string=3D? + "two" + (call-with-input-file "bar/two" get-string-all)) + (not (file-exists? "bar/one"))))))) ;;; ("/tmp/guix-tests/store/5nnaqsyjniaxw2pfjdq5j55mqcyi8lnp-union-collisio= n-symlink") actual-value: #t result: PASS test-name: union-build location: /tmp/guix-build-guix-0.13.0.drv-0/source/tests/union.scm:91 source: + (test-assert + "union-build" + (let* ((inputs + (map (match-lambda + ((name package) + `(,name ,(package-derivation %store package)))) + (append + %bootstrap-inputs + (take %bootstrap-inputs 3)))) + (builder + `(begin + (use-modules (guix build union)) + (union-build + (assoc-ref %outputs "out") + (map cdr %build-inputs)))) + (drv (build-expression->derivation + %store + "union-test" + builder + #:inputs + inputs + #:modules + '((guix build union))))) + (and (build-derivations %store (list (pk 'drv drv))) + (with-directory-excursion + (derivation->output-path drv) + (and (file-exists? "bin/touch") + (file-exists? "bin/gcc") + (file-exists? "bin/ld") + (file-exists? "lib/libc.so") + (directory-exists? "lib/gcc") + (file-exists? "include/unistd.h") + (eq? 'symlink (stat:type (lstat "include/c++"))) + (eq? 'directory (stat:type (lstat "bin")))))))) result: SKIP test-name: union-build #:create-all-directories? #t location: @ build-started /tmp/guix-tests/store/iwc79z4pnnjaz0hif0xnx65cg2j= 3qsg9-union-test-all-dirs.drv - x86_64-linux /tmp/guix-tests/var/log/guix/d= rvs/iw//c79z4pnnjaz0hif0xnx65cg2j3qsg9-union-test-all-dirs.drv.bz2 `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /share/guile/2.0/oop/goops.scm' ~> `/tmp/guix-tests/store/0sgpsn768nn73wblh= 4iw6wl3bcsfn7dd-union-test-all-dirs/share/guile/2.0/oop/goops.scm' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /share/guile/2.0/oop/goops/dispatch.scm' ~> `/tmp/guix-tests/store/0sgpsn76= 8nn73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/share/guile/2.0/oop/goops/disp= atch.scm' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /share/guile/2.0/oop/goops/accessors.scm' ~> `/tmp/guix-tests/store/0sgpsn7= 68nn73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/share/guile/2.0/oop/goops/acc= essors.scm' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /share/guile/2.0/oop/goops/composite-slot.scm' ~> `/tmp/guix-tests/store/0s= gpsn768nn73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/share/guile/2.0/oop/goop= s/composite-slot.scm' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /share/guile/2.0/oop/goops/util.scm' ~> `/tmp/guix-tests/store/0sgpsn768nn7= 3wblh4iw6wl3bcsfn7dd-union-test-all-dirs/share/guile/2.0/oop/goops/util.scm' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /share/guile/2.0/oop/goops/describe.scm' ~> `/tmp/guix-tests/store/0sgpsn76= 8nn73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/share/guile/2.0/oop/goops/desc= ribe.scm' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /share/guile/2.0/oop/goops/save.scm' ~> `/tmp/guix-tests/store/0sgpsn768nn7= 3wblh4iw6wl3bcsfn7dd-union-test-all-dirs/share/guile/2.0/oop/goops/save.scm' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /share/guile/2.0/oop/goops/internal.scm' ~> `/tmp/guix-tests/store/0sgpsn76= 8nn73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/share/guile/2.0/oop/goops/inte= rnal.scm' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /share/guile/2.0/oop/goops/compile.scm' ~> `/tmp/guix-tests/store/0sgpsn768= nn73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/share/guile/2.0/oop/goops/compi= le.scm' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /share/guile/2.0/oop/goops/simple.scm' ~> `/tmp/guix-tests/store/0sgpsn768n= n73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/share/guile/2.0/oop/goops/simple= .scm' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /share/guile/2.0/oop/goops/stklos.scm' ~> `/tmp/guix-tests/store/0sgpsn768n= n73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/share/guile/2.0/oop/goops/stklos= .scm' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /share/guile/2.0/oop/goops/active-slot.scm' ~> `/tmp/guix-tests/store/0sgps= n768nn73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/share/guile/2.0/oop/goops/a= ctive-slot.scm' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /share/guile/2.0/system/base/ck.scm' ~> `/tmp/guix-tests/store/0sgpsn768nn7= 3wblh4iw6wl3bcsfn7dd-union-test-all-dirs/share/guile/2.0/system/base/ck.scm' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /share/guile/2.0/system/base/pmatch.scm' ~> `/tmp/guix-tests/store/0sgpsn76= 8nn73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/share/guile/2.0/system/base/pm= atch.scm' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /share/guile/2.0/system/base/lalr.upstream.scm' ~> `/tmp/guix-tests/store/0= sgpsn768nn73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/share/guile/2.0/system/= base/lalr.upstream.scm' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /share/guile/2.0/system/base/message.scm' ~> `/tmp/guix-tests/store/0sgpsn7= 68nn73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/share/guile/2.0/system/base/m= essage.scm' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /share/guile/2.0/system/base/target.scm' ~> `/tmp/guix-tests/store/0sgpsn76= 8nn73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/share/guile/2.0/system/base/ta= rget.scm' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /share/guile/2.0/system/base/lalr.scm' ~> `/tmp/guix-tests/store/0sgpsn768n= n73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/share/guile/2.0/system/base/lalr= .scm' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /share/guile/2.0/system/base/compile.scm' ~> `/tmp/guix-tests/store/0sgpsn7= 68nn73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/share/guile/2.0/system/base/c= ompile.scm' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /share/guile/2.0/system/base/syntax.scm' ~> `/tmp/guix-tests/store/0sgpsn76= 8nn73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/share/guile/2.0/system/base/sy= ntax.scm' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /share/guile/2.0/system/base/language.scm' ~> `/tmp/guix-tests/store/0sgpsn= 768nn73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/share/guile/2.0/system/base/= language.scm' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /share/guile/2.0/system/vm/trap-state.scm' ~> `/tmp/guix-tests/store/0sgpsn= 768nn73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/share/guile/2.0/system/vm/tr= ap-state.scm' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /share/guile/2.0/system/vm/trace.scm' ~> `/tmp/guix-tests/store/0sgpsn768nn= 73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/share/guile/2.0/system/vm/trace.s= cm' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /share/guile/2.0/system/vm/program.scm' ~> `/tmp/guix-tests/store/0sgpsn768= nn73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/share/guile/2.0/system/vm/progr= am.scm' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /share/guile/2.0/system/vm/objcode.scm' ~> `/tmp/guix-tests/store/0sgpsn768= nn73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/share/guile/2.0/system/vm/objco= de.scm' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /share/guile/2.0/system/vm/frame.scm' ~> `/tmp/guix-tests/store/0sgpsn768nn= 73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/share/guile/2.0/system/vm/frame.s= cm' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /share/guile/2.0/system/vm/traps.scm' ~> `/tmp/guix-tests/store/0sgpsn768nn= 73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/share/guile/2.0/system/vm/traps.s= cm' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /share/guile/2.0/system/vm/vm.scm' ~> `/tmp/guix-tests/store/0sgpsn768nn73w= blh4iw6wl3bcsfn7dd-union-test-all-dirs/share/guile/2.0/system/vm/vm.scm' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /share/guile/2.0/system/vm/instruction.scm' ~> `/tmp/guix-tests/store/0sgps= n768nn73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/share/guile/2.0/system/vm/i= nstruction.scm' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /share/guile/2.0/system/vm/coverage.scm' ~> `/tmp/guix-tests/store/0sgpsn76= 8nn73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/share/guile/2.0/system/vm/cove= rage.scm' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /share/guile/2.0/system/vm/inspect.scm' ~> `/tmp/guix-tests/store/0sgpsn768= nn73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/share/guile/2.0/system/vm/inspe= ct.scm' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /share/guile/2.0/system/xref.scm' ~> `/tmp/guix-tests/store/0sgpsn768nn73wb= lh4iw6wl3bcsfn7dd-union-test-all-dirs/share/guile/2.0/system/xref.scm' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /share/guile/2.0/system/repl/repl.scm' ~> `/tmp/guix-tests/store/0sgpsn768n= n73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/share/guile/2.0/system/repl/repl= .scm' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /share/guile/2.0/system/repl/error-handling.scm' ~> `/tmp/guix-tests/store/= 0sgpsn768nn73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/share/guile/2.0/system= /repl/error-handling.scm' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /share/guile/2.0/system/repl/describe.scm' ~> `/tmp/guix-tests/store/0sgpsn= 768nn73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/share/guile/2.0/system/repl/= describe.scm' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /share/guile/2.0/system/repl/command.scm' ~> `/tmp/guix-tests/store/0sgpsn7= 68nn73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/share/guile/2.0/system/repl/c= ommand.scm' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /share/guile/2.0/system/repl/debug.scm' ~> `/tmp/guix-tests/store/0sgpsn768= nn73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/share/guile/2.0/system/repl/deb= ug.scm' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /share/guile/2.0/system/repl/server.scm' ~> `/tmp/guix-tests/store/0sgpsn76= 8nn73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/share/guile/2.0/system/repl/se= rver.scm' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /share/guile/2.0/system/repl/common.scm' ~> `/tmp/guix-tests/store/0sgpsn76= 8nn73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/share/guile/2.0/system/repl/co= mmon.scm' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /share/guile/2.0/system/foreign.scm' ~> `/tmp/guix-tests/store/0sgpsn768nn7= 3wblh4iw6wl3bcsfn7dd-union-test-all-dirs/share/guile/2.0/system/foreign.scm' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /share/guile/2.0/sxml/xpath.scm' ~> `/tmp/guix-tests/store/0sgpsn768nn73wbl= h4iw6wl3bcsfn7dd-union-test-all-dirs/share/guile/2.0/sxml/xpath.scm' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /share/guile/2.0/sxml/upstream/SXPath-old.scm' ~> `/tmp/guix-tests/store/0s= gpsn768nn73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/share/guile/2.0/sxml/ups= tream/SXPath-old.scm' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /share/guile/2.0/sxml/upstream/input-parse.scm' ~> `/tmp/guix-tests/store/0= sgpsn768nn73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/share/guile/2.0/sxml/up= stream/input-parse.scm' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /share/guile/2.0/sxml/upstream/assert.scm' ~> `/tmp/guix-tests/store/0sgpsn= 768nn73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/share/guile/2.0/sxml/upstrea= m/assert.scm' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /share/guile/2.0/sxml/upstream/SXML-tree-trans.scm' ~> `/tmp/guix-tests/sto= re/0sgpsn768nn73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/share/guile/2.0/sxm= l/upstream/SXML-tree-trans.scm' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /share/guile/2.0/sxml/upstream/SSAX.scm' ~> `/tmp/guix-tests/store/0sgpsn76= 8nn73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/share/guile/2.0/sxml/upstream/= SSAX.scm' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /share/guile/2.0/sxml/fold.scm' ~> `/tmp/guix-tests/store/0sgpsn768nn73wblh= 4iw6wl3bcsfn7dd-union-test-all-dirs/share/guile/2.0/sxml/fold.scm' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /share/guile/2.0/sxml/transform.scm' ~> `/tmp/guix-tests/store/0sgpsn768nn7= 3wblh4iw6wl3bcsfn7dd-union-test-all-dirs/share/guile/2.0/sxml/transform.scm' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /share/guile/2.0/sxml/ssax/input-parse.scm' ~> `/tmp/guix-tests/store/0sgps= n768nn73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/share/guile/2.0/sxml/ssax/i= nput-parse.scm' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /share/guile/2.0/sxml/simple.scm' ~> `/tmp/guix-tests/store/0sgpsn768nn73wb= lh4iw6wl3bcsfn7dd-union-test-all-dirs/share/guile/2.0/sxml/simple.scm' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /share/guile/2.0/sxml/sxml-match.ss' ~> `/tmp/guix-tests/store/0sgpsn768nn7= 3wblh4iw6wl3bcsfn7dd-union-test-all-dirs/share/guile/2.0/sxml/sxml-match.ss' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /share/guile/2.0/sxml/match.scm' ~> `/tmp/guix-tests/store/0sgpsn768nn73wbl= h4iw6wl3bcsfn7dd-union-test-all-dirs/share/guile/2.0/sxml/match.scm' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /share/guile/2.0/sxml/apply-templates.scm' ~> `/tmp/guix-tests/store/0sgpsn= 768nn73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/share/guile/2.0/sxml/apply-t= emplates.scm' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /share/guile/2.0/sxml/ssax.scm' ~> `/tmp/guix-tests/store/0sgpsn768nn73wblh= 4iw6wl3bcsfn7dd-union-test-all-dirs/share/guile/2.0/sxml/ssax.scm' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /share/guile/2.0/texinfo.scm' ~> `/tmp/guix-tests/store/0sgpsn768nn73wblh4i= w6wl3bcsfn7dd-union-test-all-dirs/share/guile/2.0/texinfo.scm' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /share/guile/2.0/ice-9/scm-style-repl.scm' ~> `/tmp/guix-tests/store/0sgpsn= 768nn73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/share/guile/2.0/ice-9/scm-st= yle-repl.scm' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /share/guile/2.0/ice-9/control.scm' ~> `/tmp/guix-tests/store/0sgpsn768nn73= wblh4iw6wl3bcsfn7dd-union-test-all-dirs/share/guile/2.0/ice-9/control.scm' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /share/guile/2.0/ice-9/poll.scm' ~> `/tmp/guix-tests/store/0sgpsn768nn73wbl= h4iw6wl3bcsfn7dd-union-test-all-dirs/share/guile/2.0/ice-9/poll.scm' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /share/guile/2.0/ice-9/and-let-star.scm' ~> `/tmp/guix-tests/store/0sgpsn76= 8nn73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/share/guile/2.0/ice-9/and-let-= star.scm' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /share/guile/2.0/ice-9/channel.scm' ~> `/tmp/guix-tests/store/0sgpsn768nn73= wblh4iw6wl3bcsfn7dd-union-test-all-dirs/share/guile/2.0/ice-9/channel.scm' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /share/guile/2.0/ice-9/save-stack.scm' ~> `/tmp/guix-tests/store/0sgpsn768n= n73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/share/guile/2.0/ice-9/save-stack= .scm' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /share/guile/2.0/ice-9/string-fun.scm' ~> `/tmp/guix-tests/store/0sgpsn768n= n73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/share/guile/2.0/ice-9/string-fun= .scm' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /share/guile/2.0/ice-9/calling.scm' ~> `/tmp/guix-tests/store/0sgpsn768nn73= wblh4iw6wl3bcsfn7dd-union-test-all-dirs/share/guile/2.0/ice-9/calling.scm' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /share/guile/2.0/ice-9/threads.scm' ~> `/tmp/guix-tests/store/0sgpsn768nn73= wblh4iw6wl3bcsfn7dd-union-test-all-dirs/share/guile/2.0/ice-9/threads.scm' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /share/guile/2.0/ice-9/r4rs.scm' ~> `/tmp/guix-tests/store/0sgpsn768nn73wbl= h4iw6wl3bcsfn7dd-union-test-all-dirs/share/guile/2.0/ice-9/r4rs.scm' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /share/guile/2.0/ice-9/rdelim.scm' ~> `/tmp/guix-tests/store/0sgpsn768nn73w= blh4iw6wl3bcsfn7dd-union-test-all-dirs/share/guile/2.0/ice-9/rdelim.scm' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /share/guile/2.0/ice-9/lineio.scm' ~> `/tmp/guix-tests/store/0sgpsn768nn73w= blh4iw6wl3bcsfn7dd-union-test-all-dirs/share/guile/2.0/ice-9/lineio.scm' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /share/guile/2.0/ice-9/readline.scm' ~> `/tmp/guix-tests/store/0sgpsn768nn7= 3wblh4iw6wl3bcsfn7dd-union-test-all-dirs/share/guile/2.0/ice-9/readline.scm' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /share/guile/2.0/ice-9/list.scm' ~> `/tmp/guix-tests/store/0sgpsn768nn73wbl= h4iw6wl3bcsfn7dd-union-test-all-dirs/share/guile/2.0/ice-9/list.scm' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /share/guile/2.0/ice-9/quasisyntax.scm' ~> `/tmp/guix-tests/store/0sgpsn768= nn73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/share/guile/2.0/ice-9/quasisynt= ax.scm' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /share/guile/2.0/ice-9/weak-vector.scm' ~> `/tmp/guix-tests/store/0sgpsn768= nn73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/share/guile/2.0/ice-9/weak-vect= or.scm' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /share/guile/2.0/ice-9/top-repl.scm' ~> `/tmp/guix-tests/store/0sgpsn768nn7= 3wblh4iw6wl3bcsfn7dd-union-test-all-dirs/share/guile/2.0/ice-9/top-repl.scm' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /share/guile/2.0/ice-9/getopt-long.scm' ~> `/tmp/guix-tests/store/0sgpsn768= nn73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/share/guile/2.0/ice-9/getopt-lo= ng.scm' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /share/guile/2.0/ice-9/eval.scm' ~> `/tmp/guix-tests/store/0sgpsn768nn73wbl= h4iw6wl3bcsfn7dd-union-test-all-dirs/share/guile/2.0/ice-9/eval.scm' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /share/guile/2.0/ice-9/futures.scm' ~> `/tmp/guix-tests/store/0sgpsn768nn73= wblh4iw6wl3bcsfn7dd-union-test-all-dirs/share/guile/2.0/ice-9/futures.scm' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /share/guile/2.0/ice-9/streams.scm' ~> `/tmp/guix-tests/store/0sgpsn768nn73= wblh4iw6wl3bcsfn7dd-union-test-all-dirs/share/guile/2.0/ice-9/streams.scm' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /share/guile/2.0/ice-9/networking.scm' ~> `/tmp/guix-tests/store/0sgpsn768n= n73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/share/guile/2.0/ice-9/networking= .scm' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /share/guile/2.0/ice-9/r6rs-libraries.scm' ~> `/tmp/guix-tests/store/0sgpsn= 768nn73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/share/guile/2.0/ice-9/r6rs-l= ibraries.scm' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /share/guile/2.0/ice-9/poe.scm' ~> `/tmp/guix-tests/store/0sgpsn768nn73wblh= 4iw6wl3bcsfn7dd-union-test-all-dirs/share/guile/2.0/ice-9/poe.scm' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /share/guile/2.0/ice-9/mapping.scm' ~> `/tmp/guix-tests/store/0sgpsn768nn73= wblh4iw6wl3bcsfn7dd-union-test-all-dirs/share/guile/2.0/ice-9/mapping.scm' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /share/guile/2.0/ice-9/boot-9.scm' ~> `/tmp/guix-tests/store/0sgpsn768nn73w= blh4iw6wl3bcsfn7dd-union-test-all-dirs/share/guile/2.0/ice-9/boot-9.scm' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /share/guile/2.0/ice-9/optargs.scm' ~> `/tmp/guix-tests/store/0sgpsn768nn73= wblh4iw6wl3bcsfn7dd-union-test-all-dirs/share/guile/2.0/ice-9/optargs.scm' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /share/guile/2.0/ice-9/receive.scm' ~> `/tmp/guix-tests/store/0sgpsn768nn73= wblh4iw6wl3bcsfn7dd-union-test-all-dirs/share/guile/2.0/ice-9/receive.scm' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /share/guile/2.0/ice-9/common-list.scm' ~> `/tmp/guix-tests/store/0sgpsn768= nn73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/share/guile/2.0/ice-9/common-li= st.scm' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /share/guile/2.0/ice-9/q.scm' ~> `/tmp/guix-tests/store/0sgpsn768nn73wblh4i= w6wl3bcsfn7dd-union-test-all-dirs/share/guile/2.0/ice-9/q.scm' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /share/guile/2.0/ice-9/deprecated.scm' ~> `/tmp/guix-tests/store/0sgpsn768n= n73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/share/guile/2.0/ice-9/deprecated= .scm' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /share/guile/2.0/ice-9/safe.scm' ~> `/tmp/guix-tests/store/0sgpsn768nn73wbl= h4iw6wl3bcsfn7dd-union-test-all-dirs/share/guile/2.0/ice-9/safe.scm' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /share/guile/2.0/ice-9/i18n.scm' ~> `/tmp/guix-tests/store/0sgpsn768nn73wbl= h4iw6wl3bcsfn7dd-union-test-all-dirs/share/guile/2.0/ice-9/i18n.scm' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /share/guile/2.0/ice-9/format.scm' ~> `/tmp/guix-tests/store/0sgpsn768nn73w= blh4iw6wl3bcsfn7dd-union-test-all-dirs/share/guile/2.0/ice-9/format.scm' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /share/guile/2.0/ice-9/gap-buffer.scm' ~> `/tmp/guix-tests/store/0sgpsn768n= n73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/share/guile/2.0/ice-9/gap-buffer= .scm' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /share/guile/2.0/ice-9/serialize.scm' ~> `/tmp/guix-tests/store/0sgpsn768nn= 73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/share/guile/2.0/ice-9/serialize.s= cm' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /share/guile/2.0/ice-9/ftw.scm' ~> `/tmp/guix-tests/store/0sgpsn768nn73wblh= 4iw6wl3bcsfn7dd-union-test-all-dirs/share/guile/2.0/ice-9/ftw.scm' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /share/guile/2.0/ice-9/session.scm' ~> `/tmp/guix-tests/store/0sgpsn768nn73= wblh4iw6wl3bcsfn7dd-union-test-all-dirs/share/guile/2.0/ice-9/session.scm' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /share/guile/2.0/ice-9/hcons.scm' ~> `/tmp/guix-tests/store/0sgpsn768nn73wb= lh4iw6wl3bcsfn7dd-union-test-all-dirs/share/guile/2.0/ice-9/hcons.scm' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /share/guile/2.0/ice-9/runq.scm' ~> `/tmp/guix-tests/store/0sgpsn768nn73wbl= h4iw6wl3bcsfn7dd-union-test-all-dirs/share/guile/2.0/ice-9/runq.scm' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /share/guile/2.0/ice-9/pretty-print.scm' ~> `/tmp/guix-tests/store/0sgpsn76= 8nn73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/share/guile/2.0/ice-9/pretty-p= rint.scm' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /share/guile/2.0/ice-9/r5rs.scm' ~> `/tmp/guix-tests/store/0sgpsn768nn73wbl= h4iw6wl3bcsfn7dd-union-test-all-dirs/share/guile/2.0/ice-9/r5rs.scm' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /share/guile/2.0/ice-9/curried-definitions.scm' ~> `/tmp/guix-tests/store/0= sgpsn768nn73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/share/guile/2.0/ice-9/c= urried-definitions.scm' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /share/guile/2.0/ice-9/posix.scm' ~> `/tmp/guix-tests/store/0sgpsn768nn73wb= lh4iw6wl3bcsfn7dd-union-test-all-dirs/share/guile/2.0/ice-9/posix.scm' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /share/guile/2.0/ice-9/psyntax-pp.scm' ~> `/tmp/guix-tests/store/0sgpsn768n= n73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/share/guile/2.0/ice-9/psyntax-pp= .scm' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /share/guile/2.0/ice-9/match.scm' ~> `/tmp/guix-tests/store/0sgpsn768nn73wb= lh4iw6wl3bcsfn7dd-union-test-all-dirs/share/guile/2.0/ice-9/match.scm' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /share/guile/2.0/ice-9/buffered-input.scm' ~> `/tmp/guix-tests/store/0sgpsn= 768nn73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/share/guile/2.0/ice-9/buffer= ed-input.scm' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /share/guile/2.0/ice-9/psyntax.scm' ~> `/tmp/guix-tests/store/0sgpsn768nn73= wblh4iw6wl3bcsfn7dd-union-test-all-dirs/share/guile/2.0/ice-9/psyntax.scm' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /share/guile/2.0/ice-9/match.upstream.scm' ~> `/tmp/guix-tests/store/0sgpsn= 768nn73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/share/guile/2.0/ice-9/match.= upstream.scm' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /share/guile/2.0/ice-9/time.scm' ~> `/tmp/guix-tests/store/0sgpsn768nn73wbl= h4iw6wl3bcsfn7dd-union-test-all-dirs/share/guile/2.0/ice-9/time.scm' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /share/guile/2.0/ice-9/binary-ports.scm' ~> `/tmp/guix-tests/store/0sgpsn76= 8nn73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/share/guile/2.0/ice-9/binary-p= orts.scm' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /share/guile/2.0/ice-9/regex.scm' ~> `/tmp/guix-tests/store/0sgpsn768nn73wb= lh4iw6wl3bcsfn7dd-union-test-all-dirs/share/guile/2.0/ice-9/regex.scm' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /share/guile/2.0/ice-9/ls.scm' ~> `/tmp/guix-tests/store/0sgpsn768nn73wblh4= iw6wl3bcsfn7dd-union-test-all-dirs/share/guile/2.0/ice-9/ls.scm' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /share/guile/2.0/ice-9/rw.scm' ~> `/tmp/guix-tests/store/0sgpsn768nn73wblh4= iw6wl3bcsfn7dd-union-test-all-dirs/share/guile/2.0/ice-9/rw.scm' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /share/guile/2.0/ice-9/documentation.scm' ~> `/tmp/guix-tests/store/0sgpsn7= 68nn73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/share/guile/2.0/ice-9/documen= tation.scm' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /share/guile/2.0/ice-9/local-eval.scm' ~> `/tmp/guix-tests/store/0sgpsn768n= n73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/share/guile/2.0/ice-9/local-eval= .scm' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /share/guile/2.0/ice-9/iconv.scm' ~> `/tmp/guix-tests/store/0sgpsn768nn73wb= lh4iw6wl3bcsfn7dd-union-test-all-dirs/share/guile/2.0/ice-9/iconv.scm' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /share/guile/2.0/ice-9/history.scm' ~> `/tmp/guix-tests/store/0sgpsn768nn73= wblh4iw6wl3bcsfn7dd-union-test-all-dirs/share/guile/2.0/ice-9/history.scm' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /share/guile/2.0/ice-9/expect.scm' ~> `/tmp/guix-tests/store/0sgpsn768nn73w= blh4iw6wl3bcsfn7dd-union-test-all-dirs/share/guile/2.0/ice-9/expect.scm' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /share/guile/2.0/ice-9/command-line.scm' ~> `/tmp/guix-tests/store/0sgpsn76= 8nn73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/share/guile/2.0/ice-9/command-= line.scm' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /share/guile/2.0/ice-9/syncase.scm' ~> `/tmp/guix-tests/store/0sgpsn768nn73= wblh4iw6wl3bcsfn7dd-union-test-all-dirs/share/guile/2.0/ice-9/syncase.scm' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /share/guile/2.0/ice-9/slib.scm' ~> `/tmp/guix-tests/store/0sgpsn768nn73wbl= h4iw6wl3bcsfn7dd-union-test-all-dirs/share/guile/2.0/ice-9/slib.scm' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /share/guile/2.0/ice-9/stack-catch.scm' ~> `/tmp/guix-tests/store/0sgpsn768= nn73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/share/guile/2.0/ice-9/stack-cat= ch.scm' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /share/guile/2.0/ice-9/occam-channel.scm' ~> `/tmp/guix-tests/store/0sgpsn7= 68nn73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/share/guile/2.0/ice-9/occam-c= hannel.scm' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /share/guile/2.0/ice-9/null.scm' ~> `/tmp/guix-tests/store/0sgpsn768nn73wbl= h4iw6wl3bcsfn7dd-union-test-all-dirs/share/guile/2.0/ice-9/null.scm' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /share/guile/2.0/ice-9/debug.scm' ~> `/tmp/guix-tests/store/0sgpsn768nn73wb= lh4iw6wl3bcsfn7dd-union-test-all-dirs/share/guile/2.0/ice-9/debug.scm' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /share/guile/2.0/ice-9/vlist.scm' ~> `/tmp/guix-tests/store/0sgpsn768nn73wb= lh4iw6wl3bcsfn7dd-union-test-all-dirs/share/guile/2.0/ice-9/vlist.scm' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /share/guile/2.0/ice-9/safe-r5rs.scm' ~> `/tmp/guix-tests/store/0sgpsn768nn= 73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/share/guile/2.0/ice-9/safe-r5rs.s= cm' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /share/guile/2.0/ice-9/eval-string.scm' ~> `/tmp/guix-tests/store/0sgpsn768= nn73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/share/guile/2.0/ice-9/eval-stri= ng.scm' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /share/guile/2.0/ice-9/popen.scm' ~> `/tmp/guix-tests/store/0sgpsn768nn73wb= lh4iw6wl3bcsfn7dd-union-test-all-dirs/share/guile/2.0/ice-9/popen.scm' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /share/guile/2.0/language/tree-il.scm' ~> `/tmp/guix-tests/store/0sgpsn768n= n73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/share/guile/2.0/language/tree-il= .scm' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /share/guile/2.0/language/glil.scm' ~> `/tmp/guix-tests/store/0sgpsn768nn73= wblh4iw6wl3bcsfn7dd-union-test-all-dirs/share/guile/2.0/language/glil.scm' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /share/guile/2.0/language/value/spec.scm' ~> `/tmp/guix-tests/store/0sgpsn7= 68nn73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/share/guile/2.0/language/valu= e/spec.scm' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /share/guile/2.0/language/assembly/spec.scm' ~> `/tmp/guix-tests/store/0sgp= sn768nn73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/share/guile/2.0/language/a= ssembly/spec.scm' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /share/guile/2.0/language/assembly/compile-bytecode.scm' ~> `/tmp/guix-test= s/store/0sgpsn768nn73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/share/guile/2.= 0/language/assembly/compile-bytecode.scm' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /share/guile/2.0/language/assembly/decompile-bytecode.scm' ~> `/tmp/guix-te= sts/store/0sgpsn768nn73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/share/guile/= 2.0/language/assembly/decompile-bytecode.scm' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /share/guile/2.0/language/assembly/disassemble.scm' ~> `/tmp/guix-tests/sto= re/0sgpsn768nn73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/share/guile/2.0/lan= guage/assembly/disassemble.scm' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /share/guile/2.0/language/scheme/decompile-tree-il.scm' ~> `/tmp/guix-tests= /store/0sgpsn768nn73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/share/guile/2.0= /language/scheme/decompile-tree-il.scm' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /share/guile/2.0/language/scheme/spec.scm' ~> `/tmp/guix-tests/store/0sgpsn= 768nn73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/share/guile/2.0/language/sch= eme/spec.scm' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /share/guile/2.0/language/scheme/compile-tree-il.scm' ~> `/tmp/guix-tests/s= tore/0sgpsn768nn73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/share/guile/2.0/l= anguage/scheme/compile-tree-il.scm' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /share/guile/2.0/language/objcode/spec.scm' ~> `/tmp/guix-tests/store/0sgps= n768nn73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/share/guile/2.0/language/ob= jcode/spec.scm' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /share/guile/2.0/language/tree-il/canonicalize.scm' ~> `/tmp/guix-tests/sto= re/0sgpsn768nn73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/share/guile/2.0/lan= guage/tree-il/canonicalize.scm' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /share/guile/2.0/language/tree-il/optimize.scm' ~> `/tmp/guix-tests/store/0= sgpsn768nn73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/share/guile/2.0/languag= e/tree-il/optimize.scm' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /share/guile/2.0/language/tree-il/inline.scm' ~> `/tmp/guix-tests/store/0sg= psn768nn73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/share/guile/2.0/language/= tree-il/inline.scm' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /share/guile/2.0/language/tree-il/effects.scm' ~> `/tmp/guix-tests/store/0s= gpsn768nn73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/share/guile/2.0/language= /tree-il/effects.scm' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /share/guile/2.0/language/tree-il/spec.scm' ~> `/tmp/guix-tests/store/0sgps= n768nn73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/share/guile/2.0/language/tr= ee-il/spec.scm' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /share/guile/2.0/language/tree-il/primitives.scm' ~> `/tmp/guix-tests/store= /0sgpsn768nn73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/share/guile/2.0/langu= age/tree-il/primitives.scm' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /share/guile/2.0/language/tree-il/fix-letrec.scm' ~> `/tmp/guix-tests/store= /0sgpsn768nn73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/share/guile/2.0/langu= age/tree-il/fix-letrec.scm' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /share/guile/2.0/language/tree-il/peval.scm' ~> `/tmp/guix-tests/store/0sgp= sn768nn73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/share/guile/2.0/language/t= ree-il/peval.scm' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /share/guile/2.0/language/tree-il/analyze.scm' ~> `/tmp/guix-tests/store/0s= gpsn768nn73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/share/guile/2.0/language= /tree-il/analyze.scm' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /share/guile/2.0/language/tree-il/debug.scm' ~> `/tmp/guix-tests/store/0sgp= sn768nn73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/share/guile/2.0/language/t= ree-il/debug.scm' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /share/guile/2.0/language/tree-il/cse.scm' ~> `/tmp/guix-tests/store/0sgpsn= 768nn73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/share/guile/2.0/language/tre= e-il/cse.scm' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /share/guile/2.0/language/tree-il/compile-glil.scm' ~> `/tmp/guix-tests/sto= re/0sgpsn768nn73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/share/guile/2.0/lan= guage/tree-il/compile-glil.scm' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /share/guile/2.0/language/elisp/runtime/subrs.scm' ~> `/tmp/guix-tests/stor= e/0sgpsn768nn73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/share/guile/2.0/lang= uage/elisp/runtime/subrs.scm' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /share/guile/2.0/language/elisp/runtime/macros.scm' ~> `/tmp/guix-tests/sto= re/0sgpsn768nn73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/share/guile/2.0/lan= guage/elisp/runtime/macros.scm' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /share/guile/2.0/language/elisp/runtime/function-slot.scm' ~> `/tmp/guix-te= sts/store/0sgpsn768nn73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/share/guile/= 2.0/language/elisp/runtime/function-slot.scm' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /share/guile/2.0/language/elisp/runtime/value-slot.scm' ~> `/tmp/guix-tests= /store/0sgpsn768nn73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/share/guile/2.0= /language/elisp/runtime/value-slot.scm' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /share/guile/2.0/language/elisp/spec.scm' ~> `/tmp/guix-tests/store/0sgpsn7= 68nn73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/share/guile/2.0/language/elis= p/spec.scm' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /share/guile/2.0/language/elisp/parser.scm' ~> `/tmp/guix-tests/store/0sgps= n768nn73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/share/guile/2.0/language/el= isp/parser.scm' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /share/guile/2.0/language/elisp/bindings.scm' ~> `/tmp/guix-tests/store/0sg= psn768nn73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/share/guile/2.0/language/= elisp/bindings.scm' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /share/guile/2.0/language/elisp/lexer.scm' ~> `/tmp/guix-tests/store/0sgpsn= 768nn73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/share/guile/2.0/language/eli= sp/lexer.scm' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /share/guile/2.0/language/elisp/runtime.scm' ~> `/tmp/guix-tests/store/0sgp= sn768nn73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/share/guile/2.0/language/e= lisp/runtime.scm' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /share/guile/2.0/language/elisp/compile-tree-il.scm' ~> `/tmp/guix-tests/st= ore/0sgpsn768nn73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/share/guile/2.0/la= nguage/elisp/compile-tree-il.scm' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /share/guile/2.0/language/assembly.scm' ~> `/tmp/guix-tests/store/0sgpsn768= nn73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/share/guile/2.0/language/assemb= ly.scm' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /share/guile/2.0/language/glil/spec.scm' ~> `/tmp/guix-tests/store/0sgpsn76= 8nn73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/share/guile/2.0/language/glil/= spec.scm' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /share/guile/2.0/language/glil/compile-assembly.scm' ~> `/tmp/guix-tests/st= ore/0sgpsn768nn73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/share/guile/2.0/la= nguage/glil/compile-assembly.scm' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /share/guile/2.0/language/ecmascript/array.scm' ~> `/tmp/guix-tests/store/0= sgpsn768nn73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/share/guile/2.0/languag= e/ecmascript/array.scm' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /share/guile/2.0/language/ecmascript/spec.scm' ~> `/tmp/guix-tests/store/0s= gpsn768nn73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/share/guile/2.0/language= /ecmascript/spec.scm' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /share/guile/2.0/language/ecmascript/parse.scm' ~> `/tmp/guix-tests/store/0= sgpsn768nn73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/share/guile/2.0/languag= e/ecmascript/parse.scm' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /share/guile/2.0/language/ecmascript/function.scm' ~> `/tmp/guix-tests/stor= e/0sgpsn768nn73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/share/guile/2.0/lang= uage/ecmascript/function.scm' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /share/guile/2.0/language/ecmascript/tokenize.scm' ~> `/tmp/guix-tests/stor= e/0sgpsn768nn73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/share/guile/2.0/lang= uage/ecmascript/tokenize.scm' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /share/guile/2.0/language/ecmascript/impl.scm' ~> `/tmp/guix-tests/store/0s= gpsn768nn73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/share/guile/2.0/language= /ecmascript/impl.scm' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /share/guile/2.0/language/ecmascript/base.scm' ~> `/tmp/guix-tests/store/0s= gpsn768nn73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/share/guile/2.0/language= /ecmascript/base.scm' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /share/guile/2.0/language/ecmascript/compile-tree-il.scm' ~> `/tmp/guix-tes= ts/store/0sgpsn768nn73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/share/guile/2= .0/language/ecmascript/compile-tree-il.scm' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /share/guile/2.0/language/bytecode/spec.scm' ~> `/tmp/guix-tests/store/0sgp= sn768nn73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/share/guile/2.0/language/b= ytecode/spec.scm' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /share/guile/2.0/language/brainfuck/spec.scm' ~> `/tmp/guix-tests/store/0sg= psn768nn73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/share/guile/2.0/language/= brainfuck/spec.scm' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /share/guile/2.0/language/brainfuck/parse.scm' ~> `/tmp/guix-tests/store/0s= gpsn768nn73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/share/guile/2.0/language= /brainfuck/parse.scm' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /share/guile/2.0/language/brainfuck/compile-scheme.scm' ~> `/tmp/guix-tests= /store/0sgpsn768nn73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/share/guile/2.0= /language/brainfuck/compile-scheme.scm' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /share/guile/2.0/language/brainfuck/compile-tree-il.scm' ~> `/tmp/guix-test= s/store/0sgpsn768nn73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/share/guile/2.= 0/language/brainfuck/compile-tree-il.scm' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /share/guile/2.0/statprof.scm' ~> `/tmp/guix-tests/store/0sgpsn768nn73wblh4= iw6wl3bcsfn7dd-union-test-all-dirs/share/guile/2.0/statprof.scm' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /share/guile/2.0/scripts/list.scm' ~> `/tmp/guix-tests/store/0sgpsn768nn73w= blh4iw6wl3bcsfn7dd-union-test-all-dirs/share/guile/2.0/scripts/list.scm' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /share/guile/2.0/scripts/help.scm' ~> `/tmp/guix-tests/store/0sgpsn768nn73w= blh4iw6wl3bcsfn7dd-union-test-all-dirs/share/guile/2.0/scripts/help.scm' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /share/guile/2.0/scripts/read-rfc822.scm' ~> `/tmp/guix-tests/store/0sgpsn7= 68nn73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/share/guile/2.0/scripts/read-= rfc822.scm' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /share/guile/2.0/scripts/use2dot.scm' ~> `/tmp/guix-tests/store/0sgpsn768nn= 73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/share/guile/2.0/scripts/use2dot.s= cm' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /share/guile/2.0/scripts/snarf-guile-m4-docs.scm' ~> `/tmp/guix-tests/store= /0sgpsn768nn73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/share/guile/2.0/scrip= ts/snarf-guile-m4-docs.scm' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /share/guile/2.0/scripts/frisk.scm' ~> `/tmp/guix-tests/store/0sgpsn768nn73= wblh4iw6wl3bcsfn7dd-union-test-all-dirs/share/guile/2.0/scripts/frisk.scm' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /share/guile/2.0/scripts/read-text-outline.scm' ~> `/tmp/guix-tests/store/0= sgpsn768nn73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/share/guile/2.0/scripts= /read-text-outline.scm' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /share/guile/2.0/scripts/autofrisk.scm' ~> `/tmp/guix-tests/store/0sgpsn768= nn73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/share/guile/2.0/scripts/autofri= sk.scm' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /share/guile/2.0/scripts/snarf-check-and-output-texi.scm' ~> `/tmp/guix-tes= ts/store/0sgpsn768nn73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/share/guile/2= .0/scripts/snarf-check-and-output-texi.scm' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /share/guile/2.0/scripts/scan-api.scm' ~> `/tmp/guix-tests/store/0sgpsn768n= n73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/share/guile/2.0/scripts/scan-api= .scm' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /share/guile/2.0/scripts/read-scheme-source.scm' ~> `/tmp/guix-tests/store/= 0sgpsn768nn73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/share/guile/2.0/script= s/read-scheme-source.scm' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /share/guile/2.0/scripts/compile.scm' ~> `/tmp/guix-tests/store/0sgpsn768nn= 73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/share/guile/2.0/scripts/compile.s= cm' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /share/guile/2.0/scripts/doc-snarf.scm' ~> `/tmp/guix-tests/store/0sgpsn768= nn73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/share/guile/2.0/scripts/doc-sna= rf.scm' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /share/guile/2.0/scripts/punify.scm' ~> `/tmp/guix-tests/store/0sgpsn768nn7= 3wblh4iw6wl3bcsfn7dd-union-test-all-dirs/share/guile/2.0/scripts/punify.scm' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /share/guile/2.0/scripts/lint.scm' ~> `/tmp/guix-tests/store/0sgpsn768nn73w= blh4iw6wl3bcsfn7dd-union-test-all-dirs/share/guile/2.0/scripts/lint.scm' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /share/guile/2.0/scripts/generate-autoload.scm' ~> `/tmp/guix-tests/store/0= sgpsn768nn73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/share/guile/2.0/scripts= /generate-autoload.scm' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /share/guile/2.0/scripts/api-diff.scm' ~> `/tmp/guix-tests/store/0sgpsn768n= n73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/share/guile/2.0/scripts/api-diff= .scm' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /share/guile/2.0/scripts/disassemble.scm' ~> `/tmp/guix-tests/store/0sgpsn7= 68nn73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/share/guile/2.0/scripts/disas= semble.scm' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /share/guile/2.0/scripts/display-commentary.scm' ~> `/tmp/guix-tests/store/= 0sgpsn768nn73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/share/guile/2.0/script= s/display-commentary.scm' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /share/guile/2.0/scripts/summarize-guile-TODO.scm' ~> `/tmp/guix-tests/stor= e/0sgpsn768nn73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/share/guile/2.0/scri= pts/summarize-guile-TODO.scm' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /share/guile/2.0/rnrs.scm' ~> `/tmp/guix-tests/store/0sgpsn768nn73wblh4iw6w= l3bcsfn7dd-union-test-all-dirs/share/guile/2.0/rnrs.scm' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /share/guile/2.0/srfi/srfi-67/compare.scm' ~> `/tmp/guix-tests/store/0sgpsn= 768nn73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/share/guile/2.0/srfi/srfi-67= /compare.scm' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /share/guile/2.0/srfi/srfi-41.scm' ~> `/tmp/guix-tests/store/0sgpsn768nn73w= blh4iw6wl3bcsfn7dd-union-test-all-dirs/share/guile/2.0/srfi/srfi-41.scm' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /share/guile/2.0/srfi/srfi-67.scm' ~> `/tmp/guix-tests/store/0sgpsn768nn73w= blh4iw6wl3bcsfn7dd-union-test-all-dirs/share/guile/2.0/srfi/srfi-67.scm' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /share/guile/2.0/srfi/srfi-19.scm' ~> `/tmp/guix-tests/store/0sgpsn768nn73w= blh4iw6wl3bcsfn7dd-union-test-all-dirs/share/guile/2.0/srfi/srfi-19.scm' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /share/guile/2.0/srfi/srfi-18.scm' ~> `/tmp/guix-tests/store/0sgpsn768nn73w= blh4iw6wl3bcsfn7dd-union-test-all-dirs/share/guile/2.0/srfi/srfi-18.scm' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /share/guile/2.0/srfi/srfi-17.scm' ~> `/tmp/guix-tests/store/0sgpsn768nn73w= blh4iw6wl3bcsfn7dd-union-test-all-dirs/share/guile/2.0/srfi/srfi-17.scm' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /share/guile/2.0/srfi/srfi-9.scm' ~> `/tmp/guix-tests/store/0sgpsn768nn73wb= lh4iw6wl3bcsfn7dd-union-test-all-dirs/share/guile/2.0/srfi/srfi-9.scm' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /share/guile/2.0/srfi/srfi-4/gnu.scm' ~> `/tmp/guix-tests/store/0sgpsn768nn= 73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/share/guile/2.0/srfi/srfi-4/gnu.s= cm' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /share/guile/2.0/srfi/srfi-16.scm' ~> `/tmp/guix-tests/store/0sgpsn768nn73w= blh4iw6wl3bcsfn7dd-union-test-all-dirs/share/guile/2.0/srfi/srfi-16.scm' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /share/guile/2.0/srfi/srfi-8.scm' ~> `/tmp/guix-tests/store/0sgpsn768nn73wb= lh4iw6wl3bcsfn7dd-union-test-all-dirs/share/guile/2.0/srfi/srfi-8.scm' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /share/guile/2.0/srfi/srfi-9/gnu.scm' ~> `/tmp/guix-tests/store/0sgpsn768nn= 73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/share/guile/2.0/srfi/srfi-9/gnu.s= cm' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /share/guile/2.0/srfi/srfi-14.scm' ~> `/tmp/guix-tests/store/0sgpsn768nn73w= blh4iw6wl3bcsfn7dd-union-test-all-dirs/share/guile/2.0/srfi/srfi-14.scm' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /share/guile/2.0/srfi/srfi-6.scm' ~> `/tmp/guix-tests/store/0sgpsn768nn73wb= lh4iw6wl3bcsfn7dd-union-test-all-dirs/share/guile/2.0/srfi/srfi-6.scm' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /share/guile/2.0/srfi/srfi-27.scm' ~> `/tmp/guix-tests/store/0sgpsn768nn73w= blh4iw6wl3bcsfn7dd-union-test-all-dirs/share/guile/2.0/srfi/srfi-27.scm' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /share/guile/2.0/srfi/srfi-13.scm' ~> `/tmp/guix-tests/store/0sgpsn768nn73w= blh4iw6wl3bcsfn7dd-union-test-all-dirs/share/guile/2.0/srfi/srfi-13.scm' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /share/guile/2.0/srfi/srfi-88.scm' ~> `/tmp/guix-tests/store/0sgpsn768nn73w= blh4iw6wl3bcsfn7dd-union-test-all-dirs/share/guile/2.0/srfi/srfi-88.scm' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /share/guile/2.0/srfi/srfi-26.scm' ~> `/tmp/guix-tests/store/0sgpsn768nn73w= blh4iw6wl3bcsfn7dd-union-test-all-dirs/share/guile/2.0/srfi/srfi-26.scm' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /share/guile/2.0/srfi/srfi-60.scm' ~> `/tmp/guix-tests/store/0sgpsn768nn73w= blh4iw6wl3bcsfn7dd-union-test-all-dirs/share/guile/2.0/srfi/srfi-60.scm' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /share/guile/2.0/srfi/srfi-39.scm' ~> `/tmp/guix-tests/store/0sgpsn768nn73w= blh4iw6wl3bcsfn7dd-union-test-all-dirs/share/guile/2.0/srfi/srfi-39.scm' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /share/guile/2.0/srfi/srfi-4.scm' ~> `/tmp/guix-tests/store/0sgpsn768nn73wb= lh4iw6wl3bcsfn7dd-union-test-all-dirs/share/guile/2.0/srfi/srfi-4.scm' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /share/guile/2.0/srfi/srfi-11.scm' ~> `/tmp/guix-tests/store/0sgpsn768nn73w= blh4iw6wl3bcsfn7dd-union-test-all-dirs/share/guile/2.0/srfi/srfi-11.scm' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /share/guile/2.0/srfi/srfi-38.scm' ~> `/tmp/guix-tests/store/0sgpsn768nn73w= blh4iw6wl3bcsfn7dd-union-test-all-dirs/share/guile/2.0/srfi/srfi-38.scm' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /share/guile/2.0/srfi/srfi-10.scm' ~> `/tmp/guix-tests/store/0sgpsn768nn73w= blh4iw6wl3bcsfn7dd-union-test-all-dirs/share/guile/2.0/srfi/srfi-10.scm' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /share/guile/2.0/srfi/srfi-2.scm' ~> `/tmp/guix-tests/store/0sgpsn768nn73wb= lh4iw6wl3bcsfn7dd-union-test-all-dirs/share/guile/2.0/srfi/srfi-2.scm' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /share/guile/2.0/srfi/srfi-37.scm' ~> `/tmp/guix-tests/store/0sgpsn768nn73w= blh4iw6wl3bcsfn7dd-union-test-all-dirs/share/guile/2.0/srfi/srfi-37.scm' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /share/guile/2.0/srfi/srfi-98.scm' ~> `/tmp/guix-tests/store/0sgpsn768nn73w= blh4iw6wl3bcsfn7dd-union-test-all-dirs/share/guile/2.0/srfi/srfi-98.scm' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /share/guile/2.0/srfi/srfi-1.scm' ~> `/tmp/guix-tests/store/0sgpsn768nn73wb= lh4iw6wl3bcsfn7dd-union-test-all-dirs/share/guile/2.0/srfi/srfi-1.scm' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /share/guile/2.0/srfi/srfi-35.scm' ~> `/tmp/guix-tests/store/0sgpsn768nn73w= blh4iw6wl3bcsfn7dd-union-test-all-dirs/share/guile/2.0/srfi/srfi-35.scm' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /share/guile/2.0/srfi/srfi-34.scm' ~> `/tmp/guix-tests/store/0sgpsn768nn73w= blh4iw6wl3bcsfn7dd-union-test-all-dirs/share/guile/2.0/srfi/srfi-34.scm' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /share/guile/2.0/srfi/srfi-42/ec.scm' ~> `/tmp/guix-tests/store/0sgpsn768nn= 73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/share/guile/2.0/srfi/srfi-42/ec.s= cm' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /share/guile/2.0/srfi/srfi-45.scm' ~> `/tmp/guix-tests/store/0sgpsn768nn73w= blh4iw6wl3bcsfn7dd-union-test-all-dirs/share/guile/2.0/srfi/srfi-45.scm' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /share/guile/2.0/srfi/srfi-31.scm' ~> `/tmp/guix-tests/store/0sgpsn768nn73w= blh4iw6wl3bcsfn7dd-union-test-all-dirs/share/guile/2.0/srfi/srfi-31.scm' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /share/guile/2.0/srfi/srfi-42.scm' ~> `/tmp/guix-tests/store/0sgpsn768nn73w= blh4iw6wl3bcsfn7dd-union-test-all-dirs/share/guile/2.0/srfi/srfi-42.scm' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /share/guile/2.0/srfi/srfi-69.scm' ~> `/tmp/guix-tests/store/0sgpsn768nn73w= blh4iw6wl3bcsfn7dd-union-test-all-dirs/share/guile/2.0/srfi/srfi-69.scm' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /share/guile/2.0/guile-procedures.txt' ~> `/tmp/guix-tests/store/0sgpsn768n= n73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/share/guile/2.0/guile-procedures= .txt' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /share/guile/2.0/rnrs/mutable-strings.scm' ~> `/tmp/guix-tests/store/0sgpsn= 768nn73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/share/guile/2.0/rnrs/mutable= -strings.scm' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /share/guile/2.0/rnrs/control.scm' ~> `/tmp/guix-tests/store/0sgpsn768nn73w= blh4iw6wl3bcsfn7dd-union-test-all-dirs/share/guile/2.0/rnrs/control.scm' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /share/guile/2.0/rnrs/records/procedural.scm' ~> `/tmp/guix-tests/store/0sg= psn768nn73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/share/guile/2.0/rnrs/reco= rds/procedural.scm' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /share/guile/2.0/rnrs/records/syntactic.scm' ~> `/tmp/guix-tests/store/0sgp= sn768nn73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/share/guile/2.0/rnrs/recor= ds/syntactic.scm' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /share/guile/2.0/rnrs/records/inspection.scm' ~> `/tmp/guix-tests/store/0sg= psn768nn73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/share/guile/2.0/rnrs/reco= rds/inspection.scm' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /share/guile/2.0/rnrs/lists.scm' ~> `/tmp/guix-tests/store/0sgpsn768nn73wbl= h4iw6wl3bcsfn7dd-union-test-all-dirs/share/guile/2.0/rnrs/lists.scm' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /share/guile/2.0/rnrs/enums.scm' ~> `/tmp/guix-tests/store/0sgpsn768nn73wbl= h4iw6wl3bcsfn7dd-union-test-all-dirs/share/guile/2.0/rnrs/enums.scm' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /share/guile/2.0/rnrs/conditions.scm' ~> `/tmp/guix-tests/store/0sgpsn768nn= 73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/share/guile/2.0/rnrs/conditions.s= cm' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /share/guile/2.0/rnrs/hashtables.scm' ~> `/tmp/guix-tests/store/0sgpsn768nn= 73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/share/guile/2.0/rnrs/hashtables.s= cm' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /share/guile/2.0/rnrs/arithmetic/fixnums.scm' ~> `/tmp/guix-tests/store/0sg= psn768nn73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/share/guile/2.0/rnrs/arit= hmetic/fixnums.scm' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /share/guile/2.0/rnrs/arithmetic/bitwise.scm' ~> `/tmp/guix-tests/store/0sg= psn768nn73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/share/guile/2.0/rnrs/arit= hmetic/bitwise.scm' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /share/guile/2.0/rnrs/arithmetic/flonums.scm' ~> `/tmp/guix-tests/store/0sg= psn768nn73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/share/guile/2.0/rnrs/arit= hmetic/flonums.scm' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /share/guile/2.0/rnrs/sorting.scm' ~> `/tmp/guix-tests/store/0sgpsn768nn73w= blh4iw6wl3bcsfn7dd-union-test-all-dirs/share/guile/2.0/rnrs/sorting.scm' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /share/guile/2.0/rnrs/files.scm' ~> `/tmp/guix-tests/store/0sgpsn768nn73wbl= h4iw6wl3bcsfn7dd-union-test-all-dirs/share/guile/2.0/rnrs/files.scm' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /share/guile/2.0/rnrs/programs.scm' ~> `/tmp/guix-tests/store/0sgpsn768nn73= wblh4iw6wl3bcsfn7dd-union-test-all-dirs/share/guile/2.0/rnrs/programs.scm' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /share/guile/2.0/rnrs/mutable-pairs.scm' ~> `/tmp/guix-tests/store/0sgpsn76= 8nn73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/share/guile/2.0/rnrs/mutable-p= airs.scm' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /share/guile/2.0/rnrs/bytevectors.scm' ~> `/tmp/guix-tests/store/0sgpsn768n= n73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/share/guile/2.0/rnrs/bytevectors= .scm' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /share/guile/2.0/rnrs/unicode.scm' ~> `/tmp/guix-tests/store/0sgpsn768nn73w= blh4iw6wl3bcsfn7dd-union-test-all-dirs/share/guile/2.0/rnrs/unicode.scm' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /share/guile/2.0/rnrs/eval.scm' ~> `/tmp/guix-tests/store/0sgpsn768nn73wblh= 4iw6wl3bcsfn7dd-union-test-all-dirs/share/guile/2.0/rnrs/eval.scm' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /share/guile/2.0/rnrs/base.scm' ~> `/tmp/guix-tests/store/0sgpsn768nn73wblh= 4iw6wl3bcsfn7dd-union-test-all-dirs/share/guile/2.0/rnrs/base.scm' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /share/guile/2.0/rnrs/syntax-case.scm' ~> `/tmp/guix-tests/store/0sgpsn768n= n73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/share/guile/2.0/rnrs/syntax-case= .scm' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /share/guile/2.0/rnrs/r5rs.scm' ~> `/tmp/guix-tests/store/0sgpsn768nn73wblh= 4iw6wl3bcsfn7dd-union-test-all-dirs/share/guile/2.0/rnrs/r5rs.scm' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /share/guile/2.0/rnrs/io/ports.scm' ~> `/tmp/guix-tests/store/0sgpsn768nn73= wblh4iw6wl3bcsfn7dd-union-test-all-dirs/share/guile/2.0/rnrs/io/ports.scm' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /share/guile/2.0/rnrs/io/simple.scm' ~> `/tmp/guix-tests/store/0sgpsn768nn7= 3wblh4iw6wl3bcsfn7dd-union-test-all-dirs/share/guile/2.0/rnrs/io/simple.scm' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /share/guile/2.0/rnrs/exceptions.scm' ~> `/tmp/guix-tests/store/0sgpsn768nn= 73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/share/guile/2.0/rnrs/exceptions.s= cm' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /share/guile/2.0/web/http.scm' ~> `/tmp/guix-tests/store/0sgpsn768nn73wblh4= iw6wl3bcsfn7dd-union-test-all-dirs/share/guile/2.0/web/http.scm' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /share/guile/2.0/web/client.scm' ~> `/tmp/guix-tests/store/0sgpsn768nn73wbl= h4iw6wl3bcsfn7dd-union-test-all-dirs/share/guile/2.0/web/client.scm' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /share/guile/2.0/web/server/http.scm' ~> `/tmp/guix-tests/store/0sgpsn768nn= 73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/share/guile/2.0/web/server/http.s= cm' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /share/guile/2.0/web/request.scm' ~> `/tmp/guix-tests/store/0sgpsn768nn73wb= lh4iw6wl3bcsfn7dd-union-test-all-dirs/share/guile/2.0/web/request.scm' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /share/guile/2.0/web/response.scm' ~> `/tmp/guix-tests/store/0sgpsn768nn73w= blh4iw6wl3bcsfn7dd-union-test-all-dirs/share/guile/2.0/web/response.scm' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /share/guile/2.0/web/uri.scm' ~> `/tmp/guix-tests/store/0sgpsn768nn73wblh4i= w6wl3bcsfn7dd-union-test-all-dirs/share/guile/2.0/web/uri.scm' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /share/guile/2.0/web/server.scm' ~> `/tmp/guix-tests/store/0sgpsn768nn73wbl= h4iw6wl3bcsfn7dd-union-test-all-dirs/share/guile/2.0/web/server.scm' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /share/guile/2.0/texinfo/indexing.scm' ~> `/tmp/guix-tests/store/0sgpsn768n= n73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/share/guile/2.0/texinfo/indexing= .scm' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /share/guile/2.0/texinfo/plain-text.scm' ~> `/tmp/guix-tests/store/0sgpsn76= 8nn73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/share/guile/2.0/texinfo/plain-= text.scm' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /share/guile/2.0/texinfo/html.scm' ~> `/tmp/guix-tests/store/0sgpsn768nn73w= blh4iw6wl3bcsfn7dd-union-test-all-dirs/share/guile/2.0/texinfo/html.scm' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /share/guile/2.0/texinfo/reflection.scm' ~> `/tmp/guix-tests/store/0sgpsn76= 8nn73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/share/guile/2.0/texinfo/reflec= tion.scm' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /share/guile/2.0/texinfo/string-utils.scm' ~> `/tmp/guix-tests/store/0sgpsn= 768nn73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/share/guile/2.0/texinfo/stri= ng-utils.scm' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /share/guile/2.0/texinfo/docbook.scm' ~> `/tmp/guix-tests/store/0sgpsn768nn= 73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/share/guile/2.0/texinfo/docbook.s= cm' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /share/guile/2.0/texinfo/serialize.scm' ~> `/tmp/guix-tests/store/0sgpsn768= nn73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/share/guile/2.0/texinfo/seriali= ze.scm' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /bin/.guile-real' ~> `/tmp/guix-tests/store/0sgpsn768nn73wblh4iw6wl3bcsfn7d= d-union-test-all-dirs/bin/.guile-real' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /bin/guile' ~> `/tmp/guix-tests/store/0sgpsn768nn73wblh4iw6wl3bcsfn7dd-unio= n-test-all-dirs/bin/guile' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /lib/guile/2.0/ccache/oop/goops.go' ~> `/tmp/guix-tests/store/0sgpsn768nn73= wblh4iw6wl3bcsfn7dd-union-test-all-dirs/lib/guile/2.0/ccache/oop/goops.go' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /lib/guile/2.0/ccache/oop/goops/internal.go' ~> `/tmp/guix-tests/store/0sgp= sn768nn73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/lib/guile/2.0/ccache/oop/g= oops/internal.go' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /lib/guile/2.0/ccache/oop/goops/simple.go' ~> `/tmp/guix-tests/store/0sgpsn= 768nn73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/lib/guile/2.0/ccache/oop/goo= ps/simple.go' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /lib/guile/2.0/ccache/oop/goops/util.go' ~> `/tmp/guix-tests/store/0sgpsn76= 8nn73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/lib/guile/2.0/ccache/oop/goops= /util.go' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /lib/guile/2.0/ccache/oop/goops/compile.go' ~> `/tmp/guix-tests/store/0sgps= n768nn73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/lib/guile/2.0/ccache/oop/go= ops/compile.go' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /lib/guile/2.0/ccache/oop/goops/dispatch.go' ~> `/tmp/guix-tests/store/0sgp= sn768nn73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/lib/guile/2.0/ccache/oop/g= oops/dispatch.go' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /lib/guile/2.0/ccache/oop/goops/active-slot.go' ~> `/tmp/guix-tests/store/0= sgpsn768nn73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/lib/guile/2.0/ccache/oo= p/goops/active-slot.go' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /lib/guile/2.0/ccache/oop/goops/accessors.go' ~> `/tmp/guix-tests/store/0sg= psn768nn73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/lib/guile/2.0/ccache/oop/= goops/accessors.go' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /lib/guile/2.0/ccache/oop/goops/describe.go' ~> `/tmp/guix-tests/store/0sgp= sn768nn73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/lib/guile/2.0/ccache/oop/g= oops/describe.go' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /lib/guile/2.0/ccache/oop/goops/stklos.go' ~> `/tmp/guix-tests/store/0sgpsn= 768nn73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/lib/guile/2.0/ccache/oop/goo= ps/stklos.go' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /lib/guile/2.0/ccache/oop/goops/composite-slot.go' ~> `/tmp/guix-tests/stor= e/0sgpsn768nn73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/lib/guile/2.0/ccache= /oop/goops/composite-slot.go' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /lib/guile/2.0/ccache/oop/goops/save.go' ~> `/tmp/guix-tests/store/0sgpsn76= 8nn73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/lib/guile/2.0/ccache/oop/goops= /save.go' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /lib/guile/2.0/ccache/texinfo.go' ~> `/tmp/guix-tests/store/0sgpsn768nn73wb= lh4iw6wl3bcsfn7dd-union-test-all-dirs/lib/guile/2.0/ccache/texinfo.go' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /lib/guile/2.0/ccache/system/base/pmatch.go' ~> `/tmp/guix-tests/store/0sgp= sn768nn73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/lib/guile/2.0/ccache/syste= m/base/pmatch.go' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /lib/guile/2.0/ccache/system/base/syntax.go' ~> `/tmp/guix-tests/store/0sgp= sn768nn73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/lib/guile/2.0/ccache/syste= m/base/syntax.go' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /lib/guile/2.0/ccache/system/base/target.go' ~> `/tmp/guix-tests/store/0sgp= sn768nn73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/lib/guile/2.0/ccache/syste= m/base/target.go' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /lib/guile/2.0/ccache/system/base/lalr.go' ~> `/tmp/guix-tests/store/0sgpsn= 768nn73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/lib/guile/2.0/ccache/system/= base/lalr.go' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /lib/guile/2.0/ccache/system/base/compile.go' ~> `/tmp/guix-tests/store/0sg= psn768nn73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/lib/guile/2.0/ccache/syst= em/base/compile.go' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /lib/guile/2.0/ccache/system/base/ck.go' ~> `/tmp/guix-tests/store/0sgpsn76= 8nn73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/lib/guile/2.0/ccache/system/ba= se/ck.go' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /lib/guile/2.0/ccache/system/base/language.go' ~> `/tmp/guix-tests/store/0s= gpsn768nn73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/lib/guile/2.0/ccache/sys= tem/base/language.go' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /lib/guile/2.0/ccache/system/base/message.go' ~> `/tmp/guix-tests/store/0sg= psn768nn73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/lib/guile/2.0/ccache/syst= em/base/message.go' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /lib/guile/2.0/ccache/system/vm/trace.go' ~> `/tmp/guix-tests/store/0sgpsn7= 68nn73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/lib/guile/2.0/ccache/system/v= m/trace.go' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /lib/guile/2.0/ccache/system/vm/traps.go' ~> `/tmp/guix-tests/store/0sgpsn7= 68nn73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/lib/guile/2.0/ccache/system/v= m/traps.go' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /lib/guile/2.0/ccache/system/vm/trap-state.go' ~> `/tmp/guix-tests/store/0s= gpsn768nn73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/lib/guile/2.0/ccache/sys= tem/vm/trap-state.go' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /lib/guile/2.0/ccache/system/vm/objcode.go' ~> `/tmp/guix-tests/store/0sgps= n768nn73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/lib/guile/2.0/ccache/system= /vm/objcode.go' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /lib/guile/2.0/ccache/system/vm/frame.go' ~> `/tmp/guix-tests/store/0sgpsn7= 68nn73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/lib/guile/2.0/ccache/system/v= m/frame.go' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /lib/guile/2.0/ccache/system/vm/vm.go' ~> `/tmp/guix-tests/store/0sgpsn768n= n73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/lib/guile/2.0/ccache/system/vm/v= m.go' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /lib/guile/2.0/ccache/system/vm/coverage.go' ~> `/tmp/guix-tests/store/0sgp= sn768nn73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/lib/guile/2.0/ccache/syste= m/vm/coverage.go' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /lib/guile/2.0/ccache/system/vm/program.go' ~> `/tmp/guix-tests/store/0sgps= n768nn73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/lib/guile/2.0/ccache/system= /vm/program.go' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /lib/guile/2.0/ccache/system/vm/instruction.go' ~> `/tmp/guix-tests/store/0= sgpsn768nn73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/lib/guile/2.0/ccache/sy= stem/vm/instruction.go' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /lib/guile/2.0/ccache/system/vm/inspect.go' ~> `/tmp/guix-tests/store/0sgps= n768nn73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/lib/guile/2.0/ccache/system= /vm/inspect.go' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /lib/guile/2.0/ccache/system/foreign.go' ~> `/tmp/guix-tests/store/0sgpsn76= 8nn73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/lib/guile/2.0/ccache/system/fo= reign.go' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /lib/guile/2.0/ccache/system/xref.go' ~> `/tmp/guix-tests/store/0sgpsn768nn= 73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/lib/guile/2.0/ccache/system/xref.= go' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /lib/guile/2.0/ccache/system/repl/command.go' ~> `/tmp/guix-tests/store/0sg= psn768nn73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/lib/guile/2.0/ccache/syst= em/repl/command.go' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /lib/guile/2.0/ccache/system/repl/repl.go' ~> `/tmp/guix-tests/store/0sgpsn= 768nn73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/lib/guile/2.0/ccache/system/= repl/repl.go' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /lib/guile/2.0/ccache/system/repl/common.go' ~> `/tmp/guix-tests/store/0sgp= sn768nn73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/lib/guile/2.0/ccache/syste= m/repl/common.go' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /lib/guile/2.0/ccache/system/repl/server.go' ~> `/tmp/guix-tests/store/0sgp= sn768nn73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/lib/guile/2.0/ccache/syste= m/repl/server.go' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /lib/guile/2.0/ccache/system/repl/error-handling.go' ~> `/tmp/guix-tests/st= ore/0sgpsn768nn73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/lib/guile/2.0/ccac= he/system/repl/error-handling.go' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /lib/guile/2.0/ccache/system/repl/debug.go' ~> `/tmp/guix-tests/store/0sgps= n768nn73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/lib/guile/2.0/ccache/system= /repl/debug.go' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /lib/guile/2.0/ccache/rnrs.go' ~> `/tmp/guix-tests/store/0sgpsn768nn73wblh4= iw6wl3bcsfn7dd-union-test-all-dirs/lib/guile/2.0/ccache/rnrs.go' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /lib/guile/2.0/ccache/sxml/apply-templates.go' ~> `/tmp/guix-tests/store/0s= gpsn768nn73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/lib/guile/2.0/ccache/sxm= l/apply-templates.go' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /lib/guile/2.0/ccache/sxml/simple.go' ~> `/tmp/guix-tests/store/0sgpsn768nn= 73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/lib/guile/2.0/ccache/sxml/simple.= go' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /lib/guile/2.0/ccache/sxml/fold.go' ~> `/tmp/guix-tests/store/0sgpsn768nn73= wblh4iw6wl3bcsfn7dd-union-test-all-dirs/lib/guile/2.0/ccache/sxml/fold.go' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /lib/guile/2.0/ccache/sxml/xpath.go' ~> `/tmp/guix-tests/store/0sgpsn768nn7= 3wblh4iw6wl3bcsfn7dd-union-test-all-dirs/lib/guile/2.0/ccache/sxml/xpath.go' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /lib/guile/2.0/ccache/sxml/transform.go' ~> `/tmp/guix-tests/store/0sgpsn76= 8nn73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/lib/guile/2.0/ccache/sxml/tran= sform.go' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /lib/guile/2.0/ccache/sxml/ssax.go' ~> `/tmp/guix-tests/store/0sgpsn768nn73= wblh4iw6wl3bcsfn7dd-union-test-all-dirs/lib/guile/2.0/ccache/sxml/ssax.go' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /lib/guile/2.0/ccache/sxml/ssax/input-parse.go' ~> `/tmp/guix-tests/store/0= sgpsn768nn73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/lib/guile/2.0/ccache/sx= ml/ssax/input-parse.go' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /lib/guile/2.0/ccache/sxml/match.go' ~> `/tmp/guix-tests/store/0sgpsn768nn7= 3wblh4iw6wl3bcsfn7dd-union-test-all-dirs/lib/guile/2.0/ccache/sxml/match.go' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /lib/guile/2.0/ccache/ice-9/q.go' ~> `/tmp/guix-tests/store/0sgpsn768nn73wb= lh4iw6wl3bcsfn7dd-union-test-all-dirs/lib/guile/2.0/ccache/ice-9/q.go' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /lib/guile/2.0/ccache/ice-9/receive.go' ~> `/tmp/guix-tests/store/0sgpsn768= nn73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/lib/guile/2.0/ccache/ice-9/rece= ive.go' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /lib/guile/2.0/ccache/ice-9/boot-9.go' ~> `/tmp/guix-tests/store/0sgpsn768n= n73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/lib/guile/2.0/ccache/ice-9/boot-= 9.go' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /lib/guile/2.0/ccache/ice-9/rw.go' ~> `/tmp/guix-tests/store/0sgpsn768nn73w= blh4iw6wl3bcsfn7dd-union-test-all-dirs/lib/guile/2.0/ccache/ice-9/rw.go' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /lib/guile/2.0/ccache/ice-9/ls.go' ~> `/tmp/guix-tests/store/0sgpsn768nn73w= blh4iw6wl3bcsfn7dd-union-test-all-dirs/lib/guile/2.0/ccache/ice-9/ls.go' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /lib/guile/2.0/ccache/ice-9/networking.go' ~> `/tmp/guix-tests/store/0sgpsn= 768nn73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/lib/guile/2.0/ccache/ice-9/n= etworking.go' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /lib/guile/2.0/ccache/ice-9/save-stack.go' ~> `/tmp/guix-tests/store/0sgpsn= 768nn73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/lib/guile/2.0/ccache/ice-9/s= ave-stack.go' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /lib/guile/2.0/ccache/ice-9/channel.go' ~> `/tmp/guix-tests/store/0sgpsn768= nn73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/lib/guile/2.0/ccache/ice-9/chan= nel.go' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /lib/guile/2.0/ccache/ice-9/mapping.go' ~> `/tmp/guix-tests/store/0sgpsn768= nn73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/lib/guile/2.0/ccache/ice-9/mapp= ing.go' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /lib/guile/2.0/ccache/ice-9/string-fun.go' ~> `/tmp/guix-tests/store/0sgpsn= 768nn73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/lib/guile/2.0/ccache/ice-9/s= tring-fun.go' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /lib/guile/2.0/ccache/ice-9/control.go' ~> `/tmp/guix-tests/store/0sgpsn768= nn73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/lib/guile/2.0/ccache/ice-9/cont= rol.go' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /lib/guile/2.0/ccache/ice-9/poll.go' ~> `/tmp/guix-tests/store/0sgpsn768nn7= 3wblh4iw6wl3bcsfn7dd-union-test-all-dirs/lib/guile/2.0/ccache/ice-9/poll.go' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /lib/guile/2.0/ccache/ice-9/streams.go' ~> `/tmp/guix-tests/store/0sgpsn768= nn73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/lib/guile/2.0/ccache/ice-9/stre= ams.go' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /lib/guile/2.0/ccache/ice-9/eval-string.go' ~> `/tmp/guix-tests/store/0sgps= n768nn73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/lib/guile/2.0/ccache/ice-9/= eval-string.go' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /lib/guile/2.0/ccache/ice-9/psyntax-pp.go' ~> `/tmp/guix-tests/store/0sgpsn= 768nn73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/lib/guile/2.0/ccache/ice-9/p= syntax-pp.go' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /lib/guile/2.0/ccache/ice-9/eval.go' ~> `/tmp/guix-tests/store/0sgpsn768nn7= 3wblh4iw6wl3bcsfn7dd-union-test-all-dirs/lib/guile/2.0/ccache/ice-9/eval.go' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /lib/guile/2.0/ccache/ice-9/match.go' ~> `/tmp/guix-tests/store/0sgpsn768nn= 73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/lib/guile/2.0/ccache/ice-9/match.= go' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /lib/guile/2.0/ccache/ice-9/documentation.go' ~> `/tmp/guix-tests/store/0sg= psn768nn73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/lib/guile/2.0/ccache/ice-= 9/documentation.go' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /lib/guile/2.0/ccache/ice-9/weak-vector.go' ~> `/tmp/guix-tests/store/0sgps= n768nn73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/lib/guile/2.0/ccache/ice-9/= weak-vector.go' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /lib/guile/2.0/ccache/ice-9/debug.go' ~> `/tmp/guix-tests/store/0sgpsn768nn= 73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/lib/guile/2.0/ccache/ice-9/debug.= go' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /lib/guile/2.0/ccache/ice-9/occam-channel.go' ~> `/tmp/guix-tests/store/0sg= psn768nn73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/lib/guile/2.0/ccache/ice-= 9/occam-channel.go' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /lib/guile/2.0/ccache/ice-9/posix.go' ~> `/tmp/guix-tests/store/0sgpsn768nn= 73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/lib/guile/2.0/ccache/ice-9/posix.= go' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /lib/guile/2.0/ccache/ice-9/common-list.go' ~> `/tmp/guix-tests/store/0sgps= n768nn73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/lib/guile/2.0/ccache/ice-9/= common-list.go' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /lib/guile/2.0/ccache/ice-9/null.go' ~> `/tmp/guix-tests/store/0sgpsn768nn7= 3wblh4iw6wl3bcsfn7dd-union-test-all-dirs/lib/guile/2.0/ccache/ice-9/null.go' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /lib/guile/2.0/ccache/ice-9/top-repl.go' ~> `/tmp/guix-tests/store/0sgpsn76= 8nn73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/lib/guile/2.0/ccache/ice-9/top= -repl.go' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /lib/guile/2.0/ccache/ice-9/r5rs.go' ~> `/tmp/guix-tests/store/0sgpsn768nn7= 3wblh4iw6wl3bcsfn7dd-union-test-all-dirs/lib/guile/2.0/ccache/ice-9/r5rs.go' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /lib/guile/2.0/ccache/ice-9/runq.go' ~> `/tmp/guix-tests/store/0sgpsn768nn7= 3wblh4iw6wl3bcsfn7dd-union-test-all-dirs/lib/guile/2.0/ccache/ice-9/runq.go' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /lib/guile/2.0/ccache/ice-9/local-eval.go' ~> `/tmp/guix-tests/store/0sgpsn= 768nn73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/lib/guile/2.0/ccache/ice-9/l= ocal-eval.go' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /lib/guile/2.0/ccache/ice-9/ftw.go' ~> `/tmp/guix-tests/store/0sgpsn768nn73= wblh4iw6wl3bcsfn7dd-union-test-all-dirs/lib/guile/2.0/ccache/ice-9/ftw.go' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /lib/guile/2.0/ccache/ice-9/serialize.go' ~> `/tmp/guix-tests/store/0sgpsn7= 68nn73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/lib/guile/2.0/ccache/ice-9/se= rialize.go' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /lib/guile/2.0/ccache/ice-9/slib.go' ~> `/tmp/guix-tests/store/0sgpsn768nn7= 3wblh4iw6wl3bcsfn7dd-union-test-all-dirs/lib/guile/2.0/ccache/ice-9/slib.go' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /lib/guile/2.0/ccache/ice-9/pretty-print.go' ~> `/tmp/guix-tests/store/0sgp= sn768nn73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/lib/guile/2.0/ccache/ice-9= /pretty-print.go' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /lib/guile/2.0/ccache/ice-9/lineio.go' ~> `/tmp/guix-tests/store/0sgpsn768n= n73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/lib/guile/2.0/ccache/ice-9/linei= o.go' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /lib/guile/2.0/ccache/ice-9/history.go' ~> `/tmp/guix-tests/store/0sgpsn768= nn73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/lib/guile/2.0/ccache/ice-9/hist= ory.go' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /lib/guile/2.0/ccache/ice-9/readline.go' ~> `/tmp/guix-tests/store/0sgpsn76= 8nn73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/lib/guile/2.0/ccache/ice-9/rea= dline.go' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /lib/guile/2.0/ccache/ice-9/threads.go' ~> `/tmp/guix-tests/store/0sgpsn768= nn73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/lib/guile/2.0/ccache/ice-9/thre= ads.go' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /lib/guile/2.0/ccache/ice-9/calling.go' ~> `/tmp/guix-tests/store/0sgpsn768= nn73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/lib/guile/2.0/ccache/ice-9/call= ing.go' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /lib/guile/2.0/ccache/ice-9/optargs.go' ~> `/tmp/guix-tests/store/0sgpsn768= nn73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/lib/guile/2.0/ccache/ice-9/opta= rgs.go' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /lib/guile/2.0/ccache/ice-9/gap-buffer.go' ~> `/tmp/guix-tests/store/0sgpsn= 768nn73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/lib/guile/2.0/ccache/ice-9/g= ap-buffer.go' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /lib/guile/2.0/ccache/ice-9/deprecated.go' ~> `/tmp/guix-tests/store/0sgpsn= 768nn73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/lib/guile/2.0/ccache/ice-9/d= eprecated.go' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /lib/guile/2.0/ccache/ice-9/regex.go' ~> `/tmp/guix-tests/store/0sgpsn768nn= 73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/lib/guile/2.0/ccache/ice-9/regex.= go' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /lib/guile/2.0/ccache/ice-9/time.go' ~> `/tmp/guix-tests/store/0sgpsn768nn7= 3wblh4iw6wl3bcsfn7dd-union-test-all-dirs/lib/guile/2.0/ccache/ice-9/time.go' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /lib/guile/2.0/ccache/ice-9/binary-ports.go' ~> `/tmp/guix-tests/store/0sgp= sn768nn73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/lib/guile/2.0/ccache/ice-9= /binary-ports.go' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /lib/guile/2.0/ccache/ice-9/poe.go' ~> `/tmp/guix-tests/store/0sgpsn768nn73= wblh4iw6wl3bcsfn7dd-union-test-all-dirs/lib/guile/2.0/ccache/ice-9/poe.go' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /lib/guile/2.0/ccache/ice-9/and-let-star.go' ~> `/tmp/guix-tests/store/0sgp= sn768nn73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/lib/guile/2.0/ccache/ice-9= /and-let-star.go' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /lib/guile/2.0/ccache/ice-9/futures.go' ~> `/tmp/guix-tests/store/0sgpsn768= nn73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/lib/guile/2.0/ccache/ice-9/futu= res.go' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /lib/guile/2.0/ccache/ice-9/popen.go' ~> `/tmp/guix-tests/store/0sgpsn768nn= 73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/lib/guile/2.0/ccache/ice-9/popen.= go' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /lib/guile/2.0/ccache/ice-9/curried-definitions.go' ~> `/tmp/guix-tests/sto= re/0sgpsn768nn73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/lib/guile/2.0/ccach= e/ice-9/curried-definitions.go' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /lib/guile/2.0/ccache/ice-9/vlist.go' ~> `/tmp/guix-tests/store/0sgpsn768nn= 73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/lib/guile/2.0/ccache/ice-9/vlist.= go' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /lib/guile/2.0/ccache/ice-9/safe-r5rs.go' ~> `/tmp/guix-tests/store/0sgpsn7= 68nn73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/lib/guile/2.0/ccache/ice-9/sa= fe-r5rs.go' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /lib/guile/2.0/ccache/ice-9/scm-style-repl.go' ~> `/tmp/guix-tests/store/0s= gpsn768nn73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/lib/guile/2.0/ccache/ice= -9/scm-style-repl.go' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /lib/guile/2.0/ccache/ice-9/stack-catch.go' ~> `/tmp/guix-tests/store/0sgps= n768nn73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/lib/guile/2.0/ccache/ice-9/= stack-catch.go' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /lib/guile/2.0/ccache/ice-9/session.go' ~> `/tmp/guix-tests/store/0sgpsn768= nn73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/lib/guile/2.0/ccache/ice-9/sess= ion.go' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /lib/guile/2.0/ccache/ice-9/hcons.go' ~> `/tmp/guix-tests/store/0sgpsn768nn= 73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/lib/guile/2.0/ccache/ice-9/hcons.= go' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /lib/guile/2.0/ccache/ice-9/buffered-input.go' ~> `/tmp/guix-tests/store/0s= gpsn768nn73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/lib/guile/2.0/ccache/ice= -9/buffered-input.go' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /lib/guile/2.0/ccache/ice-9/list.go' ~> `/tmp/guix-tests/store/0sgpsn768nn7= 3wblh4iw6wl3bcsfn7dd-union-test-all-dirs/lib/guile/2.0/ccache/ice-9/list.go' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /lib/guile/2.0/ccache/ice-9/getopt-long.go' ~> `/tmp/guix-tests/store/0sgps= n768nn73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/lib/guile/2.0/ccache/ice-9/= getopt-long.go' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /lib/guile/2.0/ccache/ice-9/syncase.go' ~> `/tmp/guix-tests/store/0sgpsn768= nn73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/lib/guile/2.0/ccache/ice-9/sync= ase.go' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /lib/guile/2.0/ccache/ice-9/i18n.go' ~> `/tmp/guix-tests/store/0sgpsn768nn7= 3wblh4iw6wl3bcsfn7dd-union-test-all-dirs/lib/guile/2.0/ccache/ice-9/i18n.go' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /lib/guile/2.0/ccache/ice-9/format.go' ~> `/tmp/guix-tests/store/0sgpsn768n= n73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/lib/guile/2.0/ccache/ice-9/forma= t.go' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /lib/guile/2.0/ccache/ice-9/expect.go' ~> `/tmp/guix-tests/store/0sgpsn768n= n73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/lib/guile/2.0/ccache/ice-9/expec= t.go' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /lib/guile/2.0/ccache/ice-9/rdelim.go' ~> `/tmp/guix-tests/store/0sgpsn768n= n73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/lib/guile/2.0/ccache/ice-9/rdeli= m.go' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /lib/guile/2.0/ccache/ice-9/r4rs.go' ~> `/tmp/guix-tests/store/0sgpsn768nn7= 3wblh4iw6wl3bcsfn7dd-union-test-all-dirs/lib/guile/2.0/ccache/ice-9/r4rs.go' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /lib/guile/2.0/ccache/ice-9/iconv.go' ~> `/tmp/guix-tests/store/0sgpsn768nn= 73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/lib/guile/2.0/ccache/ice-9/iconv.= go' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /lib/guile/2.0/ccache/ice-9/command-line.go' ~> `/tmp/guix-tests/store/0sgp= sn768nn73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/lib/guile/2.0/ccache/ice-9= /command-line.go' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /lib/guile/2.0/ccache/ice-9/safe.go' ~> `/tmp/guix-tests/store/0sgpsn768nn7= 3wblh4iw6wl3bcsfn7dd-union-test-all-dirs/lib/guile/2.0/ccache/ice-9/safe.go' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /lib/guile/2.0/ccache/language/glil.go' ~> `/tmp/guix-tests/store/0sgpsn768= nn73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/lib/guile/2.0/ccache/language/g= lil.go' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /lib/guile/2.0/ccache/language/tree-il.go' ~> `/tmp/guix-tests/store/0sgpsn= 768nn73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/lib/guile/2.0/ccache/languag= e/tree-il.go' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /lib/guile/2.0/ccache/language/value/spec.go' ~> `/tmp/guix-tests/store/0sg= psn768nn73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/lib/guile/2.0/ccache/lang= uage/value/spec.go' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /lib/guile/2.0/ccache/language/assembly.go' ~> `/tmp/guix-tests/store/0sgps= n768nn73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/lib/guile/2.0/ccache/langua= ge/assembly.go' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /lib/guile/2.0/ccache/language/assembly/disassemble.go' ~> `/tmp/guix-tests= /store/0sgpsn768nn73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/lib/guile/2.0/c= cache/language/assembly/disassemble.go' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /lib/guile/2.0/ccache/language/assembly/spec.go' ~> `/tmp/guix-tests/store/= 0sgpsn768nn73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/lib/guile/2.0/ccache/l= anguage/assembly/spec.go' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /lib/guile/2.0/ccache/language/assembly/compile-bytecode.go' ~> `/tmp/guix-= tests/store/0sgpsn768nn73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/lib/guile/= 2.0/ccache/language/assembly/compile-bytecode.go' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /lib/guile/2.0/ccache/language/assembly/decompile-bytecode.go' ~> `/tmp/gui= x-tests/store/0sgpsn768nn73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/lib/guil= e/2.0/ccache/language/assembly/decompile-bytecode.go' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /lib/guile/2.0/ccache/language/scheme/decompile-tree-il.go' ~> `/tmp/guix-t= ests/store/0sgpsn768nn73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/lib/guile/2= .0/ccache/language/scheme/decompile-tree-il.go' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /lib/guile/2.0/ccache/language/scheme/compile-tree-il.go' ~> `/tmp/guix-tes= ts/store/0sgpsn768nn73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/lib/guile/2.0= /ccache/language/scheme/compile-tree-il.go' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /lib/guile/2.0/ccache/language/scheme/spec.go' ~> `/tmp/guix-tests/store/0s= gpsn768nn73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/lib/guile/2.0/ccache/lan= guage/scheme/spec.go' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /lib/guile/2.0/ccache/language/objcode/spec.go' ~> `/tmp/guix-tests/store/0= sgpsn768nn73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/lib/guile/2.0/ccache/la= nguage/objcode/spec.go' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /lib/guile/2.0/ccache/language/tree-il/effects.go' ~> `/tmp/guix-tests/stor= e/0sgpsn768nn73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/lib/guile/2.0/ccache= /language/tree-il/effects.go' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /lib/guile/2.0/ccache/language/tree-il/fix-letrec.go' ~> `/tmp/guix-tests/s= tore/0sgpsn768nn73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/lib/guile/2.0/cca= che/language/tree-il/fix-letrec.go' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /lib/guile/2.0/ccache/language/tree-il/inline.go' ~> `/tmp/guix-tests/store= /0sgpsn768nn73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/lib/guile/2.0/ccache/= language/tree-il/inline.go' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /lib/guile/2.0/ccache/language/tree-il/canonicalize.go' ~> `/tmp/guix-tests= /store/0sgpsn768nn73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/lib/guile/2.0/c= cache/language/tree-il/canonicalize.go' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /lib/guile/2.0/ccache/language/tree-il/compile-glil.go' ~> `/tmp/guix-tests= /store/0sgpsn768nn73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/lib/guile/2.0/c= cache/language/tree-il/compile-glil.go' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /lib/guile/2.0/ccache/language/tree-il/analyze.go' ~> `/tmp/guix-tests/stor= e/0sgpsn768nn73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/lib/guile/2.0/ccache= /language/tree-il/analyze.go' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /lib/guile/2.0/ccache/language/tree-il/cse.go' ~> `/tmp/guix-tests/store/0s= gpsn768nn73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/lib/guile/2.0/ccache/lan= guage/tree-il/cse.go' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /lib/guile/2.0/ccache/language/tree-il/peval.go' ~> `/tmp/guix-tests/store/= 0sgpsn768nn73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/lib/guile/2.0/ccache/l= anguage/tree-il/peval.go' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /lib/guile/2.0/ccache/language/tree-il/optimize.go' ~> `/tmp/guix-tests/sto= re/0sgpsn768nn73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/lib/guile/2.0/ccach= e/language/tree-il/optimize.go' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /lib/guile/2.0/ccache/language/tree-il/primitives.go' ~> `/tmp/guix-tests/s= tore/0sgpsn768nn73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/lib/guile/2.0/cca= che/language/tree-il/primitives.go' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /lib/guile/2.0/ccache/language/tree-il/debug.go' ~> `/tmp/guix-tests/store/= 0sgpsn768nn73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/lib/guile/2.0/ccache/l= anguage/tree-il/debug.go' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /lib/guile/2.0/ccache/language/tree-il/spec.go' ~> `/tmp/guix-tests/store/0= sgpsn768nn73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/lib/guile/2.0/ccache/la= nguage/tree-il/spec.go' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /lib/guile/2.0/ccache/language/elisp/runtime/value-slot.go' ~> `/tmp/guix-t= ests/store/0sgpsn768nn73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/lib/guile/2= .0/ccache/language/elisp/runtime/value-slot.go' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /lib/guile/2.0/ccache/language/elisp/runtime/subrs.go' ~> `/tmp/guix-tests/= store/0sgpsn768nn73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/lib/guile/2.0/cc= ache/language/elisp/runtime/subrs.go' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /lib/guile/2.0/ccache/language/elisp/runtime/function-slot.go' ~> `/tmp/gui= x-tests/store/0sgpsn768nn73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/lib/guil= e/2.0/ccache/language/elisp/runtime/function-slot.go' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /lib/guile/2.0/ccache/language/elisp/runtime/macros.go' ~> `/tmp/guix-tests= /store/0sgpsn768nn73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/lib/guile/2.0/c= cache/language/elisp/runtime/macros.go' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /lib/guile/2.0/ccache/language/elisp/lexer.go' ~> `/tmp/guix-tests/store/0s= gpsn768nn73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/lib/guile/2.0/ccache/lan= guage/elisp/lexer.go' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /lib/guile/2.0/ccache/language/elisp/parser.go' ~> `/tmp/guix-tests/store/0= sgpsn768nn73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/lib/guile/2.0/ccache/la= nguage/elisp/parser.go' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /lib/guile/2.0/ccache/language/elisp/bindings.go' ~> `/tmp/guix-tests/store= /0sgpsn768nn73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/lib/guile/2.0/ccache/= language/elisp/bindings.go' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /lib/guile/2.0/ccache/language/elisp/compile-tree-il.go' ~> `/tmp/guix-test= s/store/0sgpsn768nn73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/lib/guile/2.0/= ccache/language/elisp/compile-tree-il.go' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /lib/guile/2.0/ccache/language/elisp/spec.go' ~> `/tmp/guix-tests/store/0sg= psn768nn73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/lib/guile/2.0/ccache/lang= uage/elisp/spec.go' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /lib/guile/2.0/ccache/language/elisp/runtime.go' ~> `/tmp/guix-tests/store/= 0sgpsn768nn73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/lib/guile/2.0/ccache/l= anguage/elisp/runtime.go' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /lib/guile/2.0/ccache/language/glil/compile-assembly.go' ~> `/tmp/guix-test= s/store/0sgpsn768nn73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/lib/guile/2.0/= ccache/language/glil/compile-assembly.go' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /lib/guile/2.0/ccache/language/glil/spec.go' ~> `/tmp/guix-tests/store/0sgp= sn768nn73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/lib/guile/2.0/ccache/langu= age/glil/spec.go' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /lib/guile/2.0/ccache/language/ecmascript/function.go' ~> `/tmp/guix-tests/= store/0sgpsn768nn73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/lib/guile/2.0/cc= ache/language/ecmascript/function.go' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /lib/guile/2.0/ccache/language/ecmascript/array.go' ~> `/tmp/guix-tests/sto= re/0sgpsn768nn73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/lib/guile/2.0/ccach= e/language/ecmascript/array.go' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /lib/guile/2.0/ccache/language/ecmascript/tokenize.go' ~> `/tmp/guix-tests/= store/0sgpsn768nn73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/lib/guile/2.0/cc= ache/language/ecmascript/tokenize.go' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /lib/guile/2.0/ccache/language/ecmascript/impl.go' ~> `/tmp/guix-tests/stor= e/0sgpsn768nn73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/lib/guile/2.0/ccache= /language/ecmascript/impl.go' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /lib/guile/2.0/ccache/language/ecmascript/compile-tree-il.go' ~> `/tmp/guix= -tests/store/0sgpsn768nn73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/lib/guile= /2.0/ccache/language/ecmascript/compile-tree-il.go' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /lib/guile/2.0/ccache/language/ecmascript/spec.go' ~> `/tmp/guix-tests/stor= e/0sgpsn768nn73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/lib/guile/2.0/ccache= /language/ecmascript/spec.go' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /lib/guile/2.0/ccache/language/ecmascript/parse.go' ~> `/tmp/guix-tests/sto= re/0sgpsn768nn73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/lib/guile/2.0/ccach= e/language/ecmascript/parse.go' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /lib/guile/2.0/ccache/language/ecmascript/base.go' ~> `/tmp/guix-tests/stor= e/0sgpsn768nn73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/lib/guile/2.0/ccache= /language/ecmascript/base.go' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /lib/guile/2.0/ccache/language/bytecode/spec.go' ~> `/tmp/guix-tests/store/= 0sgpsn768nn73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/lib/guile/2.0/ccache/l= anguage/bytecode/spec.go' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /lib/guile/2.0/ccache/language/brainfuck/compile-scheme.go' ~> `/tmp/guix-t= ests/store/0sgpsn768nn73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/lib/guile/2= .0/ccache/language/brainfuck/compile-scheme.go' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /lib/guile/2.0/ccache/language/brainfuck/compile-tree-il.go' ~> `/tmp/guix-= tests/store/0sgpsn768nn73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/lib/guile/= 2.0/ccache/language/brainfuck/compile-tree-il.go' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /lib/guile/2.0/ccache/language/brainfuck/spec.go' ~> `/tmp/guix-tests/store= /0sgpsn768nn73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/lib/guile/2.0/ccache/= language/brainfuck/spec.go' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /lib/guile/2.0/ccache/language/brainfuck/parse.go' ~> `/tmp/guix-tests/stor= e/0sgpsn768nn73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/lib/guile/2.0/ccache= /language/brainfuck/parse.go' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /lib/guile/2.0/ccache/statprof.go' ~> `/tmp/guix-tests/store/0sgpsn768nn73w= blh4iw6wl3bcsfn7dd-union-test-all-dirs/lib/guile/2.0/ccache/statprof.go' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /lib/guile/2.0/ccache/scripts/summarize-guile-TODO.go' ~> `/tmp/guix-tests/= store/0sgpsn768nn73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/lib/guile/2.0/cc= ache/scripts/summarize-guile-TODO.go' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /lib/guile/2.0/ccache/scripts/snarf-check-and-output-texi.go' ~> `/tmp/guix= -tests/store/0sgpsn768nn73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/lib/guile= /2.0/ccache/scripts/snarf-check-and-output-texi.go' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /lib/guile/2.0/ccache/scripts/scan-api.go' ~> `/tmp/guix-tests/store/0sgpsn= 768nn73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/lib/guile/2.0/ccache/scripts= /scan-api.go' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /lib/guile/2.0/ccache/scripts/doc-snarf.go' ~> `/tmp/guix-tests/store/0sgps= n768nn73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/lib/guile/2.0/ccache/script= s/doc-snarf.go' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /lib/guile/2.0/ccache/scripts/snarf-guile-m4-docs.go' ~> `/tmp/guix-tests/s= tore/0sgpsn768nn73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/lib/guile/2.0/cca= che/scripts/snarf-guile-m4-docs.go' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /lib/guile/2.0/ccache/scripts/compile.go' ~> `/tmp/guix-tests/store/0sgpsn7= 68nn73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/lib/guile/2.0/ccache/scripts/= compile.go' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /lib/guile/2.0/ccache/scripts/read-scheme-source.go' ~> `/tmp/guix-tests/st= ore/0sgpsn768nn73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/lib/guile/2.0/ccac= he/scripts/read-scheme-source.go' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /lib/guile/2.0/ccache/scripts/disassemble.go' ~> `/tmp/guix-tests/store/0sg= psn768nn73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/lib/guile/2.0/ccache/scri= pts/disassemble.go' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /lib/guile/2.0/ccache/scripts/lint.go' ~> `/tmp/guix-tests/store/0sgpsn768n= n73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/lib/guile/2.0/ccache/scripts/lin= t.go' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /lib/guile/2.0/ccache/scripts/api-diff.go' ~> `/tmp/guix-tests/store/0sgpsn= 768nn73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/lib/guile/2.0/ccache/scripts= /api-diff.go' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /lib/guile/2.0/ccache/scripts/list.go' ~> `/tmp/guix-tests/store/0sgpsn768n= n73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/lib/guile/2.0/ccache/scripts/lis= t.go' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /lib/guile/2.0/ccache/scripts/help.go' ~> `/tmp/guix-tests/store/0sgpsn768n= n73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/lib/guile/2.0/ccache/scripts/hel= p.go' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /lib/guile/2.0/ccache/scripts/use2dot.go' ~> `/tmp/guix-tests/store/0sgpsn7= 68nn73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/lib/guile/2.0/ccache/scripts/= use2dot.go' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /lib/guile/2.0/ccache/scripts/display-commentary.go' ~> `/tmp/guix-tests/st= ore/0sgpsn768nn73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/lib/guile/2.0/ccac= he/scripts/display-commentary.go' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /lib/guile/2.0/ccache/scripts/autofrisk.go' ~> `/tmp/guix-tests/store/0sgps= n768nn73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/lib/guile/2.0/ccache/script= s/autofrisk.go' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /lib/guile/2.0/ccache/scripts/punify.go' ~> `/tmp/guix-tests/store/0sgpsn76= 8nn73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/lib/guile/2.0/ccache/scripts/p= unify.go' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /lib/guile/2.0/ccache/scripts/frisk.go' ~> `/tmp/guix-tests/store/0sgpsn768= nn73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/lib/guile/2.0/ccache/scripts/fr= isk.go' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /lib/guile/2.0/ccache/scripts/read-text-outline.go' ~> `/tmp/guix-tests/sto= re/0sgpsn768nn73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/lib/guile/2.0/ccach= e/scripts/read-text-outline.go' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /lib/guile/2.0/ccache/scripts/read-rfc822.go' ~> `/tmp/guix-tests/store/0sg= psn768nn73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/lib/guile/2.0/ccache/scri= pts/read-rfc822.go' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /lib/guile/2.0/ccache/scripts/generate-autoload.go' ~> `/tmp/guix-tests/sto= re/0sgpsn768nn73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/lib/guile/2.0/ccach= e/scripts/generate-autoload.go' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /lib/guile/2.0/ccache/srfi/srfi-45.go' ~> `/tmp/guix-tests/store/0sgpsn768n= n73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/lib/guile/2.0/ccache/srfi/srfi-4= 5.go' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /lib/guile/2.0/ccache/srfi/srfi-60.go' ~> `/tmp/guix-tests/store/0sgpsn768n= n73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/lib/guile/2.0/ccache/srfi/srfi-6= 0.go' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /lib/guile/2.0/ccache/srfi/srfi-35.go' ~> `/tmp/guix-tests/store/0sgpsn768n= n73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/lib/guile/2.0/ccache/srfi/srfi-3= 5.go' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /lib/guile/2.0/ccache/srfi/srfi-8.go' ~> `/tmp/guix-tests/store/0sgpsn768nn= 73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/lib/guile/2.0/ccache/srfi/srfi-8.= go' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /lib/guile/2.0/ccache/srfi/srfi-38.go' ~> `/tmp/guix-tests/store/0sgpsn768n= n73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/lib/guile/2.0/ccache/srfi/srfi-3= 8.go' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /lib/guile/2.0/ccache/srfi/srfi-4/gnu.go' ~> `/tmp/guix-tests/store/0sgpsn7= 68nn73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/lib/guile/2.0/ccache/srfi/srf= i-4/gnu.go' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /lib/guile/2.0/ccache/srfi/srfi-10.go' ~> `/tmp/guix-tests/store/0sgpsn768n= n73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/lib/guile/2.0/ccache/srfi/srfi-1= 0.go' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /lib/guile/2.0/ccache/srfi/srfi-18.go' ~> `/tmp/guix-tests/store/0sgpsn768n= n73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/lib/guile/2.0/ccache/srfi/srfi-1= 8.go' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /lib/guile/2.0/ccache/srfi/srfi-9/gnu.go' ~> `/tmp/guix-tests/store/0sgpsn7= 68nn73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/lib/guile/2.0/ccache/srfi/srf= i-9/gnu.go' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /lib/guile/2.0/ccache/srfi/srfi-6.go' ~> `/tmp/guix-tests/store/0sgpsn768nn= 73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/lib/guile/2.0/ccache/srfi/srfi-6.= go' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /lib/guile/2.0/ccache/srfi/srfi-13.go' ~> `/tmp/guix-tests/store/0sgpsn768n= n73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/lib/guile/2.0/ccache/srfi/srfi-1= 3.go' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /lib/guile/2.0/ccache/srfi/srfi-69.go' ~> `/tmp/guix-tests/store/0sgpsn768n= n73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/lib/guile/2.0/ccache/srfi/srfi-6= 9.go' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /lib/guile/2.0/ccache/srfi/srfi-1.go' ~> `/tmp/guix-tests/store/0sgpsn768nn= 73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/lib/guile/2.0/ccache/srfi/srfi-1.= go' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /lib/guile/2.0/ccache/srfi/srfi-9.go' ~> `/tmp/guix-tests/store/0sgpsn768nn= 73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/lib/guile/2.0/ccache/srfi/srfi-9.= go' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /lib/guile/2.0/ccache/srfi/srfi-26.go' ~> `/tmp/guix-tests/store/0sgpsn768n= n73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/lib/guile/2.0/ccache/srfi/srfi-2= 6.go' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /lib/guile/2.0/ccache/srfi/srfi-41.go' ~> `/tmp/guix-tests/store/0sgpsn768n= n73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/lib/guile/2.0/ccache/srfi/srfi-4= 1.go' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /lib/guile/2.0/ccache/srfi/srfi-16.go' ~> `/tmp/guix-tests/store/0sgpsn768n= n73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/lib/guile/2.0/ccache/srfi/srfi-1= 6.go' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /lib/guile/2.0/ccache/srfi/srfi-31.go' ~> `/tmp/guix-tests/store/0sgpsn768n= n73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/lib/guile/2.0/ccache/srfi/srfi-3= 1.go' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /lib/guile/2.0/ccache/srfi/srfi-39.go' ~> `/tmp/guix-tests/store/0sgpsn768n= n73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/lib/guile/2.0/ccache/srfi/srfi-3= 9.go' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /lib/guile/2.0/ccache/srfi/srfi-4.go' ~> `/tmp/guix-tests/store/0sgpsn768nn= 73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/lib/guile/2.0/ccache/srfi/srfi-4.= go' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /lib/guile/2.0/ccache/srfi/srfi-11.go' ~> `/tmp/guix-tests/store/0sgpsn768n= n73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/lib/guile/2.0/ccache/srfi/srfi-1= 1.go' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /lib/guile/2.0/ccache/srfi/srfi-67.go' ~> `/tmp/guix-tests/store/0sgpsn768n= n73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/lib/guile/2.0/ccache/srfi/srfi-6= 7.go' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /lib/guile/2.0/ccache/srfi/srfi-19.go' ~> `/tmp/guix-tests/store/0sgpsn768n= n73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/lib/guile/2.0/ccache/srfi/srfi-1= 9.go' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /lib/guile/2.0/ccache/srfi/srfi-34.go' ~> `/tmp/guix-tests/store/0sgpsn768n= n73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/lib/guile/2.0/ccache/srfi/srfi-3= 4.go' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /lib/guile/2.0/ccache/srfi/srfi-14.go' ~> `/tmp/guix-tests/store/0sgpsn768n= n73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/lib/guile/2.0/ccache/srfi/srfi-1= 4.go' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /lib/guile/2.0/ccache/srfi/srfi-37.go' ~> `/tmp/guix-tests/store/0sgpsn768n= n73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/lib/guile/2.0/ccache/srfi/srfi-3= 7.go' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /lib/guile/2.0/ccache/srfi/srfi-2.go' ~> `/tmp/guix-tests/store/0sgpsn768nn= 73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/lib/guile/2.0/ccache/srfi/srfi-2.= go' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /lib/guile/2.0/ccache/srfi/srfi-27.go' ~> `/tmp/guix-tests/store/0sgpsn768n= n73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/lib/guile/2.0/ccache/srfi/srfi-2= 7.go' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /lib/guile/2.0/ccache/srfi/srfi-42.go' ~> `/tmp/guix-tests/store/0sgpsn768n= n73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/lib/guile/2.0/ccache/srfi/srfi-4= 2.go' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /lib/guile/2.0/ccache/srfi/srfi-98.go' ~> `/tmp/guix-tests/store/0sgpsn768n= n73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/lib/guile/2.0/ccache/srfi/srfi-9= 8.go' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /lib/guile/2.0/ccache/srfi/srfi-17.go' ~> `/tmp/guix-tests/store/0sgpsn768n= n73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/lib/guile/2.0/ccache/srfi/srfi-1= 7.go' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /lib/guile/2.0/ccache/srfi/srfi-88.go' ~> `/tmp/guix-tests/store/0sgpsn768n= n73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/lib/guile/2.0/ccache/srfi/srfi-8= 8.go' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /lib/guile/2.0/ccache/rnrs/mutable-pairs.go' ~> `/tmp/guix-tests/store/0sgp= sn768nn73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/lib/guile/2.0/ccache/rnrs/= mutable-pairs.go' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /lib/guile/2.0/ccache/rnrs/conditions.go' ~> `/tmp/guix-tests/store/0sgpsn7= 68nn73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/lib/guile/2.0/ccache/rnrs/con= ditions.go' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /lib/guile/2.0/ccache/rnrs/records/procedural.go' ~> `/tmp/guix-tests/store= /0sgpsn768nn73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/lib/guile/2.0/ccache/= rnrs/records/procedural.go' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /lib/guile/2.0/ccache/rnrs/records/inspection.go' ~> `/tmp/guix-tests/store= /0sgpsn768nn73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/lib/guile/2.0/ccache/= rnrs/records/inspection.go' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /lib/guile/2.0/ccache/rnrs/records/syntactic.go' ~> `/tmp/guix-tests/store/= 0sgpsn768nn73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/lib/guile/2.0/ccache/r= nrs/records/syntactic.go' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /lib/guile/2.0/ccache/rnrs/r5rs.go' ~> `/tmp/guix-tests/store/0sgpsn768nn73= wblh4iw6wl3bcsfn7dd-union-test-all-dirs/lib/guile/2.0/ccache/rnrs/r5rs.go' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /lib/guile/2.0/ccache/rnrs/exceptions.go' ~> `/tmp/guix-tests/store/0sgpsn7= 68nn73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/lib/guile/2.0/ccache/rnrs/exc= eptions.go' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /lib/guile/2.0/ccache/rnrs/control.go' ~> `/tmp/guix-tests/store/0sgpsn768n= n73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/lib/guile/2.0/ccache/rnrs/contro= l.go' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /lib/guile/2.0/ccache/rnrs/enums.go' ~> `/tmp/guix-tests/store/0sgpsn768nn7= 3wblh4iw6wl3bcsfn7dd-union-test-all-dirs/lib/guile/2.0/ccache/rnrs/enums.go' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /lib/guile/2.0/ccache/rnrs/sorting.go' ~> `/tmp/guix-tests/store/0sgpsn768n= n73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/lib/guile/2.0/ccache/rnrs/sortin= g.go' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /lib/guile/2.0/ccache/rnrs/hashtables.go' ~> `/tmp/guix-tests/store/0sgpsn7= 68nn73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/lib/guile/2.0/ccache/rnrs/has= htables.go' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /lib/guile/2.0/ccache/rnrs/files.go' ~> `/tmp/guix-tests/store/0sgpsn768nn7= 3wblh4iw6wl3bcsfn7dd-union-test-all-dirs/lib/guile/2.0/ccache/rnrs/files.go' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /lib/guile/2.0/ccache/rnrs/arithmetic/flonums.go' ~> `/tmp/guix-tests/store= /0sgpsn768nn73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/lib/guile/2.0/ccache/= rnrs/arithmetic/flonums.go' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /lib/guile/2.0/ccache/rnrs/arithmetic/bitwise.go' ~> `/tmp/guix-tests/store= /0sgpsn768nn73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/lib/guile/2.0/ccache/= rnrs/arithmetic/bitwise.go' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /lib/guile/2.0/ccache/rnrs/arithmetic/fixnums.go' ~> `/tmp/guix-tests/store= /0sgpsn768nn73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/lib/guile/2.0/ccache/= rnrs/arithmetic/fixnums.go' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /lib/guile/2.0/ccache/rnrs/lists.go' ~> `/tmp/guix-tests/store/0sgpsn768nn7= 3wblh4iw6wl3bcsfn7dd-union-test-all-dirs/lib/guile/2.0/ccache/rnrs/lists.go' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /lib/guile/2.0/ccache/rnrs/programs.go' ~> `/tmp/guix-tests/store/0sgpsn768= nn73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/lib/guile/2.0/ccache/rnrs/progr= ams.go' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /lib/guile/2.0/ccache/rnrs/syntax-case.go' ~> `/tmp/guix-tests/store/0sgpsn= 768nn73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/lib/guile/2.0/ccache/rnrs/sy= ntax-case.go' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /lib/guile/2.0/ccache/rnrs/bytevectors.go' ~> `/tmp/guix-tests/store/0sgpsn= 768nn73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/lib/guile/2.0/ccache/rnrs/by= tevectors.go' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /lib/guile/2.0/ccache/rnrs/mutable-strings.go' ~> `/tmp/guix-tests/store/0s= gpsn768nn73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/lib/guile/2.0/ccache/rnr= s/mutable-strings.go' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /lib/guile/2.0/ccache/rnrs/unicode.go' ~> `/tmp/guix-tests/store/0sgpsn768n= n73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/lib/guile/2.0/ccache/rnrs/unicod= e.go' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /lib/guile/2.0/ccache/rnrs/io/simple.go' ~> `/tmp/guix-tests/store/0sgpsn76= 8nn73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/lib/guile/2.0/ccache/rnrs/io/s= imple.go' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /lib/guile/2.0/ccache/rnrs/io/ports.go' ~> `/tmp/guix-tests/store/0sgpsn768= nn73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/lib/guile/2.0/ccache/rnrs/io/po= rts.go' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /lib/guile/2.0/ccache/rnrs/eval.go' ~> `/tmp/guix-tests/store/0sgpsn768nn73= wblh4iw6wl3bcsfn7dd-union-test-all-dirs/lib/guile/2.0/ccache/rnrs/eval.go' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /lib/guile/2.0/ccache/rnrs/base.go' ~> `/tmp/guix-tests/store/0sgpsn768nn73= wblh4iw6wl3bcsfn7dd-union-test-all-dirs/lib/guile/2.0/ccache/rnrs/base.go' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /lib/guile/2.0/ccache/web/response.go' ~> `/tmp/guix-tests/store/0sgpsn768n= n73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/lib/guile/2.0/ccache/web/respons= e.go' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /lib/guile/2.0/ccache/web/server.go' ~> `/tmp/guix-tests/store/0sgpsn768nn7= 3wblh4iw6wl3bcsfn7dd-union-test-all-dirs/lib/guile/2.0/ccache/web/server.go' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /lib/guile/2.0/ccache/web/server/http.go' ~> `/tmp/guix-tests/store/0sgpsn7= 68nn73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/lib/guile/2.0/ccache/web/serv= er/http.go' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /lib/guile/2.0/ccache/web/http.go' ~> `/tmp/guix-tests/store/0sgpsn768nn73w= blh4iw6wl3bcsfn7dd-union-test-all-dirs/lib/guile/2.0/ccache/web/http.go' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /lib/guile/2.0/ccache/web/uri.go' ~> `/tmp/guix-tests/store/0sgpsn768nn73wb= lh4iw6wl3bcsfn7dd-union-test-all-dirs/lib/guile/2.0/ccache/web/uri.go' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /lib/guile/2.0/ccache/web/client.go' ~> `/tmp/guix-tests/store/0sgpsn768nn7= 3wblh4iw6wl3bcsfn7dd-union-test-all-dirs/lib/guile/2.0/ccache/web/client.go' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /lib/guile/2.0/ccache/web/request.go' ~> `/tmp/guix-tests/store/0sgpsn768nn= 73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/lib/guile/2.0/ccache/web/request.= go' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /lib/guile/2.0/ccache/texinfo/html.go' ~> `/tmp/guix-tests/store/0sgpsn768n= n73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/lib/guile/2.0/ccache/texinfo/htm= l.go' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /lib/guile/2.0/ccache/texinfo/serialize.go' ~> `/tmp/guix-tests/store/0sgps= n768nn73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/lib/guile/2.0/ccache/texinf= o/serialize.go' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /lib/guile/2.0/ccache/texinfo/indexing.go' ~> `/tmp/guix-tests/store/0sgpsn= 768nn73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/lib/guile/2.0/ccache/texinfo= /indexing.go' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /lib/guile/2.0/ccache/texinfo/docbook.go' ~> `/tmp/guix-tests/store/0sgpsn7= 68nn73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/lib/guile/2.0/ccache/texinfo/= docbook.go' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /lib/guile/2.0/ccache/texinfo/reflection.go' ~> `/tmp/guix-tests/store/0sgp= sn768nn73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/lib/guile/2.0/ccache/texin= fo/reflection.go' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /lib/guile/2.0/ccache/texinfo/string-utils.go' ~> `/tmp/guix-tests/store/0s= gpsn768nn73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/lib/guile/2.0/ccache/tex= info/string-utils.go' `/tmp/guix-tests/store/7y0q8n6zv41lr9viybhihlcmhri6939f-guile-bootstrap-2.0= /lib/guile/2.0/ccache/texinfo/plain-text.go' ~> `/tmp/guix-tests/store/0sgp= sn768nn73wblh4iw6wl3bcsfn7dd-union-test-all-dirs/lib/guile/2.0/ccache/texin= fo/plain-text.go' @ build-succeeded /tmp/guix-tests/store/iwc79z4pnnjaz0hif0xnx65cg2j3qsg9-un= ion-test-all-dirs.drv - /tmp/guix-build-guix-0.13.0.drv-0/source/tests/union.scm:127 source: + (test-assert + "union-build #:create-all-directories? #t" + (let* ((build `(begin + (use-modules (guix build union)) + (union-build + (assoc-ref %outputs "out") + (map cdr %build-inputs) + #:create-all-directories? + #t))) + (input (package-derivation %store %bootstrap-guile)) + (drv (build-expression->derivation + %store + "union-test-all-dirs" + build + #:modules + '((guix build union)) + #:inputs + `(("g" ,input))))) + (and (build-derivations %store (list drv)) + (with-directory-excursion + (derivation->output-path drv) + (and (file-exists? "bin/guile") + (file-is-directory? "bin") + (eq? 'symlink (stat:type (lstat "bin/guile")))))))) actual-value: #t result: PASS SKIP: tests/syscalls =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D test-name: mount, ENOENT location: /tmp/guix-build-guix-0.13.0.drv-0/source/tests/syscalls.scm:38 source: + (test-equal + "mount, ENOENT" + ENOENT + (catch 'system-error + (lambda () + (mount "/dev/null" "/does-not-exist" "ext2") + #f) + (compose system-error-errno list))) expected-value: 2 actual-value: 2 result: PASS test-name: umount, ENOENT/EPERM location: /tmp/guix-build-guix-0.13.0.drv-0/source/tests/syscalls.scm:46 source: + (test-assert + "umount, ENOENT/EPERM" + (catch 'system-error + (lambda () (umount "/does-not-exist") #f) + (lambda args + (memv (system-error-errno args) + (list EPERM ENOENT))))) actual-value: (1 2) result: PASS test-name: mount-points location: /tmp/guix-build-guix-0.13.0.drv-0/source/tests/syscalls.scm:55 source: + (test-assert + "mount-points" + (any (cute member <> (mount-points)) + '("/" "/proc" "/sys" "/dev"))) actual-value: ("/" "/dev/full" "/dev/null" "/dev/random" "/dev/tty" "/dev/u= random" "/dev/zero" "/gnu/store/02426nwiy32cscm4h83729vn5ws1gs2i-bash-stati= c-4.4.12" "/gnu/store/02a60j2x8i4wdj67krl4z7fc5i7maqrw-nettle-3.3" "/gnu/st= ore/0fzh44zpdw1h2dwpzgfw2lic05y4k6md-libxt-1.1.5" "/gnu/store/0wps368gx0cn3= ynrkbhzq5pxf75rng7y-glib-2.50.3" "/gnu/store/0xm7szwymsv87z7y4bi2lgvx2jhniq= ms-file-5.28" "/gnu/store/16i6p8liwzl2wk10akcqw84l9mqhdyfg-automake-1.15" "= /gnu/store/1h0p1lgl5i1dmwa0rzxflv664zwwm6am-glibc-utf8-locales-2.25" "/gnu/= store/2rba93k7hlaqgwimwnsi0a4h4f04afag-libxmu-1.1.2" "/gnu/store/2sf5dkanvf= 3r0mg20yysxig5fgg8yq8d-libxrender-0.9.10" "/gnu/store/2xm70k2vppjw5m4aqnh9i= i3hiz667dg2-pkg-config-0.29.1" "/gnu/store/38j1nrzd039sd65zfpbd0i3j9lxvnwpx= -fontconfig-2.12.1" "/gnu/store/3lsfrwlp1qa345x71yw5w49i2mpp0vxm-guile-2.0.= 14" "/gnu/store/4iw4r2majarqlm19adaikqw126jxqf2p-gcc-5.4.0" "/gnu/store/4m5= 8wpsp8xx4b3v5rwnq6ww93dp16z0l-module-import" "/gnu/store/540scmzhxx3avrr760= ma7pyzp26k5gbs-libxpm-3.5.12" "/gnu/store/55r4yg5iw9zh2j3zvzc6272k5xn4yxg4-= gawk-4.1.4" "/gnu/store/5bh7p754d09wcp64ckxlvwz7lgyk0h59-linux-libre-header= s-4.4.47" "/gnu/store/5zx29y44nrqj0s8h3jlvlj82k8hj4dxs-guile-2.2.2" "/gnu/s= tore/6908gy3pws0ccys49ni98idwnicchlr2-coreutils-8.26" "/gnu/store/6rp4sjvp7= lxkjh6mya4gg5g37i4qlrk4-gd-2.2.4" "/gnu/store/6z06w9zfnq3zcr50vcv2wvzr5wpzv= y7l-util-linux-2.29.2" "/gnu/store/85ss68qvpfb62chf2wapp3b8gfqv5xc6-libffi-= 3.2.1" "/gnu/store/87sj03j9kwzhl9zr76gs2i8ill86ki95-grep-3.0" "/gnu/store/8= 99421wkg4iff0vvid7c9zvrdnyqd69v-acl-2.2.52" "/gnu/store/8cahzancb8dyh5ciwzc= lq41m1cvw78cj-ed-1.14.1" "/gnu/store/8nkj1w5whm5gwrhsmqvm1w6im27vz02g-bzip2= -1.0.6" "/gnu/store/8wmanahsh0mk1n5xw6i7wpwih95yqzaq-gzip-1.8" "/gnu/store/= 92nphddbww5b9z4sqdzis5z53lhqf0bd-gts-0.7.6" "/gnu/store/9ahz2yfi9ydchfksdgl= 96y785kn9453w-zlib-1.2.11" "/gnu/store/9f66pvz4vf1d9k8iir6asdp3l8k58cnn-lib= atomic-ops-7.4.4" "/gnu/store/9kpc0l7888av969242bswsd0h6vpw8q7-libcap-2.25"= "/gnu/store/a3qkf2l3jqnpqibcg2iwbkak4d6scx28-libbsd-0.8.3" "/gnu/store/a42= pfdz8w5qxdkp6xz8783ydywmp0p8p-module-import" "/gnu/store/aamm99b0iq42qcxqy6= mxi50h93a84af3-m4-1.4.18" "/gnu/store/alg6ani0nnwrxyz15d1j5d0k6qs2m5sk-make= -4.2.1" "/gnu/store/ax413995ajhcrk5g48r6w3bwkb3pb1lr-gettext-minimal-0.19.8= .1" "/gnu/store/b7w6bjp602qvhbsjs535dfax8v7wy8s8-gmp-6.1.2" "/gnu/store/b83= 7wr8ffw2ppbx1744a2xll70bh8h4c-freetype-2.7.1" "/gnu/store/bji78ysmny9kwy756= 6g3xzyqbjhvc1fn-libatomic-ops-7.4.4" "/gnu/store/c096s3rxsilbp36y7wnsr29w2h= vr3s9x-autoconf-2.69" "/gnu/store/c140q16b1n4x0j2i7wv1awc1c39ipzrr-xz-5.2.2= " "/gnu/store/cgnwpa0h824nvffcc3nngks1rv7p80d4-autoconf-wrapper-2.69" "/gnu= /store/cz9ci6jdmwfnmk6n697dj98rc4sjs0ql-attr-2.4.47" "/gnu/store/dcc4b6r7np= jmhdsah1g6nw1j9wdy635y-sqlite-3.17.0" "/gnu/store/dhc2iy059hi91fk55dcv79z09= kp6500y-gcc-5.4.0-lib" "/gnu/store/dj9w9y66ncmn7qpnahz5fhqjjwqrnbjm-ncurses= -6.0" "/gnu/store/dr4qfgqmcv8vjfyi5bh6iqxmcnr5psxh-libxau-1.0.8" "/gnu/stor= e/fa6rba5r6m5ad1hy80ngmyc3r391lf9r-guile2.2-gnutls-3.5.9" "/gnu/store/fk20a= 8bgdd2ld3ik514zpfzj8akwvb30-gmp-6.1.2" "/gnu/store/fpbm0nvl2zi4jksm22kr1mq3= hfw79xdn-libxcb-1.12" "/gnu/store/gdgrzf1y15scqwk1yzm51dc40g29vad9-findutil= s-4.6.0" "/gnu/store/gdx6vk579px16dgv60hgrr1c2k1pwsni-libx11-1.6.5" "/gnu/s= tore/h7mx27bl0wynlz8vjszzykqqldccfwm5-ncurses-6.0" "/gnu/store/hag795ji8p9v= qikwp8cibfibpsa39s3n-libgcrypt-1.7.6" "/gnu/store/hgv1xc69vf2cqy21iglppnr23= 29llxqw-pixman-0.34.0" "/gnu/store/hqim8ih804fbqk7gailh1hlgmkpjzccn-gzip-1.= 8" "/gnu/store/hqqw3jkqdpy72drq8mnn1kbh4dssw5lc-libxaw-1.0.13" "/gnu/store/= hvyk1qyph1hihfmym1w271ygp84adb0v-readline-7.0" "/gnu/store/i0bjwdqvn0wixcwf= pw254w0az17iysga-cairo-1.14.8" "/gnu/store/i92s6sqzlps5wasx09wv3lckn2lj3dm7= -perl-5.24.0" "/gnu/store/if99vbhh9vk98p61a7l3s9d1vmbmfkk0-expat-2.2.0" "/g= nu/store/j4p7cnxb6byf1wra3yz6pk8av4g5mwkl-libgc-7.6.0" "/gnu/store/j92kxc1l= 8h879cc4ss1gbhsq73ddnbsg-libgpg-error-1.26" "/gnu/store/ja06pq19g0cf2122kim= k15z5yn0az73j-libxdmcp-1.1.2" "/gnu/store/jwkcd7siv6fcyl0qsg607bg9c8ap0gqr-= zlib-1.2.11" "/gnu/store/k6jkr6p94xlsddgiy8abicm2b36gkdh6-harfbuzz-1.4.3" "= /gnu/store/k7029k5va68lkapbzcycdzj7m5bjb4b8-bash-4.4.12" "/gnu/store/k8xbdj= bpd83s6i48az9c7l6pkf8za8xj-libidn2-0.16" "/gnu/store/kbs0012il9z63kp0nlq0h6= 6m6zjp4f21-diffutils-3.5" "/gnu/store/kndl3vllk4bdq1xd3p8k67h8jrsq8xbq-read= line-7.0" "/gnu/store/l2paa4ka8lglar0b778qzl7a6h2v5dzn-guile-json-0.6.0" "/= gnu/store/lcmcm4c0zjv3sa9amdrhaszd7vwwxjh1-libltdl-2.4.6" "/gnu/store/m71kg= d1gbx609mqn2m4lm9x1i1pgzz74-help2man-1.47.4" "/gnu/store/mf9aln8affmgaj8vkw= v636cgalfqdv8g-libjpeg-9b" "/gnu/store/mfx9ib0cy6mvjfmszplnlh0dvdb0513v-tar= -1.29" "/gnu/store/n04pda8i88ry820qwz2f12i99535sy3d-pcre-8.40" "/gnu/store/= ng61qpn9qk82nhxarksfnv53ki2j0ld2-module-import-compiled" "/gnu/store/nrrwyb= 21bn8cdc0k6pis3ggs2vayibin-bash-4.4.12" "/gnu/store/pv2qmb1kjbskzph09yg06vd= 0wm6iwgbd-graphite2-1.3.9" "/gnu/store/px46g18zg3sjgndwdcsgm6027w7s5gbc-pkg= -config-0.29.1" "/gnu/store/q1x4v3x8v2g59d244hl7k0i1n4h83c9a-ncurses-6.0" "= /gnu/store/qbngj80kmydl4jsba2cdgwq2y51xlfv0-patch-2.7.5" "/gnu/store/ql5h9h= xh5560d42xdirh0yxzrgii6i0m-guile-ssh-0.11.0" "/gnu/store/r1zsyinrpcpfbcym5q= rx6zbk6hwzxwnm-pango-1.40.3" "/gnu/store/r4pvx277n8lcfn9xv62sx6ikspwlg3kl-l= ibxext-1.3.3" "/gnu/store/ri56wnmzkgzrajdyl5ydc55lrwy1164k-ld-wrapper-0" "/= gnu/store/rmb4nh95s22lnd42sarzj5bswakd3mxx-icu4c-58.2" "/gnu/store/rmjlycdg= iq8pfy5hfi42qhw3k7p6kdav-glibc-2.25" "/gnu/store/s3c442d075fc8a0q0nspc9jjsg= jq613p-bzip2-1.0.6" "/gnu/store/sjm2c0dymn3mjl7g0jqbjdbibnqh0iaw-readline-7= .0" "/gnu/store/v4h4qw8a95479capaq08vs4zdyxdijhv-libunistring-0.9.7" "/gnu/= store/vis7x2j2lsmwbl5m5w794c23ysqah8xh-libpng-1.6.28" "/gnu/store/vlc43y485= v80sgq7iw60hzy4pw5r52d2-libssh-0.7.4" "/gnu/store/vndw4mh60kap1vwk9mj0rmf4x= h9z5ndq-libxft-2.3.2" "/gnu/store/w3ng5infdzn234167kvgc6a01n0j26qc-libltdl-= 2.4.6" "/gnu/store/w5b3db8y2rq3d73b30m4c5z0ql270r9a-libsm-1.2.2" "/gnu/stor= e/wak3m4kdkgw010qn1ksnqlggvklp4b24-gmp-6.1.2" "/gnu/store/wfy8pwxjbyc9033sq= b1snyfla3h8d02p-libice-1.0.9" "/gnu/store/wqx8sxqjvz323vk9xalrhqk5f35yd42f-= libffi-3.2.1" "/gnu/store/x8cfigwi2sf7l2aq9csfjaawn1aa4733-graphviz-2.38.0"= "/gnu/store/xpldw0hzzn85074zdscjxxp5c64176hv-libtasn1-4.10" "/gnu/store/y7= cgyi1syavy17kacn5s2adw20i8mglz-guix-0.13.0-checkout" "/gnu/store/yr7m8ldp3n= 40mrzjax91cj9hjw1k2a58-libgc-7.6.0" "/gnu/store/z0as6gp6grsqs4a8knbxkcwbyxr= iqmgc-gs-fonts-8.11" "/gnu/store/z1kihijf9klm5g3rzn4nk034nxhx58mn-libunistr= ing-0.9.7" "/gnu/store/z763jk8lkragpz2qr2wbrz946lgalx2h-sed-4.4" "/gnu/stor= e/zk41gmzbibvpx9dpsm5gs8p0liz8shy0-guile-2.0.14" "/gnu/store/zq65kpvwwxgc3q= qbf9apic8gyss2l0zq-binutils-2.27" "/gnu/store/zrk4galrr3cbp4yvkn93hcq6dpkf6= k98-texinfo-6.3" "/tmp/guix-build-guix-0.13.0.drv-0" "/proc" "/dev/shm" "/d= ev/pts") result: PASS test-name: swapon, ENOENT/EPERM location: /tmp/guix-build-guix-0.13.0.drv-0/source/tests/syscalls.scm:61 source: + (test-assert + "swapon, ENOENT/EPERM" + (catch 'system-error + (lambda () (swapon "/does-not-exist") #f) + (lambda args + (memv (system-error-errno args) + (list EPERM ENOENT))))) actual-value: (1 2) result: PASS test-name: swapoff, ENOENT/EINVAL/EPERM location: /tmp/guix-build-guix-0.13.0.drv-0/source/tests/syscalls.scm:69 source: + (test-assert + "swapoff, ENOENT/EINVAL/EPERM" + (catch 'system-error + (lambda () (swapoff "/does-not-exist") #f) + (lambda args + (memv (system-error-errno args) + (list EPERM EINVAL ENOENT))))) actual-value: (1 22 2) result: PASS test-name: mkdtemp! location: /tmp/guix-build-guix-0.13.0.drv-0/source/tests/syscalls.scm:77 source: + (test-assert + "mkdtemp!" + (let* ((tmp (or (getenv "TMPDIR") "/tmp")) + (dir (mkdtemp! + (string-append tmp "/guix-test-XXXXXX")))) + (and (file-exists? dir) (begin (rmdir dir) #t)))) actual-value: #t result: PASS test-name: statfs, ENOENT location: /tmp/guix-build-guix-0.13.0.drv-0/source/tests/syscalls.scm:85 source: + (test-equal + "statfs, ENOENT" + ENOENT + (catch 'system-error + (lambda () (statfs "/does-not-exist")) + (compose system-error-errno list))) expected-value: 2 actual-value: 2 result: PASS test-name: statfs location: /tmp/guix-build-guix-0.13.0.drv-0/source/tests/syscalls.scm:92 source: + (test-assert + "statfs" + (let ((fs (statfs "/"))) + (and (file-system? fs) + (> (file-system-block-size fs) 0) + (>=3D (file-system-blocks-available fs) 0) + (>=3D (file-system-blocks-free fs) + (file-system-blocks-available fs))))) actual-value: #t result: PASS test-name: clone location: /tmp/guix-build-guix-0.13.0.drv-0/source/tests/syscalls.scm:110 source: + (test-assert + "clone" + (match (clone (logior CLONE_NEWUSER SIGCHLD)) + (0 (primitive-exit 42)) + (pid (and (not (equal? + (readlink (user-namespace pid)) + (readlink (user-namespace (getpid))))) + (match (waitpid pid) + ((_ . status) (=3D 42 (status:exit-val status))= )))))) result: SKIP test-name: setns location: /tmp/guix-build-guix-0.13.0.drv-0/source/tests/syscalls.scm:124 source: + (test-assert + "setns" + (match (clone (logior CLONE_NEWUSER SIGCHLD)) + (0 (primitive-exit 0)) + (clone-pid + (match (pipe) + ((in . out) + (match (primitive-fork) + (0 + (close in) + (call-with-input-file + (user-namespace clone-pid) + (lambda (port) (setns (port->fdes port) 0))) + (write 'done out) + (close out) + (primitive-exit 0)) + (fork-pid + (close out) + (read in) + (let ((result + (and (equal? + (readlink + (user-namespace clone-pid)) + (readlink + (user-namespace fork-pid))))= )) + (waitpid clone-pid) + (waitpid fork-pid) + result)))))))) result: SKIP test-name: pivot-root location: /tmp/guix-build-guix-0.13.0.drv-0/source/tests/syscalls.scm:157 source: + (test-equal + "pivot-root" + #t + (match (pipe) + ((in . out) + (match (clone (logior CLONE_NEWUSER CLONE_NEWNS SIGCHLD)) + (0 + (dynamic-wind + (const #t) + (lambda () + (close in) + (call-with-temporary-directory + (lambda (root) + (let ((put-old (string-append root "/real-root"= ))) + (mount "none" root "tmpfs") + (mkdir put-old) + (call-with-output-file + (string-append root "/test") + (lambda (port) (display "testing\n" port))) + (pivot-root root put-old) + (write (file-exists? "/test") out) + (close out))))) + (lambda () (primitive-exit 0)))) + (pid (close out) + (let ((result (read in))) + (close in) + (and (zero? (match (waitpid pid) + ((_ . status) + (status:exit-val status)))) + (eq? #t result)))))))) result: SKIP test-name: fcntl-flock wait location: /tmp/guix-build-guix-0.13.0.drv-0/source/tests/syscalls.scm:191 source: + (test-equal + "fcntl-flock wait" + 42 + (let ((file (open-file temp-file "w0b"))) + (fcntl-flock file 'write-lock) + (match (primitive-fork) + (0 + (dynamic-wind + (const #t) + (lambda () + (let ((file (open-file temp-file "r0b"))) + (fcntl-flock file 'read-lock) + (primitive-exit (read file))) + (primitive-exit 1)) + (lambda () (primitive-exit 2)))) + (pid (display "hello, world!" file) + (force-output file) + (sleep 1) + (seek file 0 SEEK_SET) + (truncate-file file 0) + (write 42 file) + (force-output file) + (fcntl-flock file 'unlock) + (match (waitpid pid) + ((_ . status) + (let ((result (status:exit-val status))) + (close-port file) + result))))))) (string-append root "/test") + (lambda (port) (display "testing\n" port))) + (pivot-root root put-old) + (write (file-exists? "/test") out) + (close out))))) + (lambda () (primitive-exit 0)))) + (pid (close out) + (let ((result (read in))) + (close in) + (and (zero? (match (waitpid pid) + ((_ . status) + (status:exit-val status)))) + (eq? #t result)))))))) result: SKIP test-name: fcntl-flock wait location: /tmp/guix-build-guix-0.13.0.drv-0/source/tests/syscalls.scm:191 source: + (test-equal + "fcntl-flock wait" + 42 + (let ((file (open-file temp-file "w0b"))) + (fcntl-flock file 'write-lock) + (match (primitive-fork) + (0 + (dynamic-wind + (const #t) + (lambda () + (let ((file (open-file temp-file "r0b"))) + (fcntl-flock file 'read-lock) + (primitive-exit (read file))) + (primitive-exit 1)) + (lambda () (primitive-exit 2)))) + (pid (display "hello, world!" file) + (force-output file) + (sleep 1) + (seek file 0 SEEK_SET) + (truncate-file file 0) + (write 42 file) + (force-output file) + (fcntl-flock file 'unlock) + (match (waitpid pid) + ((_ . status) + (let ((result (status:exit-val status))) + (close-port file) + result))))))) expected-value: 42 actual-value: 42 result: PASS test-name: fcntl-flock non-blocking location: /tmp/guix-build-guix-0.13.0.drv-0/source/tests/syscalls.scm:230 source: + (test-equal + "fcntl-flock non-blocking" + EAGAIN + (match (pipe) + ((input . output) + (match (primitive-fork) + (0 + (dynamic-wind + (const #t) + (lambda () + (close-port output) + (read-char input) + (let ((file (open-file temp-file "w0"))) + (catch 'flock-error + (lambda () + (fcntl-flock file 'write-lock #:wait? #f= )) + (lambda (key errno) + (primitive-exit (pk 'errno errno))))) + (primitive-exit -1)) + (lambda () (primitive-exit -2)))) + (pid (close-port input) + (let ((file (open-file temp-file "w0"))) + (fcntl-flock file 'write-lock) + (write 'green-light output) + (force-output output) + (match (waitpid pid) + ((_ . status) + (let ((result (status:exit-val status))) + (fcntl-flock file 'unlock) + (close-port file) + result))))))))) ;;; (errno 11) (string-append root "/test") + (lambda (port) (display "testing\n" port))) + (pivot-root root put-old) + (write (file-exists? "/test") out) + (close out))))) + (lambda () (primitive-exit 0)))) + (pid (close out) + (let ((result (read in))) + (close in) + (and (zero? (match (waitpid pid) + ((_ . status) + (status:exit-val status)))) + (eq? #t result)))))))) result: SKIP test-name: fcntl-flock wait location: /tmp/guix-build-guix-0.13.0.drv-0/source/tests/syscalls.scm:191 source: + (test-equal + "fcntl-flock wait" + 42 + (let ((file (open-file temp-file "w0b"))) + (fcntl-flock file 'write-lock) + (match (primitive-fork) + (0 + (dynamic-wind + (const #t) + (lambda () + (let ((file (open-file temp-file "r0b"))) + (fcntl-flock file 'read-lock) + (primitive-exit (read file))) + (primitive-exit 1)) + (lambda () (primitive-exit 2)))) + (pid (display "hello, world!" file) + (force-output file) + (sleep 1) + (seek file 0 SEEK_SET) + (truncate-file file 0) + (write 42 file) + (force-output file) + (fcntl-flock file 'unlock) + (match (waitpid pid) + ((_ . status) + (let ((result (status:exit-val status))) + (close-port file) + result))))))) expected-value: 42 actual-value: 42 result: PASS test-name: fcntl-flock non-blocking location: /tmp/guix-build-guix-0.13.0.drv-0/source/tests/syscalls.scm:230 source: + (test-equal + "fcntl-flock non-blocking" + EAGAIN + (match (pipe) + ((input . output) + (match (primitive-fork) + (0 + (dynamic-wind + (const #t) + (lambda () + (close-port output) + (read-char input) + (let ((file (open-file temp-file "w0"))) + (catch 'flock-error + (lambda () + (fcntl-flock file 'write-lock #:wait? #f= )) + (lambda (key errno) + (primitive-exit (pk 'errno errno))))) + (primitive-exit -1)) + (lambda () (primitive-exit -2)))) + (pid (close-port input) + (let ((file (open-file temp-file "w0"))) + (fcntl-flock file 'write-lock) + (write 'green-light output) + (force-output output) + (match (waitpid pid) + ((_ . status) + (let ((result (status:exit-val status))) + (fcntl-flock file 'unlock) + (close-port file) + result))))))))) expected-value: 11 actual-value: 11 result: PASS test-name: all-network-interface-names location: /tmp/guix-build-guix-0.13.0.drv-0/source/tests/syscalls.scm:272 source: + (test-assert + "all-network-interface-names" + (match (all-network-interface-names) + (((? string? names) ..1) (member "lo" names)))) actual-value: ("lo") result: PASS test-name: network-interface-names location: /tmp/guix-build-guix-0.13.0.drv-0/source/tests/syscalls.scm:277 source: + (test-assert + "network-interface-names" + (match (network-interface-names) + (((? string? names) ..1) + (lset<=3D + string=3D? + names + (all-network-interface-names))))) actual-value: #t result: PASS test-name: network-interface-flags location: /tmp/guix-build-guix-0.13.0.drv-0/source/tests/syscalls.scm:282 source: + (test-assert + "network-interface-flags" + (let* ((sock (socket AF_INET SOCK_STREAM 0)) + (flags (network-interface-flags sock "lo"))) + (close-port sock) + (and (not (zero? (logand flags IFF_LOOPBACK))) + (not (zero? (logand flags IFF_UP)))))) actual-value: #t result: PASS test-name: loopback-network-interface? location: /tmp/guix-build-guix-0.13.0.drv-0/source/tests/syscalls.scm:289 source: + (test-equal + "loopback-network-interface?" + ENODEV + (and (loopback-network-interface? "lo") + (catch 'system-error + (lambda () + (loopback-network-interface? "nonexistent") + #f) + (lambda args (system-error-errno args))))) expected-value: 19 actual-value: 19 result: PASS test-name: set-network-interface-flags location: /tmp/guix-build-guix-0.13.0.drv-0/source/tests/syscalls.scm:300 source: + (test-assert + "set-network-interface-flags" + (let ((sock (socket AF_INET SOCK_STREAM 0))) + (catch 'system-error + (lambda () + (set-network-interface-flags sock "lo" IFF_UP)) + (lambda args + (close-port sock) + (memv (system-error-errno args) + (list EPERM EACCES)))))) actual-value: (1 13) result: PASS test-name: network-interface-address lo location: /tmp/guix-build-guix-0.13.0.drv-0/source/tests/syscalls.scm:310 source: + (test-equal + "network-interface-address lo" + (make-socket-address + AF_INET + (inet-pton AF_INET "127.0.0.1") + 0) + (let* ((sock (socket AF_INET SOCK_STREAM 0)) + (addr (network-interface-address sock "lo"))) + (close-port sock) + addr)) expected-value: #(2 2130706433 0) actual-value: #(2 2130706433 0) result: PASS test-name: set-network-interface-address location: /tmp/guix-build-guix-0.13.0.drv-0/source/tests/syscalls.scm:318 source: + (test-assert + "set-network-interface-address" + (let ((sock (socket AF_INET SOCK_STREAM 0))) + (catch 'system-error + (lambda () + (set-network-interface-address + sock + "nonexistent" + (make-socket-address + AF_INET + (inet-pton AF_INET "127.12.14.15") + 0))) + (lambda args + (close-port sock) + (memv (system-error-errno args) + (list EPERM EACCES)))))) actual-value: (1 13) result: PASS test-name: network-interface-netmask lo location: /tmp/guix-build-guix-0.13.0.drv-0/source/tests/syscalls.scm:332 source: + (test-equal + "network-interface-netmask lo" + (make-socket-address + AF_INET + (inet-pton AF_INET "255.0.0.0") + 0) + (let* ((sock (socket AF_INET SOCK_STREAM 0)) + (addr (network-interface-netmask sock "lo"))) + (close-port sock) + addr)) expected-value: #(2 4278190080 0) actual-value: #(2 4278190080 0) result: PASS test-name: set-network-interface-netmask location: /tmp/guix-build-guix-0.13.0.drv-0/source/tests/syscalls.scm:340 source: + (test-assert + "set-network-interface-netmask" + (let ((sock (socket AF_INET SOCK_STREAM 0))) + (catch 'system-error + (lambda () + (set-network-interface-netmask + sock + "nonexistent" + (make-socket-address + AF_INET + (inet-pton AF_INET "255.0.0.0") + 0))) + (lambda args + (close-port sock) + (memv (system-error-errno args) + (list EPERM EACCES)))))) actual-value: (1 13) result: PASS test-name: network-interfaces returns one or more interfaces location: /tmp/guix-build-guix-0.13.0.drv-0/source/tests/syscalls.scm:353 source: + (test-equal + "network-interfaces returns one or more interfaces" + '(#t #t #t) + (match (network-interfaces) + ((interfaces ..1) + (list (every interface? interfaces) + (every string? (map interface-name interfaces)) + (every (lambda (sockaddr) + (or (vector? sockaddr) (not sockaddr))) + (map interface-address interfaces)))))) expected-value: (#t #t #t) actual-value: (#t #t #t) result: PASS test-name: network-interfaces returns "lo" location: /tmp/guix-build-guix-0.13.0.drv-0/source/tests/syscalls.scm:365 source: + (test-equal + "network-interfaces returns \"lo\"" + (list #t + (make-socket-address + AF_INET + (inet-pton AF_INET "127.0.0.1") + 0)) + (match (filter + (lambda (interface) + (string=3D? "lo" (interface-name interface))) + (network-interfaces)) + ((loopbacks ..1) + (list (every (lambda (lo) + (not (zero? (logand + IFF_LOOPBACK + (interface-flags lo))))) + loopbacks) + (match (find (lambda (lo) + (=3D AF_INET + (sockaddr:fam (interface-address lo)))) + loopbacks) + (#f #f) + (lo (interface-address lo))))))) expected-value: (#t #(2 2130706433 0)) actual-value: (#t #(2 2130706433 0)) result: PASS test-name: add-network-route/gateway location: /tmp/guix-build-guix-0.13.0.drv-0/source/tests/syscalls.scm:381 source: + (test-assert + "add-network-route/gateway" + (let ((sock (socket AF_INET SOCK_STREAM 0)) + (gateway + (make-socket-address + AF_INET + (inet-pton AF_INET "192.168.0.1") + 0))) + (catch 'system-error + (lambda () + (add-network-route/gateway sock gateway)) + (lambda args + (close-port sock) + (memv (system-error-errno args) + (list EPERM EACCES)))))) actual-value: (1 13) result: PASS test-name: delete-network-route location: /tmp/guix-build-guix-0.13.0.drv-0/source/tests/syscalls.scm:394 source: + (test-assert + "delete-network-route" + (let ((sock (socket AF_INET SOCK_STREAM 0)) + (destination + (make-socket-address AF_INET INADDR_ANY 0))) + (catch 'system-error + (lambda () + (delete-network-route sock destination)) + (lambda args + (close-port sock) + (memv (system-error-errno args) + (list EPERM EACCES)))))) actual-value: (1 13) result: PASS test-name: tcgetattr ENOTTY location: /tmp/guix-build-guix-0.13.0.drv-0/source/tests/syscalls.scm:404 source: + (test-equal + "tcgetattr ENOTTY" + ENOTTY + (catch 'system-error + (lambda () + (call-with-input-file + "/dev/null" + (lambda (port) (tcgetattr (fileno port))))) + (compose system-error-errno list))) expected-value: 25 actual-value: 25 result: PASS test-name: tcgetattr location: /tmp/guix-build-guix-0.13.0.drv-0/source/tests/syscalls.scm:418 source: + (test-assert + "tcgetattr" + (let ((termios (tcgetattr 0))) + (and (termios? termios) + (> (termios-input-speed termios) 0) + (> (termios-output-speed termios) 0)))) result: SKIP test-name: tcsetattr location: /tmp/guix-build-guix-0.13.0.drv-0/source/tests/syscalls.scm:424 source: + (test-assert + "tcsetattr" + (let ((first (tcgetattr 0))) + (tcsetattr 0 (tcsetattr-action TCSANOW) first) + (equal? first (tcgetattr 0)))) result: SKIP test-name: terminal-window-size ENOTTY location: /tmp/guix-build-guix-0.13.0.drv-0/source/tests/syscalls.scm:429 source: + (test-assert + "terminal-window-size ENOTTY" + (call-with-input-file + "/dev/null" + (lambda (port) + (catch 'system-error + (lambda () (terminal-window-size port)) + (lambda args + (memv (system-error-errno args) + (list ENOTTY EINVAL))))))) actual-value: (25 22) result: PASS test-name: terminal-columns location: /tmp/guix-build-guix-0.13.0.drv-0/source/tests/syscalls.scm:440 source: + (test-assert + "terminal-columns" + (> (terminal-columns) 0)) actual-value: #t result: PASS test-name: terminal-columns non-file port location: /tmp/guix-build-guix-0.13.0.drv-0/source/tests/syscalls.scm:443 source: + (test-assert + "terminal-columns non-file port" + (> (terminal-columns + (open-input-string + "Join us now, share the software!")) + 0)) actual-value: #t result: PASS test-name: utmpx-entries location: /tmp/guix-build-guix-0.13.0.drv-0/source/tests/syscalls.scm:447 source: + (test-assert + "utmpx-entries" + (match (utmpx-entries) + (((? utmpx? entries) ...) + (every (lambda (entry) + (match (utmpx-user entry) + ((? string?) + (or (eqv? (login-type BOOT_TIME) + (utmpx-login-type entry)) + (> (utmpx-pid entry) 0))) + (#f #t))) + entries)))) actual-value: #t result: PASS test-name: read-utmpx, EOF location: /tmp/guix-build-guix-0.13.0.drv-0/source/tests/syscalls.scm:459 source: + (test-assert + "read-utmpx, EOF" + (eof-object? (read-utmpx (%make-void-port "r")))) actual-value: #t result: PASS test-name: read-utmpx location: /tmp/guix-build-guix-0.13.0.drv-0/source/tests/syscalls.scm:464 source: + (test-assert + "read-utmpx" + (let ((result + (call-with-input-file + "/var/run/utmpx" + read-utmpx))) + (or (utmpx? result) (eof-object? result)))) result: SKIP SKIP: tests/gremlin =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D test-name: elf-dynamic-info-needed, executable location: /tmp/guix-build-guix-0.13.0.drv-0/source/tests/gremlin.scm:44 source: + (test-assert + "elf-dynamic-info-needed, executable" + (let* ((elf (call-with-input-file %guile-executable read-elf)) + (dyninfo (elf-dynamic-info elf))) + (or (not dyninfo) + (lset<=3D + string=3D? + (list (string-append "libguile-" (effective-version)) + "libgc" + "libunistring" + "libffi") + (map (lambda (lib) + (string-take lib (string-contains lib ".so"))) + (elf-dynamic-info-needed dyninfo)))))) result: SKIP test-name: expand-origin location: /tmp/guix-build-guix-0.13.0.drv-0/source/tests/gremlin.scm:55 source: + (test-equal + "expand-origin" + '("OOO/../lib" + "OOO" + "../OOO/bar/OOO/baz" + "ORIGIN/foo") + (map (cut expand-origin <> "OOO") + '("$ORIGIN/../lib" + "${ORIGIN}" + "../${ORIGIN}/bar/$ORIGIN/baz" + "ORIGIN/foo"))) expected-value: ("OOO/../lib" "OOO" "../OOO/bar/OOO/baz" "ORIGIN/foo") actual-value: ("OOO/../lib" "OOO" "../OOO/bar/OOO/baz" "ORIGIN/foo") result: PASS SKIP: tests/containers =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D test-name: call-with-container, exit with 0 when there is no error location: /tmp/guix-build-guix-0.13.0.drv-0/source/tests/containers.scm:42 source: + (test-assert + "call-with-container, exit with 0 when there is no error" + (zero? (call-with-container + '() + (const #t) + #:namespaces + '(user)))) result: SKIP test-name: call-with-container, user namespace location: /tmp/guix-build-guix-0.13.0.drv-0/source/tests/containers.scm:48 source: + (test-assert + "call-with-container, user namespace" + (zero? (call-with-container + '() + (lambda () + (assert-exit + (and (zero? (getuid)) (zero? (getgid))))) + #:namespaces + '(user)))) result: SKIP test-name: call-with-container, uts namespace location: /tmp/guix-build-guix-0.13.0.drv-0/source/tests/containers.scm:58 source: + (test-assert + "call-with-container, uts namespace" + (zero? (call-with-container + '() + (lambda () + (sethostname "test-container") + (primitive-exit 0)) + #:namespaces + '(user uts)))) result: SKIP test-name: call-with-container, pid namespace location: /tmp/guix-build-guix-0.13.0.drv-0/source/tests/containers.scm:70 source: + (test-assert + "call-with-container, pid namespace" + (zero? (call-with-container + '() + (lambda () + (match (primitive-fork) + (0 (assert-exit (=3D 2 (getpid)))) + (pid (primitive-exit + (match (waitpid pid) + ((_ . status) + (status:exit-val status))))))) + #:namespaces + '(user pid)))) result: SKIP test-name: call-with-container, mnt namespace location: /tmp/guix-build-guix-0.13.0.drv-0/source/tests/containers.scm:87 source: + (test-assert + "call-with-container, mnt namespace" + (zero? (call-with-container + (list (file-system + (device "none") + (mount-point "/testing") + (type "tmpfs") + (check? #f))) + (lambda () + (assert-exit (file-exists? "/testing"))) + #:namespaces + '(user mnt)))) result: SKIP test-name: call-with-container, mnt namespace, wrong bind mount location: /tmp/guix-build-guix-0.13.0.drv-0/source/tests/containers.scm:100 source: + (test-equal + "call-with-container, mnt namespace, wrong bind mount" + `(system-error ,ENOENT) + (catch 'system-error + (lambda () + (call-with-container + (list (file-system + (device "/does-not-exist") + (mount-point "/foo") + (type "none") + (flags '(bind-mount)) + (check? #f))) + (const #t) + #:namespaces + '(user mnt))) + (lambda args + (list 'system-error (system-error-errno args))))) result: SKIP test-name: call-with-container, all namespaces location: /tmp/guix-build-guix-0.13.0.drv-0/source/tests/containers.scm:118 source: + (test-assert + "call-with-container, all namespaces" + (zero? (call-with-container + '() + (lambda () (primitive-exit 0))))) result: SKIP test-name: container-excursion location: /tmp/guix-build-guix-0.13.0.drv-0/source/tests/containers.scm:126 source: + (test-assert + "container-excursion" + (call-with-temporary-directory + (lambda (root) + (match (list (pipe) (pipe)) + (((start-in . start-out) (end-in . end-out)) + (define (container) + (close end-out) + (close start-in) + (write 'ready start-out) + (close start-out) + (read end-in) + (close end-in)) + (define (namespaces pid) + (let ((pid (number->string pid))) + (map (lambda (ns) + (readlink (string-append "/proc/" pid "/ns/" ns)= )) + '("user" "ipc" "uts" "net" "pid" "mnt")))) + (let* ((pid (run-container root '() %namespaces 1 container= )) + (container-namespaces (namespaces pid)) + (result + (begin + (close start-out) + (read start-in) + (close start-in) + (container-excursion + pid + (lambda () + (match (primitive-fork) + (0 + (assert-exit + (equal? + container-namespaces + (namespaces (getpid))))) + (fork-pid + (match (waitpid fork-pid) + ((_ . status) + (primitive-exit + (status:exit-val + status))))))))))) + (close end-in) + (write 'done end-out) + (close end-out) + (waitpid pid) + (zero? result))))))) result: SKIP test-name: container-excursion, same namespaces location: /tmp/guix-build-guix-0.13.0.drv-0/source/tests/containers.scm:184 source: + (test-equal + "container-excursion, same namespaces" + 42 + (container-excursion + (getpid) + (lambda () (primitive-exit 42)))) result: SKIP test-name: container-excursion* location: /tmp/guix-build-guix-0.13.0.drv-0/source/tests/containers.scm:194 source: + (test-assert + "container-excursion*" + (call-with-temporary-directory + (lambda (root) + (define (namespaces pid) + (let ((pid (number->string pid))) + (map (lambda (ns) + (readlink (string-append "/proc/" pid "/ns/" ns))) + '("user" "ipc" "uts" "net" "pid" "mnt")))) + (let* ((pid (run-container + root + '() + %namespaces + 1 + (lambda () (sleep 100)))) + (result + (container-excursion* + pid + (lambda () (namespaces 1))))) + (kill pid SIGKILL) + (equal? result (namespaces pid)))))) result: SKIP test-name: container-excursion*, same namespaces location: /tmp/guix-build-guix-0.13.0.drv-0/source/tests/containers.scm:215 source: + (test-equal + "container-excursion*, same namespaces" + 42 + (container-excursion* + (getpid) + (lambda () (* 6 7)))) result: SKIP SKIP: tests/pack =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D random seed for tests: 1495528148 test-name: self-contained-tarball location: /tmp/guix-build-guix-0.13.0.drv-0/source/tests/pack.scm:54 source: + (test-assert + "self-contained-tarball" + (run-with-store + %store + (mlet* %store-monad + ((profile + (profile-derivation + (packages->manifest (list %bootstrap-guile)) + #:hooks + '() + #:locales? + #f)) + (tarball + (self-contained-tarball + "pack" + profile + #:symlinks + '(("/bin/Guile" -> "bin/guile")) + #:compressor + %gzip-compressor + #:tar + %tar-bootstrap)) + (check (gexp->derivation + "check-tarball" + (gexp (let ((guile (string-append + "." + (ungexp profile) + "/bin"))) + (setenv + "PATH" + (string-append + (ungexp %tar-bootstrap) + "/bin")) + (system* "tar" "xvf" (ungexp tarball)) + (mkdir (ungexp output)) + (exit (and (file-exists? + (string-append guile "/guile")) + (string=3D? + (string-append + (ungexp %bootstrap-guile) + "/bin") + (readlink guile)) + (string=3D? + (string-append + (string-drop guile 1) + "/guile") + (readlink "bin/Guile"))))))))) + (built-derivations (list check))) + #:guile-for-build + (%guile-for-build))) result: SKIP SKIP: tests/pypi =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D test-name: guix-package->pypi-name, old URL style location: /tmp/guix-build-guix-0.13.0.drv-0/source/tests/pypi.scm:78 source: + (test-equal + "guix-package->pypi-name, old URL style" + "psutil" + (guix-package->pypi-name + (dummy-package + "foo" + (source + (dummy-origin + (uri "https://pypi.io/packages/source/p/psutil/psutil-4.3.0.tar= .gz")))))) expected-value: "psutil" actual-value: "psutil" result: PASS test-name: guix-package->pypi-name, new URL style location: /tmp/guix-build-guix-0.13.0.drv-0/source/tests/pypi.scm:86 source: + (test-equal + "guix-package->pypi-name, new URL style" + "certbot" + (guix-package->pypi-name + (dummy-package + "foo" + (source + (dummy-origin + (uri "https://pypi.python.org/packages/a2/3b/4756e6a0ceb14e0840= 42a2a65c615d68d25621c6fd446d0fc10d14c4ce7d/certbot-0.8.1.tar.gz")))))) expected-value: "certbot" actual-value: "certbot" result: PASS test-name: guix-package->pypi-name, several URLs location: /tmp/guix-build-guix-0.13.0.drv-0/source/tests/pypi.scm:94 source: + (test-equal + "guix-package->pypi-name, several URLs" + "cram" + (guix-package->pypi-name + (dummy-package + "foo" + (source + (dummy-origin + (uri (list "https://bitheap.org/cram/cram-0.7.tar.gz" + (pypi-uri "cram" "0.7")))))))) expected-value: "cram" actual-value: "cram" result: PASS test-name: pypi->guix-package location: /tmp/guix-build-guix-0.13.0.drv-0/source/tests/pypi.scm:103 source: + (test-assert + "pypi->guix-package" + (mock ((guix import utils) + url-fetch + (lambda (url file-name) + (match url + ("https://example.com/foo-1.0.0.tar.gz" + (begin + (mkdir "foo-1.0.0") + (with-output-to-file + "foo-1.0.0/requirements.txt" + (lambda () (display test-requirements))) + (system* "tar" "czvf" file-name "foo-1.0.0/") + (delete-file-recursively "foo-1.0.0") + (set! test-source-hash + (call-with-input-file file-name port-sha256)))) + ("https://example.com/foo-1.0.0-py2.py3-none-any.whl" + #f) + (_ (error "Unexpected URL: " url))))) + (mock ((guix http-client) + http-fetch + (lambda (url . rest) + (match url + ("https://pypi.python.org/pypi/foo/json" + (values + (open-input-string test-json) + (string-length test-json))) + ("https://example.com/foo-1.0.0-py2.py3-none-any.= whl" + #f) + (_ (error "Unexpected URL: " url))))) + (match (pypi->guix-package "foo") + (('package + ('name "python-foo") + ('version "1.0.0") + ('source + ('origin + ('method 'url-fetch) + ('uri + (string-append + "https://example.com/foo-" + version + ".tar.gz")) + ('sha256 ('base32 (? string? hash))))) + ('build-system 'python-build-system) + ('propagated-inputs + ('quasiquote + (("python-bar" ('unquote 'python-bar)) + ("python-baz" ('unquote 'python-baz))))) + ('home-page "http://example.com") + ('synopsis "summary") + ('description "summary") + ('license 'license:lgpl2.0)) + (string=3D? + (bytevector->nix-base32-string test-source-hash)f= oo-1.0.0/ foo-1.0.0/requirements.txt random seed for tests: 1495528227 + hash)) + (x (pk 'fail x #f)))))) actual-value: #t result: PASS test-name: pypi->guix-package, wheels location: /tmp/guix-build-guix-0.13.0.drv-0/source/tests/pypi.scm:155 source: + (test-assert + "pypi->guix-package, wheels" + (mock ((guix import utils) + url-fetch + (lambda (url file-name) + (match url + ("https://example.com/foo-1.0.0.tar.gz" + (begin + (mkdir "foo-1.0.0") + (with-output-to-file + "foo-1.0.0/requirements.txt" + (lambda () (display test-requirements))) + (system* "tar" "czvf" file-name "foo-1.0.0/") + (delete-file-recursively "foo-1.0.0") + (set! test-source-hash + (call-with-input-file file-name port-sha256)))) + ("https://example.com/foo-1.0.0-py2.py3-none-any.whl" + (begin + (mkdir "foo-1.0.0.dist-info") + (with-output-to-file + "foo-1.0.0.dist-info/metadata.json" + (lambda () (display test-metadata))) + (let ((zip-file (string-append file-name ".zip"))) + (system* + "zip" + zip-file + "foo-1.0.0.dist-info/metadata.json") + (rename-file zip-file file-name)) + (delete-file-recursively "foo-1.0.0.dist-info"))) + (_ (error "Unexpected URL: " url))))) + (mock ((guix http-client) + http-fetch + (lambda (url . rest) + (match url + ("https://pypi.python.org/pypi/foo/json" + (values + (open-input-string test-json) + (string-length test-json))) + ("https://example.com/foo-1.0.0-py2.py3-none-any.= whl" + #f) + (_ (error "Unexpected URL: " url))))) + (match (pypi->guix-package "foo") + (('package + ('name "python-foo") + ('version "1.0.0") + ('source + ('origin + ('method 'url-fetch) + ('uri + (string-append + "https://example.com/foo-" + version + ".tar.gz")) + ('sha256 ('base32 (? string? hash))))) + ('build-system 'python-build-system) + ('propagated-inputs + ('quasiquote + (("python-bar" ('unquote 'python-bar)) + ("python-baz" ('unquote 'python-baz))))) + ('home-page "http://example.com") + ('synopsis "summary") + ('description "summary") + ('license 'license:lgpl2.0)) + (string=3D? + (bytevector->nix-base32-string test-source-hash) + hash)) + (x (pk 'fail x #f)))))) result: SKIP SKIP: tests/guix-package-net =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D + guix package --version guix package (GNU Guix)=20 Copyright (C) 2017 the Guix authors License GPLv3+: GNU GPL version 3 or later This is free software: you are free to change and redistribute it. There is NO WARRANTY, to the extent permitted by law. + guile -c '(getaddrinfo "www.gnu.org" "80" AI_NUMERICSERV)' + exit 77 ./test-env: line 1: 14603 Terminated "/tmp/guix-build-guix-0.1= 3.0.drv-0/source/pre-inst-env" "/tmp/guix-build-guix-0.13.0.drv-0/source/gu= ix-daemon" --disable-chroot --substitute-urls=3D"$GUIX_BINARY_SUBSTITUTE_UR= L" SKIP tests/guix-package-net.sh (exit status: 77) SKIP: tests/guix-environment-container =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D + set -e + exit 77 ./test-env: line 1: 15084 Terminated "/tmp/guix-build-guix-0.1= 3.0.drv-0/source/pre-inst-env" "/tmp/guix-build-guix-0.13.0.drv-0/source/gu= ix-daemon" --disable-chroot --substitute-urls=3D"$GUIX_BINARY_SUBSTITUTE_UR= L" SKIP tests/guix-environment-container.sh (exit status: 77) --=20 Example of the problems in top posting: A: Because it messes up the order in which people normally read text. Q: Why is top-posting such a bad thing? A: Top-posting. Q: What is the most annoying thing in e-mail? A: No. Q: Should I leave quotations after my reply? Saluton, Quiliro 0987631031