CLONE_NEWUSER tests fail with EPERM instead of being skipped on Grsecurity kernels

DoneSubmitted by sapientech.
Details
2 participants
  • Ludovic Courtès
  • sapientech
Owner
unassigned
Severity
normal
S
S
sapientech wrote on 30 Jul 2016 01:26
guix make tests failure
(address . bug-guix@gnu.org)
4c03321977ef605cc34a23986d83ce47@openmailbox.org
Hi all,
Attached is the output log of `make tests`. Commands leading up to make tests:
$ guix environment guix --ad-hoc git vim$ ./bootstrap$ ./configure$ make tests
This file contains any messages produced by compilers whilerunning configure, to aid debugging if configure makes a mistake.
It was created by GNU Guix configure 0.10.0, which wasgenerated by GNU Autoconf 2.69. Invocation command line was
$ ./configure
## --------- #### Platform. #### --------- ##
hostname = freetopuname -m = x86_64uname -r = 4.6.4-gnu-201607192040-1-grsecuname -s = Linuxuname -v = #1 SMP PREEMPT Wed Jul 20 15:37:34 UYT 2016
/usr/bin/uname -p = unknown/bin/uname -X = unknown
/bin/arch = unknown/usr/bin/arch -k = unknown/usr/convex/getsysinfo = unknown/usr/bin/hostinfo = unknown/bin/machine = unknown/usr/bin/oslevel = unknown/bin/universe = unknown
PATH: /gnu/store/32ncwkhjmzyq7j7bq2xz7lf3r39x0rh7-profile/binPATH: /gnu/store/32ncwkhjmzyq7j7bq2xz7lf3r39x0rh7-profile/sbinPATH: /usr/local/sbinPATH: /usr/local/binPATH: /usr/binPATH: /usr/lib/jvm/default/binPATH: /usr/bin/site_perlPATH: /usr/bin/vendor_perlPATH: /usr/bin/core_perlPATH: /home/sapientech/.guix-profile/binPATH: /home/sapientech/.guix-profile/sbin

## ----------- #### Core tests. #### ----------- ##
configure:2574: checking for a BSD-compatible installconfigure:2642: result: /gnu/store/32ncwkhjmzyq7j7bq2xz7lf3r39x0rh7-profile/bin/install -cconfigure:2653: checking whether build environment is saneconfigure:2708: result: yesconfigure:2859: checking for a thread-safe mkdir -pconfigure:2898: result: /gnu/store/32ncwkhjmzyq7j7bq2xz7lf3r39x0rh7-profile/bin/mkdir -pconfigure:2905: checking for gawkconfigure:2921: found /gnu/store/32ncwkhjmzyq7j7bq2xz7lf3r39x0rh7-profile/bin/gawkconfigure:2932: result: gawkconfigure:2943: checking whether make sets $(MAKE)configure:2965: result: yesconfigure:2994: checking whether make supports nested variablesconfigure:3011: result: yesconfigure:3150: checking whether make supports nested variablesconfigure:3167: result: yesconfigure:3194: checking for style of include used by makeconfigure:3222: result: GNUconfigure:3293: checking for gccconfigure:3309: found /gnu/store/32ncwkhjmzyq7j7bq2xz7lf3r39x0rh7-profile/bin/gccconfigure:3320: result: gccconfigure:3549: checking for C compiler versionconfigure:3558: gcc --version >&5gcc (GCC) 4.9.3Copyright (C) 2015 Free Software Foundation, Inc.This is free software; see the source for copying conditions. There is NOwarranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
configure:3569: $? = 0configure:3558: gcc -v >&5Using built-in specs.COLLECT_GCC=gccCOLLECT_LTO_WRAPPER=/gnu/store/sjvcirri2bg7q5hlrkaywhmxllik0cfx-gcc-4.9.3/libexec/gcc/x86_64-unknown-linux-gnu/4.9.3/lto-wrapperTarget: x86_64-unknown-linux-gnuConfigured with: Thread model: posixgcc version 4.9.3 (GCC) configure:3569: $? = 0configure:3558: gcc -V >&5gcc: error: unrecognized command line option '-V'gcc: fatal error: no input filescompilation terminated.configure:3569: $? = 1configure:3558: gcc -qversion >&5gcc: error: unrecognized command line option '-qversion'gcc: fatal error: no input filescompilation terminated.configure:3569: $? = 1configure:3589: checking whether the C compiler worksconfigure:3611: gcc conftest.c >&5configure:3615: $? = 0configure:3663: result: yesconfigure:3666: checking for C compiler default output file nameconfigure:3668: result: a.outconfigure:3674: checking for suffix of executablesconfigure:3681: gcc -o conftest conftest.c >&5configure:3685: $? = 0configure:3707: result: configure:3729: checking whether we are cross compilingconfigure:3737: gcc -o conftest conftest.c >&5configure:3741: $? = 0configure:3748: ./conftestconfigure:3752: $? = 0configure:3767: result: noconfigure:3772: checking for suffix of object filesconfigure:3794: gcc -c conftest.c >&5configure:3798: $? = 0configure:3819: result: oconfigure:3823: checking whether we are using the GNU C compilerconfigure:3842: gcc -c conftest.c >&5configure:3842: $? = 0configure:3851: result: yesconfigure:3860: checking whether gcc accepts -gconfigure:3880: gcc -c -g conftest.c >&5configure:3880: $? = 0configure:3921: result: yesconfigure:3938: checking for gcc option to accept ISO C89configure:4001: gcc -c -g -O2 conftest.c >&5configure:4001: $? = 0configure:4014: result: none neededconfigure:4039: checking whether gcc understands -c and -o togetherconfigure:4061: gcc -c conftest.c -o conftest2.oconfigure:4064: $? = 0configure:4061: gcc -c conftest.c -o conftest2.oconfigure:4064: $? = 0configure:4076: result: yesconfigure:4095: checking dependency style of gccconfigure:4206: result: gcc3configure:4227: checking how to run the C preprocessorconfigure:4258: gcc -E conftest.cconfigure:4258: $? = 0configure:4272: gcc -E conftest.cconftest.c:11:28: fatal error: ac_nonexistent.h: No such file or directory #include <ac_nonexistent.h> ^compilation terminated.configure:4272: $? = 1configure: failed program was:| /* confdefs.h */| #define PACKAGE_NAME "GNU Guix"| #define PACKAGE_TARNAME "guix"| #define PACKAGE_VERSION "0.10.0"| #define PACKAGE_STRING "GNU Guix 0.10.0"| #define PACKAGE_BUGREPORT "bug-guix@gnu.org"| #define PACKAGE_URL "http://www.gnu.org/software/guix/"| #define PACKAGE "guix"| #define VERSION "0.10.0"| /* end confdefs.h. */| #include <ac_nonexistent.h>configure:4297: result: gcc -Econfigure:4317: gcc -E conftest.cconfigure:4317: $? = 0configure:4331: gcc -E conftest.cconftest.c:11:28: fatal error: ac_nonexistent.h: No such file or directory #include <ac_nonexistent.h> ^compilation terminated.configure:4331: $? = 1configure: failed program was:| /* confdefs.h */| #define PACKAGE_NAME "GNU Guix"| #define PACKAGE_TARNAME "guix"| #define PACKAGE_VERSION "0.10.0"| #define PACKAGE_STRING "GNU Guix 0.10.0"| #define PACKAGE_BUGREPORT "bug-guix@gnu.org"| #define PACKAGE_URL "http://www.gnu.org/software/guix/"| #define PACKAGE "guix"| #define VERSION "0.10.0"| /* end confdefs.h. */| #include <ac_nonexistent.h>configure:4360: checking for grep that handles long lines and -econfigure:4418: result: /gnu/store/32ncwkhjmzyq7j7bq2xz7lf3r39x0rh7-profile/bin/grepconfigure:4423: checking for egrepconfigure:4485: result: /gnu/store/32ncwkhjmzyq7j7bq2xz7lf3r39x0rh7-profile/bin/grep -Econfigure:4490: checking for ANSI C header filesconfigure:4510: gcc -c -g -O2 conftest.c >&5configure:4510: $? = 0configure:4583: gcc -o conftest -g -O2 conftest.c >&5configure:4583: $? = 0configure:4583: ./conftestconfigure:4583: $? = 0configure:4594: result: yesconfigure:4607: checking for sys/types.hconfigure:4607: gcc -c -g -O2 conftest.c >&5configure:4607: $? = 0configure:4607: result: yesconfigure:4607: checking for sys/stat.hconfigure:4607: gcc -c -g -O2 conftest.c >&5configure:4607: $? = 0configure:4607: result: yesconfigure:4607: checking for stdlib.hconfigure:4607: gcc -c -g -O2 conftest.c >&5configure:4607: $? = 0configure:4607: result: yesconfigure:4607: checking for string.hconfigure:4607: gcc -c -g -O2 conftest.c >&5configure:4607: $? = 0configure:4607: result: yesconfigure:4607: checking for memory.hconfigure:4607: gcc -c -g -O2 conftest.c >&5configure:4607: $? = 0configure:4607: result: yesconfigure:4607: checking for strings.hconfigure:4607: gcc -c -g -O2 conftest.c >&5configure:4607: $? = 0configure:4607: result: yesconfigure:4607: checking for inttypes.hconfigure:4607: gcc -c -g -O2 conftest.c >&5configure:4607: $? = 0configure:4607: result: yesconfigure:4607: checking for stdint.hconfigure:4607: gcc -c -g -O2 conftest.c >&5configure:4607: $? = 0configure:4607: result: yesconfigure:4607: checking for unistd.hconfigure:4607: gcc -c -g -O2 conftest.c >&5configure:4607: $? = 0configure:4607: result: yesconfigure:4620: checking minix/config.h usabilityconfigure:4620: gcc -c -g -O2 conftest.c >&5conftest.c:54:26: fatal error: minix/config.h: No such file or directory #include <minix/config.h> ^compilation terminated.configure:4620: $? = 1configure: failed program was:| /* confdefs.h */| #define PACKAGE_NAME "GNU Guix"| #define PACKAGE_TARNAME "guix"| #define PACKAGE_VERSION "0.10.0"| #define PACKAGE_STRING "GNU Guix 0.10.0"| #define PACKAGE_BUGREPORT "bug-guix@gnu.org"| #define PACKAGE_URL "http://www.gnu.org/software/guix/"| #define PACKAGE "guix"| #define VERSION "0.10.0"| #define STDC_HEADERS 1| #define HAVE_SYS_TYPES_H 1| #define HAVE_SYS_STAT_H 1| #define HAVE_STDLIB_H 1| #define HAVE_STRING_H 1| #define HAVE_MEMORY_H 1| #define HAVE_STRINGS_H 1| #define HAVE_INTTYPES_H 1| #define HAVE_STDINT_H 1| #define HAVE_UNISTD_H 1| /* end confdefs.h. */| #include <stdio.h>| #ifdef HAVE_SYS_TYPES_H| # include <sys/types.h>| #endif| #ifdef HAVE_SYS_STAT_H| # include <sys/stat.h>| #endif| #ifdef STDC_HEADERS| # include <stdlib.h>| # include <stddef.h>| #else| # ifdef HAVE_STDLIB_H| # include <stdlib.h>| # endif| #endif| #ifdef HAVE_STRING_H| # if !defined STDC_HEADERS && defined HAVE_MEMORY_H| # include <memory.h>| # endif| # include <string.h>| #endif| #ifdef HAVE_STRINGS_H| # include <strings.h>| #endif| #ifdef HAVE_INTTYPES_H| # include <inttypes.h>| #endif| #ifdef HAVE_STDINT_H| # include <stdint.h>| #endif| #ifdef HAVE_UNISTD_H| # include <unistd.h>| #endif| #include <minix/config.h>configure:4620: result: noconfigure:4620: checking minix/config.h presenceconfigure:4620: gcc -E conftest.cconftest.c:21:26: fatal error: minix/config.h: No such file or directory #include <minix/config.h> ^compilation terminated.configure:4620: $? = 1configure: failed program was:| /* confdefs.h */| #define PACKAGE_NAME "GNU Guix"| #define PACKAGE_TARNAME "guix"| #define PACKAGE_VERSION "0.10.0"| #define PACKAGE_STRING "GNU Guix 0.10.0"| #define PACKAGE_BUGREPORT "bug-guix@gnu.org"| #define PACKAGE_URL "http://www.gnu.org/software/guix/"| #define PACKAGE "guix"| #define VERSION "0.10.0"| #define STDC_HEADERS 1| #define HAVE_SYS_TYPES_H 1| #define HAVE_SYS_STAT_H 1| #define HAVE_STDLIB_H 1| #define HAVE_STRING_H 1| #define HAVE_MEMORY_H 1| #define HAVE_STRINGS_H 1| #define HAVE_INTTYPES_H 1| #define HAVE_STDINT_H 1| #define HAVE_UNISTD_H 1| /* end confdefs.h. */| #include <minix/config.h>configure:4620: result: noconfigure:4620: checking for minix/config.hconfigure:4620: result: noconfigure:4641: checking whether it is safe to define __EXTENSIONS__configure:4659: gcc -c -g -O2 conftest.c >&5configure:4659: $? = 0configure:4666: result: yesconfigure:4689: checking whether NLS is requestedconfigure:4698: result: yesconfigure:4739: checking for msgfmtconfigure: trying /gnu/store/32ncwkhjmzyq7j7bq2xz7lf3r39x0rh7-profile/bin/msgfmt...0 translated messages.configure:4771: result: /gnu/store/32ncwkhjmzyq7j7bq2xz7lf3r39x0rh7-profile/bin/msgfmtconfigure:4780: checking for gmsgfmtconfigure:4811: result: /gnu/store/32ncwkhjmzyq7j7bq2xz7lf3r39x0rh7-profile/bin/msgfmtconfigure:4862: checking for xgettextconfigure: trying /gnu/store/32ncwkhjmzyq7j7bq2xz7lf3r39x0rh7-profile/bin/xgettext.../gnu/store/32ncwkhjmzyq7j7bq2xz7lf3r39x0rh7-profile/bin/xgettext: warning: file '/dev/null' extension '' is unknown; will try Cconfigure:4894: result: /gnu/store/32ncwkhjmzyq7j7bq2xz7lf3r39x0rh7-profile/bin/xgettextconfigure:4940: checking for msgmergeconfigure: trying /gnu/store/32ncwkhjmzyq7j7bq2xz7lf3r39x0rh7-profile/bin/msgmerge...configure:4971: result: /gnu/store/32ncwkhjmzyq7j7bq2xz7lf3r39x0rh7-profile/bin/msgmergeconfigure:5008: checking build system typeconfigure:5022: result: x86_64-unknown-linux-gnuconfigure:5042: checking host system typeconfigure:5055: result: x86_64-unknown-linux-gnuconfigure:5099: checking for ld used by GCCconfigure:5163: result: /gnu/store/32ncwkhjmzyq7j7bq2xz7lf3r39x0rh7-profile/bin/ldconfigure:5170: checking if the linker (/gnu/store/32ncwkhjmzyq7j7bq2xz7lf3r39x0rh7-profile/bin/ld) is GNU ldconfigure:5183: result: yesconfigure:5190: checking for shared library run path originconfigure:5203: result: doneconfigure:5775: checking for CFPreferencesCopyAppValueconfigure:5793: gcc -o conftest -g -O2 conftest.c -Wl,-framework -Wl,CoreFoundation >&5conftest.c:26:42: fatal error: CoreFoundation/CFPreferences.h: No such file or directory #include <CoreFoundation/CFPreferences.h> ^compilation terminated.configure:5793: $? = 1configure: failed program was:| /* confdefs.h */| #define PACKAGE_NAME "GNU Guix"| #define PACKAGE_TARNAME "guix"| #define PACKAGE_VERSION "0.10.0"| #define PACKAGE_STRING "GNU Guix 0.10.0"| #define PACKAGE_BUGREPORT "bug-guix@gnu.org"| #define PACKAGE_URL "http://www.gnu.org/software/guix/"| #define PACKAGE "guix"| #define VERSION "0.10.0"| #define STDC_HEADERS 1| #define HAVE_SYS_TYPES_H 1| #define HAVE_SYS_STAT_H 1| #define HAVE_STDLIB_H 1| #define HAVE_STRING_H 1| #define HAVE_MEMORY_H 1| #define HAVE_STRINGS_H 1| #define HAVE_INTTYPES_H 1| #define HAVE_STDINT_H 1| #define HAVE_UNISTD_H 1| #define __EXTENSIONS__ 1| #define _ALL_SOURCE 1| #define _GNU_SOURCE 1| #define _POSIX_PTHREAD_SEMANTICS 1| #define _TANDEM_SOURCE 1| /* end confdefs.h. */| #include <CoreFoundation/CFPreferences.h>| int| main ()| {| CFPreferencesCopyAppValue(NULL, NULL)| ;| return 0;| }configure:5802: result: noconfigure:5809: checking for CFLocaleCopyCurrentconfigure:5827: gcc -o conftest -g -O2 conftest.c -Wl,-framework -Wl,CoreFoundation >&5conftest.c:26:37: fatal error: CoreFoundation/CFLocale.h: No such file or directory #include <CoreFoundation/CFLocale.h> ^compilation terminated.configure:5827: $? = 1configure: failed program was:| /* confdefs.h */| #define PACKAGE_NAME "GNU Guix"| #define PACKAGE_TARNAME "guix"| #define PACKAGE_VERSION "0.10.0"| #define PACKAGE_STRING "GNU Guix 0.10.0"| #define PACKAGE_BUGREPORT "bug-guix@gnu.org"| #define PACKAGE_URL "http://www.gnu.org/software/guix/"| #define PACKAGE "guix"| #define VERSION "0.10.0"| #define STDC_HEADERS 1| #define HAVE_SYS_TYPES_H 1| #define HAVE_SYS_STAT_H 1| #define HAVE_STDLIB_H 1| #define HAVE_STRING_H 1| #define HAVE_MEMORY_H 1| #define HAVE_STRINGS_H 1| #define HAVE_INTTYPES_H 1| #define HAVE_STDINT_H 1| #define HAVE_UNISTD_H 1| #define __EXTENSIONS__ 1| #define _ALL_SOURCE 1| #define _GNU_SOURCE 1| #define _POSIX_PTHREAD_SEMANTICS 1| #define _TANDEM_SOURCE 1| /* end confdefs.h. */| #include <CoreFoundation/CFLocale.h>| int| main ()| {| CFLocaleCopyCurrent();| ;| return 0;| }configure:5836: result: noconfigure:5885: checking for GNU gettext in libcconfigure:5905: gcc -o conftest -g -O2 conftest.c >&5configure:5905: $? = 0configure:5914: result: yesconfigure:6705: checking whether to use NLSconfigure:6707: result: yesconfigure:6710: checking where the gettext function comes fromconfigure:6721: result: libcconfigure:6787: checking for sedconfigure:6805: found /gnu/store/32ncwkhjmzyq7j7bq2xz7lf3r39x0rh7-profile/bin/sedconfigure:6817: result: /gnu/store/32ncwkhjmzyq7j7bq2xz7lf3r39x0rh7-profile/bin/sedconfigure:6867: checking for the Guix system typeconfigure:6869: result: x86_64-linuxconfigure:6923: checking for the store directoryconfigure:6925: result: /gnu/storeconfigure:6947: checking the length of the installed socket file nameconfigure:6954: result: 40configure:6958: checking for unit test root directoryconfigure:6965: result: /home/sapientech/Dev/guix/guix_wip/test-tmpconfigure:6970: checking the length of the socket file name used in testsconfigure:6977: result: 75configure:6981: checking the length of a typical hash bang lineconfigure:6988: result: 73configure:6993: checking the length of a hash bang line used in testsconfigure:7000: result: 112configure:7094: checking for pkg-configconfigure:7112: found /gnu/store/32ncwkhjmzyq7j7bq2xz7lf3r39x0rh7-profile/bin/pkg-configconfigure:7124: result: /gnu/store/32ncwkhjmzyq7j7bq2xz7lf3r39x0rh7-profile/bin/pkg-configconfigure:7149: checking pkg-config is at least version 0.9.0configure:7152: result: yesconfigure:7162: checking for GUILEconfigure:7169: $PKG_CONFIG --exists --print-errors "guile-2.0 >= 2.0.7"configure:7172: $? = 0configure:7186: $PKG_CONFIG --exists --print-errors "guile-2.0 >= 2.0.7"configure:7189: $? = 0configure:7247: result: yesconfigure:7253: checking for guileconfigure:7271: found /gnu/store/32ncwkhjmzyq7j7bq2xz7lf3r39x0rh7-profile/bin/guileconfigure:7283: result: /gnu/store/32ncwkhjmzyq7j7bq2xz7lf3r39x0rh7-profile/bin/guileconfigure:7293: checking for guildconfigure:7311: found /gnu/store/32ncwkhjmzyq7j7bq2xz7lf3r39x0rh7-profile/bin/guildconfigure:7323: result: /gnu/store/32ncwkhjmzyq7j7bq2xz7lf3r39x0rh7-profile/bin/guildconfigure:7337: checking for guileconfigure:7367: result: /gnu/store/32ncwkhjmzyq7j7bq2xz7lf3r39x0rh7-profile/bin/guileconfigure:7396: checking for Guile version >= 2.0configure:7417: result: 2.0.11configure:7422: checking for guildconfigure:7452: result: /gnu/store/32ncwkhjmzyq7j7bq2xz7lf3r39x0rh7-profile/bin/guildconfigure:7464: checking for guile-configconfigure:7482: found /gnu/store/32ncwkhjmzyq7j7bq2xz7lf3r39x0rh7-profile/bin/guile-configconfigure:7494: result: /gnu/store/32ncwkhjmzyq7j7bq2xz7lf3r39x0rh7-profile/bin/guile-configconfigure:7549: checking if (json) is availableconfigure:7556: result: yesconfigure:7572: checking whether /gnu/store/32ncwkhjmzyq7j7bq2xz7lf3r39x0rh7-profile/bin/guile provides feature 'regex'configure:7576: result: yesconfigure:7572: checking whether /gnu/store/32ncwkhjmzyq7j7bq2xz7lf3r39x0rh7-profile/bin/guile provides feature 'posix'configure:7576: result: yesconfigure:7572: checking whether /gnu/store/32ncwkhjmzyq7j7bq2xz7lf3r39x0rh7-profile/bin/guile provides feature 'socket'configure:7576: result: yesconfigure:7572: checking whether /gnu/store/32ncwkhjmzyq7j7bq2xz7lf3r39x0rh7-profile/bin/guile provides feature 'net-db'configure:7576: result: yesconfigure:7572: checking whether /gnu/store/32ncwkhjmzyq7j7bq2xz7lf3r39x0rh7-profile/bin/guile provides feature 'threads'configure:7576: result: yesconfigure:7587: checking whether (srfi srfi-37) is affected by http://bugs.gnu.org/13176configure:7603: result: noconfigure:7616: checking whether libc provides 'mount'configure:7631: result: yesconfigure:7645: checking for gzipconfigure:7663: found /gnu/store/32ncwkhjmzyq7j7bq2xz7lf3r39x0rh7-profile/bin/gzipconfigure:7675: result: /gnu/store/32ncwkhjmzyq7j7bq2xz7lf3r39x0rh7-profile/bin/gzipconfigure:7685: checking for bzip2configure:7703: found /gnu/store/32ncwkhjmzyq7j7bq2xz7lf3r39x0rh7-profile/bin/bzip2configure:7715: result: /gnu/store/32ncwkhjmzyq7j7bq2xz7lf3r39x0rh7-profile/bin/bzip2configure:7725: checking for xzconfigure:7743: found /gnu/store/32ncwkhjmzyq7j7bq2xz7lf3r39x0rh7-profile/bin/xzconfigure:7755: result: /gnu/store/32ncwkhjmzyq7j7bq2xz7lf3r39x0rh7-profile/bin/xzconfigure:7783: checking for nix-instantiateconfigure:7816: result: noconfigure:7823: checking for nix-hashconfigure:7856: result: noconfigure:7881: checking for Nixpkgs source treeconfigure:7888: result: not foundconfigure:7932: checking for libgcrypt-configconfigure:7950: found /gnu/store/32ncwkhjmzyq7j7bq2xz7lf3r39x0rh7-profile/bin/libgcrypt-configconfigure:7962: result: /gnu/store/32ncwkhjmzyq7j7bq2xz7lf3r39x0rh7-profile/bin/libgcrypt-configconfigure:7970: checking libgcrypt's library directoryconfigure:7981: result: /gnu/store/7wfbprp1b9b25crlidg6h7b6hpib2b99-libgcrypt-1.6.5/libconfigure:7993: checking for libgcrypt shared library nameconfigure:7995: result: /gnu/store/7wfbprp1b9b25crlidg6h7b6hpib2b99-libgcrypt-1.6.5/lib/libgcryptconfigure:8001: checking whether /gnu/store/7wfbprp1b9b25crlidg6h7b6hpib2b99-libgcrypt-1.6.5/lib/libgcrypt can be dynamically loadedconfigure:8016: result: yesconfigure:8025: checking zlib's library directoryconfigure:8032: result: /gnu/store/hsxhfmjgh8m4c0pavq3gd3gcrn8zrgxj-zlib-1.2.8/libconfigure:8041: checking for zlib's shared library nameconfigure:8043: result: /gnu/store/hsxhfmjgh8m4c0pavq3gd3gcrn8zrgxj-zlib-1.2.8/lib/libzconfigure:8134: checking whether to build daemonconfigure:8136: result: yesconfigure:8197: checking for g++configure:8213: found /gnu/store/32ncwkhjmzyq7j7bq2xz7lf3r39x0rh7-profile/bin/g++configure:8224: result: g++configure:8251: checking for C++ compiler versionconfigure:8260: g++ --version >&5g++ (GCC) 4.9.3Copyright (C) 2015 Free Software Foundation, Inc.This is free software; see the source for copying conditions. There is NOwarranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
configure:8271: $? = 0configure:8260: g++ -v >&5Using built-in specs.COLLECT_GCC=g++COLLECT_LTO_WRAPPER=/gnu/store/sjvcirri2bg7q5hlrkaywhmxllik0cfx-gcc-4.9.3/libexec/gcc/x86_64-unknown-linux-gnu/4.9.3/lto-wrapperTarget: x86_64-unknown-linux-gnuConfigured with: Thread model: posixgcc version 4.9.3 (GCC) configure:8271: $? = 0configure:8260: g++ -V >&5g++: error: unrecognized command line option '-V'g++: fatal error: no input filescompilation terminated.configure:8271: $? = 1configure:8260: g++ -qversion >&5g++: error: unrecognized command line option '-qversion'g++: fatal error: no input filescompilation terminated.configure:8271: $? = 1configure:8275: checking whether we are using the GNU C++ compilerconfigure:8294: g++ -c conftest.cpp >&5configure:8294: $? = 0configure:8303: result: yesconfigure:8312: checking whether g++ accepts -gconfigure:8332: g++ -c -g conftest.cpp >&5configure:8332: $? = 0configure:8373: result: yesconfigure:8398: checking dependency style of g++configure:8509: result: gcc3configure:8537: checking whether g++ supports C++11configure:8561: g++ -c -std=c++11 -g -O2 conftest.cpp >&5configure:8561: $? = 0configure:8570: result: yesconfigure:8621: checking for ranlibconfigure:8637: found /gnu/store/32ncwkhjmzyq7j7bq2xz7lf3r39x0rh7-profile/bin/ranlibconfigure:8648: result: ranlibconfigure:8680: checking for special C compiler options needed for large filesconfigure:8725: result: noconfigure:8731: checking for _FILE_OFFSET_BITS value needed for large filesconfigure:8756: g++ -c -g -O2 conftest.cpp >&5configure:8756: $? = 0configure:8788: result: noconfigure:8874: checking for BZ2_bzWriteOpen in -lbz2configure:8899: g++ -o conftest -g -O2 conftest.cpp -lbz2 >&5configure:8899: $? = 0configure:8908: result: yesconfigure:8921: checking how to run the C++ preprocessorconfigure:8948: g++ -E conftest.cppconfigure:8948: $? = 0configure:8962: g++ -E conftest.cppconftest.cpp:29:28: fatal error: ac_nonexistent.h: No such file or directory #include <ac_nonexistent.h> ^compilation terminated.configure:8962: $? = 1configure: failed program was:| /* confdefs.h */| #define PACKAGE_NAME "GNU Guix"| #define PACKAGE_TARNAME "guix"| #define PACKAGE_VERSION "0.10.0"| #define PACKAGE_STRING "GNU Guix 0.10.0"| #define PACKAGE_BUGREPORT "bug-guix@gnu.org"| #define PACKAGE_URL "http://www.gnu.org/software/guix/"| #define PACKAGE "guix"| #define VERSION "0.10.0"| #define STDC_HEADERS 1| #define HAVE_SYS_TYPES_H 1| #define HAVE_SYS_STAT_H 1| #define HAVE_STDLIB_H 1| #define HAVE_STRING_H 1| #define HAVE_MEMORY_H 1| #define HAVE_STRINGS_H 1| #define HAVE_INTTYPES_H 1| #define HAVE_STDINT_H 1| #define HAVE_UNISTD_H 1| #define __EXTENSIONS__ 1| #define _ALL_SOURCE 1| #define _GNU_SOURCE 1| #define _POSIX_PTHREAD_SEMANTICS 1| #define _TANDEM_SOURCE 1| #define ENABLE_NLS 1| #define HAVE_GETTEXT 1| #define HAVE_DCGETTEXT 1| /* end confdefs.h. */| #include <ac_nonexistent.h>configure:8987: result: g++ -Econfigure:9007: g++ -E conftest.cppconfigure:9007: $? = 0configure:9021: g++ -E conftest.cppconftest.cpp:29:28: fatal error: ac_nonexistent.h: No such file or directory #include <ac_nonexistent.h> ^compilation terminated.configure:9021: $? = 1configure: failed program was:| /* confdefs.h */| #define PACKAGE_NAME "GNU Guix"| #define PACKAGE_TARNAME "guix"| #define PACKAGE_VERSION "0.10.0"| #define PACKAGE_STRING "GNU Guix 0.10.0"| #define PACKAGE_BUGREPORT "bug-guix@gnu.org"| #define PACKAGE_URL "http://www.gnu.org/software/guix/"| #define PACKAGE "guix"| #define VERSION "0.10.0"| #define STDC_HEADERS 1| #define HAVE_SYS_TYPES_H 1| #define HAVE_SYS_STAT_H 1| #define HAVE_STDLIB_H 1| #define HAVE_STRING_H 1| #define HAVE_MEMORY_H 1| #define HAVE_STRINGS_H 1| #define HAVE_INTTYPES_H 1| #define HAVE_STDINT_H 1| #define HAVE_UNISTD_H 1| #define __EXTENSIONS__ 1| #define _ALL_SOURCE 1| #define _GNU_SOURCE 1| #define _POSIX_PTHREAD_SEMANTICS 1| #define _TANDEM_SOURCE 1| #define ENABLE_NLS 1| #define HAVE_GETTEXT 1| #define HAVE_DCGETTEXT 1| /* end confdefs.h. */| #include <ac_nonexistent.h>configure:9052: checking bzlib.h usabilityconfigure:9052: g++ -c -g -O2 conftest.cpp >&5configure:9052: $? = 0configure:9052: result: yesconfigure:9052: checking bzlib.h presenceconfigure:9052: g++ -E conftest.cppconfigure:9052: $? = 0configure:9052: result: yesconfigure:9052: checking for bzlib.hconfigure:9052: result: yesconfigure:9067: checking for SQLITE3configure:9074: $PKG_CONFIG --exists --print-errors "sqlite3 >= 3.6.19"configure:9077: $? = 0configure:9091: $PKG_CONFIG --exists --print-errors "sqlite3 >= 3.6.19"configure:9094: $? = 0configure:9152: result: yesconfigure:9193: checking for gcry_md_open in -lgcryptconfigure:9218: g++ -o conftest -g -O2 conftest.cpp -lgcrypt >&5configure:9218: $? = 0configure:9227: result: yesconfigure:9235: checking gcrypt.h usabilityconfigure:9235: g++ -c -g -O2 conftest.cpp >&5configure:9235: $? = 0configure:9235: result: yesconfigure:9235: checking gcrypt.h presenceconfigure:9235: g++ -E conftest.cppconfigure:9235: $? = 0configure:9235: result: yesconfigure:9235: checking for gcrypt.hconfigure:9235: result: yesconfigure:9253: checking for chrootconfigure:9253: g++ -o conftest -g -O2 conftest.cpp >&5configure:9253: $? = 0configure:9253: result: yesconfigure:9253: checking for unshareconfigure:9253: g++ -o conftest -g -O2 conftest.cpp >&5configure:9253: $? = 0configure:9253: result: yesconfigure:9265: checking sched.h usabilityconfigure:9265: g++ -c -g -O2 conftest.cpp >&5configure:9265: $? = 0configure:9265: result: yesconfigure:9265: checking sched.h presenceconfigure:9265: g++ -E conftest.cppconfigure:9265: $? = 0configure:9265: result: yesconfigure:9265: checking for sched.hconfigure:9265: result: yesconfigure:9265: checking sys/param.h usabilityconfigure:9265: g++ -c -g -O2 conftest.cpp >&5configure:9265: $? = 0configure:9265: result: yesconfigure:9265: checking sys/param.h presenceconfigure:9265: g++ -E conftest.cppconfigure:9265: $? = 0configure:9265: result: yesconfigure:9265: checking for sys/param.hconfigure:9265: result: yesconfigure:9265: checking sys/mount.h usabilityconfigure:9265: g++ -c -g -O2 conftest.cpp >&5configure:9265: $? = 0configure:9265: result: yesconfigure:9265: checking sys/mount.h presenceconfigure:9265: g++ -E conftest.cppconfigure:9265: $? = 0configure:9265: result: yesconfigure:9265: checking for sys/mount.hconfigure:9265: result: yesconfigure:9265: checking sys/syscall.h usabilityconfigure:9265: g++ -c -g -O2 conftest.cpp >&5configure:9265: $? = 0configure:9265: result: yesconfigure:9265: checking sys/syscall.h presenceconfigure:9265: g++ -E conftest.cppconfigure:9265: $? = 0configure:9265: result: yesconfigure:9265: checking for sys/syscall.hconfigure:9265: result: yesconfigure:9284: checking for lutimesconfigure:9284: g++ -o conftest -g -O2 conftest.cpp >&5configure:9284: $? = 0configure:9284: result: yesconfigure:9284: checking for lchownconfigure:9284: g++ -o conftest -g -O2 conftest.cpp >&5configure:9284: $? = 0configure:9284: result: yesconfigure:9284: checking for posix_fallocateconfigure:9284: g++ -o conftest -g -O2 conftest.cpp >&5configure:9284: $? = 0configure:9284: result: yesconfigure:9284: checking for sched_setaffinityconfigure:9284: g++ -o conftest -g -O2 conftest.cpp >&5configure:9284: $? = 0configure:9284: result: yesconfigure:9284: checking for statvfsconfigure:9284: g++ -o conftest -g -O2 conftest.cpp >&5configure:9284: $? = 0configure:9284: result: yesconfigure:9284: checking for nanosleepconfigure:9284: g++ -o conftest -g -O2 conftest.cpp >&5configure:9284: $? = 0configure:9284: result: yesconfigure:9284: checking for strsignalconfigure:9284: g++ -o conftest -g -O2 conftest.cpp >&5configure:9284: $? = 0configure:9284: result: yesconfigure:9294: checking whether it is possible to create a link to a symlinkconfigure:9298: result: yesconfigure:9317: checking locale usabilityconfigure:9317: g++ -c -g -O2 conftest.cpp >&5configure:9317: $? = 0configure:9317: result: yesconfigure:9317: checking locale presenceconfigure:9317: g++ -E conftest.cppconfigure:9317: $? = 0configure:9317: result: yesconfigure:9317: checking for localeconfigure:9317: result: yesconfigure:9337: checking sys/personality.h usabilityconfigure:9337: g++ -c -g -O2 conftest.cpp >&5configure:9337: $? = 0configure:9337: result: yesconfigure:9337: checking sys/personality.h presenceconfigure:9337: g++ -E conftest.cppconfigure:9337: $? = 0configure:9337: result: yesconfigure:9337: checking for sys/personality.hconfigure:9337: result: yesconfigure:9350: checking linux/fs.h usabilityconfigure:9350: g++ -c -g -O2 conftest.cpp >&5configure:9350: $? = 0configure:9350: result: yesconfigure:9350: checking linux/fs.h presenceconfigure:9350: g++ -E conftest.cppconfigure:9350: $? = 0configure:9350: result: yesconfigure:9350: checking for linux/fs.hconfigure:9350: result: yesconfigure:9361: checking if (gnutls) is availableconfigure:9368: result: yesconfigure:9379: checking for default substitute URLsconfigure:9381: result: https://mirror.hydra.gnu.orgconfigure:9391: checking whether Guile's custom binary input ports support 'setvbuf'configure:9405: result: yesconfigure:9417: checking for unit test root directoryconfigure:9424: result: /home/sapientech/Dev/guix/guix_wip/test-tmpconfigure:9433: checking for guileconfigure:9463: result: /gnu/store/32ncwkhjmzyq7j7bq2xz7lf3r39x0rh7-profile/bin/guileconfigure:9471: checking the current installation's localstatedirconfigure:9485: result: noneconfigure:9563: checking for dotconfigure:9581: found /gnu/store/32ncwkhjmzyq7j7bq2xz7lf3r39x0rh7-profile/bin/dotconfigure:9594: result: /gnu/store/32ncwkhjmzyq7j7bq2xz7lf3r39x0rh7-profile/bin/dotconfigure:9609: checking for emacsconfigure:9625: found /gnu/store/32ncwkhjmzyq7j7bq2xz7lf3r39x0rh7-profile/bin/emacsconfigure:9636: result: emacsconfigure:9660: checking where .elc files should goconfigure:9673: $EMACS -batch -Q -eval '(while load-path (princ (concat (car load-path) "\n")) (setq load-path (cdr load-path)))' </dev/null >conftest.outconfigure:9676: $? = 0configure:9689: result: ${datadir}/emacs/site-lispconfigure:9820: checking that generated files are newer than configureconfigure:9826: result: doneconfigure:9881: creating ./config.status
## ---------------------- #### Running config.status. #### ---------------------- ##
This file was extended by GNU Guix config.status 0.10.0, which wasgenerated by GNU Autoconf 2.69. Invocation command line was
CONFIG_FILES = CONFIG_HEADERS = CONFIG_LINKS = CONFIG_COMMANDS = $ ./config.status
on freetop
config.status:992: creating nix/scripts/list-runtime-rootsconfig.status:992: creating nix/scripts/substituteconfig.status:992: creating nix/scripts/guix-authenticateconfig.status:992: creating nix/scripts/offloadconfig.status:992: creating Makefileconfig.status:992: creating po/guix/Makefile.inconfig.status:992: creating po/packages/Makefile.inconfig.status:992: creating guix/config.scmconfig.status:992: creating scripts/guixconfig.status:992: creating test-envconfig.status:992: creating pre-inst-envconfig.status:992: creating emacs/guix-config.elconfig.status:992: creating emacs/guix-helper.scmconfig.status:992: creating nix/config.hconfig.status:1221: executing depfiles commandsconfig.status:1221: executing po-directories commands
## ---------------- #### Cache variables. #### ---------------- ##
ac_cv_build=x86_64-unknown-linux-gnuac_cv_c_compiler_gnu=yesac_cv_cxx_compiler_gnu=yesac_cv_env_CCC_set=ac_cv_env_CCC_value=ac_cv_env_CC_set=ac_cv_env_CC_value=ac_cv_env_CFLAGS_set=ac_cv_env_CFLAGS_value=ac_cv_env_CPPFLAGS_set=ac_cv_env_CPPFLAGS_value=ac_cv_env_CPP_set=ac_cv_env_CPP_value=ac_cv_env_CXXCPP_set=ac_cv_env_CXXCPP_value=ac_cv_env_CXXFLAGS_set=ac_cv_env_CXXFLAGS_value=ac_cv_env_CXX_set=ac_cv_env_CXX_value=ac_cv_env_EMACSLOADPATH_set=ac_cv_env_EMACSLOADPATH_value=ac_cv_env_EMACS_set=ac_cv_env_EMACS_value=ac_cv_env_GUILE_CFLAGS_set=ac_cv_env_GUILE_CFLAGS_value=ac_cv_env_GUILE_LIBS_set=ac_cv_env_GUILE_LIBS_value=ac_cv_env_LDFLAGS_set=ac_cv_env_LDFLAGS_value=ac_cv_env_LIBS_set=ac_cv_env_LIBS_value=ac_cv_env_PKG_CONFIG_LIBDIR_set=ac_cv_env_PKG_CONFIG_LIBDIR_value=ac_cv_env_PKG_CONFIG_PATH_set=setac_cv_env_PKG_CONFIG_PATH_value=/gnu/store/32ncwkhjmzyq7j7bq2xz7lf3r39x0rh7-profile/lib/pkgconfig::/home/sapientech/.guix-profile/lib/pkgconfigac_cv_env_PKG_CONFIG_set=ac_cv_env_PKG_CONFIG_value=ac_cv_env_SQLITE3_CFLAGS_set=ac_cv_env_SQLITE3_CFLAGS_value=ac_cv_env_SQLITE3_LIBS_set=ac_cv_env_SQLITE3_LIBS_value=ac_cv_env_build_alias_set=ac_cv_env_build_alias_value=ac_cv_env_host_alias_set=ac_cv_env_host_alias_value=ac_cv_env_target_alias_set=ac_cv_env_target_alias_value=ac_cv_func_chroot=yesac_cv_func_lchown=yesac_cv_func_lutimes=yesac_cv_func_nanosleep=yesac_cv_func_posix_fallocate=yesac_cv_func_sched_setaffinity=yesac_cv_func_statvfs=yesac_cv_func_strsignal=yesac_cv_func_unshare=yesac_cv_guix_cbips_support_setvbuf=yesac_cv_guix_cxx11_support=yesac_cv_guix_hash_bang_length=73ac_cv_guix_socket_file_name_length=40ac_cv_guix_srfi_37_broken=noac_cv_guix_test_hash_bang_length=112ac_cv_guix_test_root=/home/sapientech/Dev/guix/guix_wip/test-tmpac_cv_guix_test_socket_file_name_length=75ac_cv_header_bzlib_h=yesac_cv_header_gcrypt_h=yesac_cv_header_inttypes_h=yesac_cv_header_linux_fs_h=yesac_cv_header_locale=yesac_cv_header_memory_h=yesac_cv_header_minix_config_h=noac_cv_header_sched_h=yesac_cv_header_stdc=yesac_cv_header_stdint_h=yesac_cv_header_stdlib_h=yesac_cv_header_string_h=yesac_cv_header_strings_h=yesac_cv_header_sys_mount_h=yesac_cv_header_sys_param_h=yesac_cv_header_sys_personality_h=yesac_cv_header_sys_stat_h=yesac_cv_header_sys_syscall_h=yesac_cv_header_sys_types_h=yesac_cv_header_unistd_h=yesac_cv_host=x86_64-unknown-linux-gnuac_cv_lib_bz2_BZ2_bzWriteOpen=yesac_cv_lib_gcrypt_gcry_md_open=yesac_cv_objext=oac_cv_path_BZIP2=/gnu/store/32ncwkhjmzyq7j7bq2xz7lf3r39x0rh7-profile/bin/bzip2ac_cv_path_DOT_USER_PROGRAM=/gnu/store/32ncwkhjmzyq7j7bq2xz7lf3r39x0rh7-profile/bin/dotac_cv_path_EGREP='/gnu/store/32ncwkhjmzyq7j7bq2xz7lf3r39x0rh7-profile/bin/grep -E'ac_cv_path_GMSGFMT=/gnu/store/32ncwkhjmzyq7j7bq2xz7lf3r39x0rh7-profile/bin/msgfmtac_cv_path_GREP=/gnu/store/32ncwkhjmzyq7j7bq2xz7lf3r39x0rh7-profile/bin/grepac_cv_path_GUILD=/gnu/store/32ncwkhjmzyq7j7bq2xz7lf3r39x0rh7-profile/bin/guildac_cv_path_GUILE=/gnu/store/32ncwkhjmzyq7j7bq2xz7lf3r39x0rh7-profile/bin/guileac_cv_path_GUILE_CONFIG=/gnu/store/32ncwkhjmzyq7j7bq2xz7lf3r39x0rh7-profile/bin/guile-configac_cv_path_GZIP=/gnu/store/32ncwkhjmzyq7j7bq2xz7lf3r39x0rh7-profile/bin/gzipac_cv_path_LIBGCRYPT_CONFIG=/gnu/store/32ncwkhjmzyq7j7bq2xz7lf3r39x0rh7-profile/bin/libgcrypt-configac_cv_path_MSGFMT=/gnu/store/32ncwkhjmzyq7j7bq2xz7lf3r39x0rh7-profile/bin/msgfmtac_cv_path_MSGMERGE=/gnu/store/32ncwkhjmzyq7j7bq2xz7lf3r39x0rh7-profile/bin/msgmergeac_cv_path_SED=/gnu/store/32ncwkhjmzyq7j7bq2xz7lf3r39x0rh7-profile/bin/sedac_cv_path_XGETTEXT=/gnu/store/32ncwkhjmzyq7j7bq2xz7lf3r39x0rh7-profile/bin/xgettextac_cv_path_XZ=/gnu/store/32ncwkhjmzyq7j7bq2xz7lf3r39x0rh7-profile/bin/xzac_cv_path_ac_pt_PKG_CONFIG=/gnu/store/32ncwkhjmzyq7j7bq2xz7lf3r39x0rh7-profile/bin/pkg-configac_cv_path_install='/gnu/store/32ncwkhjmzyq7j7bq2xz7lf3r39x0rh7-profile/bin/install -c'ac_cv_path_mkdir=/gnu/store/32ncwkhjmzyq7j7bq2xz7lf3r39x0rh7-profile/bin/mkdirac_cv_prog_AWK=gawkac_cv_prog_CPP='gcc -E'ac_cv_prog_CXXCPP='g++ -E'ac_cv_prog_EMACS=emacsac_cv_prog_ac_ct_CC=gccac_cv_prog_ac_ct_CXX=g++ac_cv_prog_ac_ct_RANLIB=ranlibac_cv_prog_cc_c89=ac_cv_prog_cc_g=yesac_cv_prog_cxx_g=yesac_cv_prog_make_make_set=yesac_cv_safe_to_define___extensions__=yesac_cv_sys_file_offset_bits=noac_cv_sys_largefile_CC=noacl_cv_hardcode_direct=noacl_cv_hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir'acl_cv_hardcode_libdir_separator=acl_cv_hardcode_minus_L=noacl_cv_libext=aacl_cv_libname_spec='lib$name'acl_cv_library_names_spec='$libname$shrext'acl_cv_path_LD=/gnu/store/32ncwkhjmzyq7j7bq2xz7lf3r39x0rh7-profile/bin/ldacl_cv_prog_gnu_ld=yesacl_cv_rpath=doneacl_cv_shlibext=soacl_cv_wl=-Wl,am_cv_CC_dependencies_compiler_type=gcc3am_cv_CXX_dependencies_compiler_type=gcc3am_cv_lispdir='${datadir}/emacs/site-lisp'am_cv_make_support_nested_variables=yesam_cv_prog_cc_c_o=yesgt_cv_func_CFLocaleCopyCurrent=nogt_cv_func_CFPreferencesCopyAppValue=nogt_cv_func_gnugettext1_libc=yesguix_cv_current_localstatedir=noneguix_cv_libc_has_mount=yesguix_cv_libgcrypt_libdir=/gnu/store/7wfbprp1b9b25crlidg6h7b6hpib2b99-libgcrypt-1.6.5/libguix_cv_libgcrypt_usable_p=yesguix_cv_libz_libdir=/gnu/store/hsxhfmjgh8m4c0pavq3gd3gcrn8zrgxj-zlib-1.2.8/libpkg_cv_GUILE_CFLAGS='-pthread -I/gnu/store/hyk2i7b8mwbrbiyqk5sgrfgds9zvcrn5-guile-2.0.11/include/guile/2.0'pkg_cv_GUILE_LIBS='-L/gnu/store/hyk2i7b8mwbrbiyqk5sgrfgds9zvcrn5-guile-2.0.11/lib -L/gnu/store/my4az71gz8iqd4w8kb34kq7vlk3fcvhm-libgc-7.4.2/lib -lguile-2.0 -lgc'pkg_cv_SQLITE3_CFLAGS=-I/gnu/store/y7h8gf890qaj6f23ryshwxd3r9y96cnc-sqlite-3.10.0/includepkg_cv_SQLITE3_LIBS='-L/gnu/store/y7h8gf890qaj6f23ryshwxd3r9y96cnc-sqlite-3.10.0/lib -lsqlite3'
## ----------------- #### Output variables. #### ----------------- ##
ACLOCAL='${SHELL} /home/sapientech/Dev/guix/guix_wip/build-aux/missing aclocal-1.15'AMDEPBACKSLASH='\'AMDEP_FALSE='#'AMDEP_TRUE=''AMTAR='$${TAR-tar}'AM_BACKSLASH='\'AM_DEFAULT_V='$(AM_DEFAULT_VERBOSITY)'AM_DEFAULT_VERBOSITY='0'AM_V='$(V)'AUTOCONF='${SHELL} /home/sapientech/Dev/guix/guix_wip/build-aux/missing autoconf'AUTOHEADER='${SHELL} /home/sapientech/Dev/guix/guix_wip/build-aux/missing autoheader'AUTOMAKE='${SHELL} /home/sapientech/Dev/guix/guix_wip/build-aux/missing automake-1.15'AWK='gawk'BUILD_DAEMON_FALSE='#'BUILD_DAEMON_OFFLOAD_FALSE='#'BUILD_DAEMON_OFFLOAD_TRUE=''BUILD_DAEMON_TRUE=''BUILD_SYSCALLS_MODULE_FALSE='#'BUILD_SYSCALLS_MODULE_TRUE=''BZIP2='/gnu/store/32ncwkhjmzyq7j7bq2xz7lf3r39x0rh7-profile/bin/bzip2'CAN_RUN_TESTS_FALSE='#'CAN_RUN_TESTS_TRUE=''CC='gcc'CCDEPMODE='depmode=gcc3'CFLAGS='-g -O2'CPP='gcc -E'CPPFLAGS=''CXX='g++'CXXCPP='g++ -E'CXXDEPMODE='depmode=gcc3'CXXFLAGS='-g -O2'CYGPATH_W='echo'DEFS='-DHAVE_CONFIG_H'DEPDIR='.deps'DOT='${SHELL} /home/sapientech/Dev/guix/guix_wip/build-aux/missing dot'DOT_USER_PROGRAM='/gnu/store/32ncwkhjmzyq7j7bq2xz7lf3r39x0rh7-profile/bin/dot'ECHO_C=''ECHO_N='-n'ECHO_T=''EGREP='/gnu/store/32ncwkhjmzyq7j7bq2xz7lf3r39x0rh7-profile/bin/grep -E'EMACS='emacs'EMACSLOADPATH=''EXEEXT=''GETTEXT_MACRO_VERSION='0.18'GMSGFMT='/gnu/store/32ncwkhjmzyq7j7bq2xz7lf3r39x0rh7-profile/bin/msgfmt'GMSGFMT_015='/gnu/store/32ncwkhjmzyq7j7bq2xz7lf3r39x0rh7-profile/bin/msgfmt'GREP='/gnu/store/32ncwkhjmzyq7j7bq2xz7lf3r39x0rh7-profile/bin/grep'GUILD='/gnu/store/32ncwkhjmzyq7j7bq2xz7lf3r39x0rh7-profile/bin/guild'GUILE='/gnu/store/32ncwkhjmzyq7j7bq2xz7lf3r39x0rh7-profile/bin/guile'GUILE_CFLAGS='-pthread -I/gnu/store/hyk2i7b8mwbrbiyqk5sgrfgds9zvcrn5-guile-2.0.11/include/guile/2.0'GUILE_CONFIG='/gnu/store/32ncwkhjmzyq7j7bq2xz7lf3r39x0rh7-profile/bin/guile-config'GUILE_LIBS='-L/gnu/store/hyk2i7b8mwbrbiyqk5sgrfgds9zvcrn5-guile-2.0.11/lib -L/gnu/store/my4az71gz8iqd4w8kb34kq7vlk3fcvhm-libgc-7.4.2/lib -lguile-2.0 -lgc'GUILE_TOOLS='/gnu/store/32ncwkhjmzyq7j7bq2xz7lf3r39x0rh7-profile/bin/guild'GUIX_TEST_ROOT='/home/sapientech/Dev/guix/guix_wip/test-tmp'GZIP='/gnu/store/32ncwkhjmzyq7j7bq2xz7lf3r39x0rh7-profile/bin/gzip'HAVE_EMACS_FALSE='#'HAVE_EMACS_TRUE=''HAVE_GUILE_JSON_FALSE='#'HAVE_GUILE_JSON_TRUE=''HELP2MAN='${SHELL} /home/sapientech/Dev/guix/guix_wip/build-aux/missing help2man'INSTALL_DATA='${INSTALL} -m 644'INSTALL_PROGRAM='${INSTALL}'INSTALL_SCRIPT='${INSTALL}'INSTALL_SRFI_37_FALSE=''INSTALL_SRFI_37_TRUE='#'INSTALL_STRIP_PROGRAM='$(install_sh) -c -s'INTLLIBS=''INTL_MACOSX_LIBS=''LDFLAGS=''LIBGCRYPT='/gnu/store/7wfbprp1b9b25crlidg6h7b6hpib2b99-libgcrypt-1.6.5/lib/libgcrypt'LIBGCRYPT_CFLAGS=''LIBGCRYPT_CONFIG='/gnu/store/32ncwkhjmzyq7j7bq2xz7lf3r39x0rh7-profile/bin/libgcrypt-config'LIBGCRYPT_LIBDIR='/gnu/store/7wfbprp1b9b25crlidg6h7b6hpib2b99-libgcrypt-1.6.5/lib'LIBGCRYPT_LIBS='-L/gnu/store/7wfbprp1b9b25crlidg6h7b6hpib2b99-libgcrypt-1.6.5/lib -lgcrypt'LIBGCRYPT_PREFIX='no'LIBICONV='-liconv'LIBINTL=''LIBOBJS=''LIBS=''LIBZ='/gnu/store/hsxhfmjgh8m4c0pavq3gd3gcrn8zrgxj-zlib-1.2.8/lib/libz'LTLIBICONV='-liconv'LTLIBINTL=''LTLIBOBJS=''MAKEINFO='${SHELL} /home/sapientech/Dev/guix/guix_wip/build-aux/missing makeinfo'MKDIR_P='/gnu/store/32ncwkhjmzyq7j7bq2xz7lf3r39x0rh7-profile/bin/mkdir -p'MSGFMT='/gnu/store/32ncwkhjmzyq7j7bq2xz7lf3r39x0rh7-profile/bin/msgfmt'MSGFMT_015='/gnu/store/32ncwkhjmzyq7j7bq2xz7lf3r39x0rh7-profile/bin/msgfmt'MSGMERGE='/gnu/store/32ncwkhjmzyq7j7bq2xz7lf3r39x0rh7-profile/bin/msgmerge'NIXPKGS=''NIX_HASH=''NIX_INSTANTIATE='nix-instantiate'NIX_PREFIX=''OBJEXT='o'PACKAGE='guix'PACKAGE_BUGREPORT='bug-guix@gnu.org'PACKAGE_NAME='GNU Guix'PACKAGE_STRING='GNU Guix 0.10.0'PACKAGE_TARNAME='guix'PACKAGE_URL='http://www.gnu.org/software/guix/'PACKAGE_VERSION='0.10.0'PATH_SEPARATOR=':'PKG_CONFIG='/gnu/store/32ncwkhjmzyq7j7bq2xz7lf3r39x0rh7-profile/bin/pkg-config'PKG_CONFIG_LIBDIR=''PKG_CONFIG_PATH='/gnu/store/32ncwkhjmzyq7j7bq2xz7lf3r39x0rh7-profile/lib/pkgconfig::/home/sapientech/.guix-profile/lib/pkgconfig'POSUB='po'RANLIB='ranlib'SED='/gnu/store/32ncwkhjmzyq7j7bq2xz7lf3r39x0rh7-profile/bin/sed'SET_MAKE=''SHELL='/bin/sh'SQLITE3_CFLAGS='-I/gnu/store/y7h8gf890qaj6f23ryshwxd3r9y96cnc-sqlite-3.10.0/include'SQLITE3_LIBS='-L/gnu/store/y7h8gf890qaj6f23ryshwxd3r9y96cnc-sqlite-3.10.0/lib -lsqlite3'STRIP=''USE_NLS='yes'VERSION='0.10.0'XGETTEXT='/gnu/store/32ncwkhjmzyq7j7bq2xz7lf3r39x0rh7-profile/bin/xgettext'XGETTEXT_015='/gnu/store/32ncwkhjmzyq7j7bq2xz7lf3r39x0rh7-profile/bin/xgettext'XGETTEXT_EXTRA_OPTIONS=''XZ='/gnu/store/32ncwkhjmzyq7j7bq2xz7lf3r39x0rh7-profile/bin/xz'ac_ct_CC='gcc'ac_ct_CXX='g++'am__EXEEXT_FALSE=''am__EXEEXT_TRUE='#'am__fastdepCC_FALSE='#'am__fastdepCC_TRUE=''am__fastdepCXX_FALSE='#'am__fastdepCXX_TRUE=''am__include='include'am__isrc=''am__leading_dot='.'am__nodep='_no'am__quote=''am__tar='$${TAR-tar} chof - "$$tardir"'am__untar='$${TAR-tar} xf -'bashcompletiondir='${sysconfdir}/bash_completion.d'bindir='${exec_prefix}/bin'build='x86_64-unknown-linux-gnu'build_alias=''build_cpu='x86_64'build_os='linux-gnu'build_vendor='unknown'datadir='${datarootdir}'datarootdir='${prefix}/share'docdir='${datarootdir}/doc/${PACKAGE_TARNAME}'dvidir='${docdir}'emacsuidir='${prefix}/share/guile/site/2.0/guix/emacs'exec_prefix='${prefix}'guilemoduledir='${prefix}/share/guile/site/2.0'guix_localstatedir='/usr/local/var'guix_sbindir='/usr/local/sbin'guix_sysconfdir='/usr/local/etc'guix_system='x86_64-linux'host='x86_64-unknown-linux-gnu'host_alias=''host_cpu='x86_64'host_os='linux-gnu'host_vendor='unknown'htmldir='${docdir}'includedir='${prefix}/include'infodir='${datarootdir}/info'install_sh='${SHELL} /home/sapientech/Dev/guix/guix_wip/build-aux/install-sh'libdir='${exec_prefix}/lib'libexecdir='${exec_prefix}/libexec'lispdir='${datadir}/emacs/site-lisp'localedir='${datarootdir}/locale'localstatedir='${prefix}/var'mandir='${datarootdir}/man'mkdir_p='/gnu/store/32ncwkhjmzyq7j7bq2xz7lf3r39x0rh7-profile/bin/mkdir -p'oldincludedir='/usr/include'pdfdir='${docdir}'prefix='/usr/local'program_transform_name='s,x,x,'psdir='${docdir}'sbindir='${exec_prefix}/sbin'sharedstatedir='${prefix}/com'storedir='/gnu/store'sysconfdir='${prefix}/etc'target_alias=''
## ----------- #### confdefs.h. #### ----------- ##
/* confdefs.h */#define PACKAGE_NAME "GNU Guix"#define PACKAGE_TARNAME "guix"#define PACKAGE_VERSION "0.10.0"#define PACKAGE_STRING "GNU Guix 0.10.0"#define PACKAGE_BUGREPORT "bug-guix@gnu.org"#define PACKAGE_URL "http://www.gnu.org/software/guix/"#define PACKAGE "guix"#define VERSION "0.10.0"#define STDC_HEADERS 1#define HAVE_SYS_TYPES_H 1#define HAVE_SYS_STAT_H 1#define HAVE_STDLIB_H 1#define HAVE_STRING_H 1#define HAVE_MEMORY_H 1#define HAVE_STRINGS_H 1#define HAVE_INTTYPES_H 1#define HAVE_STDINT_H 1#define HAVE_UNISTD_H 1#define __EXTENSIONS__ 1#define _ALL_SOURCE 1#define _GNU_SOURCE 1#define _POSIX_PTHREAD_SEMANTICS 1#define _TANDEM_SOURCE 1#define ENABLE_NLS 1#define HAVE_GETTEXT 1#define HAVE_DCGETTEXT 1#define HAVE_BZLIB_H 1#define NIX_VERSION "0.0.0"#define SYSTEM "x86_64-linux"#define HAVE_CHROOT 1#define HAVE_UNSHARE 1#define HAVE_SCHED_H 1#define HAVE_SYS_PARAM_H 1#define HAVE_SYS_MOUNT_H 1#define HAVE_SYS_SYSCALL_H 1#define HAVE_LUTIMES 1#define HAVE_LCHOWN 1#define HAVE_POSIX_FALLOCATE 1#define HAVE_SCHED_SETAFFINITY 1#define HAVE_STATVFS 1#define HAVE_NANOSLEEP 1#define HAVE_STRSIGNAL 1#define CAN_LINK_SYMLINK 1#define HAVE_LOCALE 1#define HAVE_SYS_PERSONALITY_H 1#define HAVE_LINUX_FS_H 1#define GUIX_SUBSTITUTE_URLS "https://mirror.hydra.gnu.org"#define HAVE_DAEMON_OFFLOAD_HOOK 1
configure: exit 0
======================================= GNU Guix 0.10.0: ./test-suite.log=======================================
# TOTAL: 604# PASS: 582# SKIP: 7# XFAIL: 0# FAIL: 15# XPASS: 0# ERROR: 0
.. contents:: :depth: 2
SKIP: tests/base32==================
sh: nix-hash: command not foundtest-name: bytevector->base32-stringlocation: /home/sapientech/Dev/guix/guix_wip/tests/base32.scm:48source:+ (test-assert+ "bytevector->base32-string"+ (fold (lambda (bv expected result)+ (and result+ (string=?+ (bytevector->base32-string bv)+ expected)))+ #t+ (map string->utf8+ '("" "f" "fo" "foo" "foob" "fooba" "foobar"))+ '(""+ "my"+ "mzxq"+ "mzxw6"+ "mzxw6yq"+ "mzxw6ytb"+ "mzxw6ytboi")))actual-value: #tresult: PASS
test-name: base32-string->bytevectorlocation: /home/sapientech/Dev/guix/guix_wip/tests/base32.scm:65source:+ (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: #tresult: PASS
test-name: nix-base32-string->bytevectorlocation: /home/sapientech/Dev/guix/guix_wip/tests/base32.scm:73source:+ (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: #tresult: PASS
test-name: &invalid-base32-characterlocation: /home/sapientech/Dev/guix/guix_wip/tests/base32.scm:81source:+ (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: eactual-value: eresult: PASS
test-name: sha256 & bytevector->nix-base32-stringlocation: /home/sapientech/Dev/guix/guix_wip/tests/base32.scm:92source:+ (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================
test-name: file->cpio-header + write-cpio-header + read-cpio-headerlocation: /home/sapientech/Dev/guix/guix_wip/tests/cpio.scm:37source:+ (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: #tresult: PASS
test-name: bit-identical to GNU cpio's outputlocation: /home/sapientech/Dev/guix/guix_wip/tests/cpio.scm:49source:+ (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=? ref-file file)+ (throw 'cpio-archives-differ+ files+ ref-file+ file+ (stat:size (stat ref-file))+ (stat:size (stat file))))))))))))))result: SKIP
random seed for tests: 1469809311
SKIP: tests/snix================
test-name: factorize-urilocation: /home/sapientech/Dev/guix/guix_wip/tests/snix.scm:36source:+ (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: #tresult: PASS
test-name: nixpkgs->guix-packagelocation: /home/sapientech/Dev/guix/guix_wip/tests/snix.scm:54source:+ (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=================
test-name: store-path-hash-partlocation: /home/sapientech/Dev/guix/guix_wip/tests/store.scm:51source:+ (test-equal+ "store-path-hash-part"+ "283gqy39v3g9dxjy26rynl0zls82fmcg"+ (store-path-hash-part+ (string-append+ (%store-prefix)+ "/283gqy39v3g9dxjy26rynl0zls82fmcg-guile-2.0.7")))expected-value: 283gqy39v3g9dxjy26rynl0zls82fmcgactual-value: 283gqy39v3g9dxjy26rynl0zls82fmcgresult: PASS
test-name: store-path-hash-part #flocation: /home/sapientech/Dev/guix/guix_wip/tests/store.scm:57source:+ (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: #factual-value: #fresult: PASS
test-name: store-path-package-namelocation: /home/sapientech/Dev/guix/guix_wip/tests/store.scm:63source:+ (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.7actual-value: guile-2.0.7result: PASS
test-name: store-path-package-name #flocation: /home/sapientech/Dev/guix/guix_wip/tests/store.scm:69source:+ (test-equal+ "store-path-package-name #f"+ #f+ (store-path-package-name+ "/foo/bar/283gqy39v3g9dxjy26rynl0zls82fmcg-guile-2.0.7"))expected-value: #factual-value: #fresult: PASS
test-name: direct-store-path?location: /home/sapientech/Dev/guix/guix_wip/tests/store.scm:74source:+ (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: #tresult: PASS
test-name: valid-path? livelocation: /home/sapientech/Dev/guix/guix_wip/tests/store.scm:86source:+ (test-assert+ "valid-path? live"+ (let ((p (add-text-to-store %store "hello" "hello, world")))+ (valid-path? %store p)))actual-value: #tresult: PASS
test-name: valid-path? falselocation: /home/sapientech/Dev/guix/guix_wip/tests/store.scm:90source:+ (test-assert+ "valid-path? false"+ (not (valid-path?+ %store+ (string-append+ (%store-prefix)+ "/"+ (make-string 32 #\e)+ "-foobar"))))actual-value: #tresult: PASS
test-name: valid-path? errorlocation: /home/sapientech/Dev/guix/guix_wip/tests/store.scm:95source:+ (test-assert+ "valid-path? error"+ (with-store+ s+ (guard (c ((nix-protocol-error? c) #t))+ (valid-path? s "foo")+ #f)))actual-value: #tresult: PASS
test-name: valid-path? recoverylocation: /home/sapientech/Dev/guix/guix_wip/tests/store.scm:101source:+ (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: #tresult: PASS
test-name: hash-part->pathlocation: /home/sapientech/Dev/guix/guix_wip/tests/store.scm:118source:+ (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: #tresult: PASS
test-name: dead-pathslocation: /home/sapientech/Dev/guix/guix_wip/tests/store.scm:123source:+ (test-assert+ "dead-paths"+ (let ((p (add-text-to-store+ %store+ "random-text"+ (random-text))))+ (->bool (member p (dead-paths %store)))))random seed for tests: 1469828741finding garbage collector roots...removing stale temporary roots file `/home/sapientech/Dev/guix/guix_wip/test-tmp/var/4578/temproots/4593'determining live/dead paths...actual-value: #tresult: PASS
test-name: permanent rootlocation: /home/sapientech/Dev/guix/guix_wip/tests/store.scm:144source:+ (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)))))))finding garbage collector roots...determining live/dead paths...finding garbage collector roots...determining live/dead paths...actual-value: #tresult: PASS
test-name: dead path can be explicitly collectedlocation: /home/sapientech/Dev/guix/guix_wip/tests/store.scm:156source:+ (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))))))finding garbage collector roots...deleting unused links...actual-value: #tresult: PASS
test-name: add-text-to-store vs. delete-pathslocation: /home/sapientech/Dev/guix/guix_wip/tests/store.scm:164source:+ (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=? path path2)+ (equal? deleted (list path))+ (valid-path? store path)+ (file-exists? path)))))finding garbage collector roots...removing stale temporary roots file `/home/sapientech/Dev/guix/guix_wip/test-tmp/var/4578/temproots/4609'deleting `/home/sapientech/Dev/guix/guix_wip/test-tmp/store/gzg35nkj0dafay7ddynb9bqx501dyk6s-delete-me'deleting `/home/sapientech/Dev/guix/guix_wip/test-tmp/store/trash'deleting unused links...note: currently hard linking saves 19.66 MiBactual-value: #tresult: PASS
test-name: add-to-store vs. delete-pathslocation: /home/sapientech/Dev/guix/guix_wip/tests/store.scm:177source:+ (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=? path path2)+ (equal? deleted (list path))+ (valid-path? store path)+ (file-exists? path)))))finding garbage collector roots...removing stale temporary roots file `/home/sapientech/Dev/guix/guix_wip/test-tmp/var/4578/temproots/4621'deleting `/home/sapientech/Dev/guix/guix_wip/test-tmp/store/57nhqlbqv5kh4zwr2vvdk3xyh741ynri-delete-me'deleting `/home/sapientech/Dev/guix/guix_wip/test-tmp/store/trash'deleting unused links...note: currently hard linking saves 19.66 MiBactual-value: #tresult: PASS
test-name: referenceslocation: /home/sapientech/Dev/guix/guix_wip/tests/store.scm:189source:+ (test-assert+ "references"+ (let* ((t1 (add-text-to-store+ %store+ "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: #tresult: PASS
test-name: references/substitutes missing reference infolocation: /home/sapientech/Dev/guix/guix_wip/tests/store.scm:199source:+ (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: #tresult: PASS
test-name: references/substitutes with substitute infolocation: /home/sapientech/Dev/guix/guix_wip/tests/store.scm:211source:+ (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 => (sha256 (string->utf8 t2)))+ (references => (list t2))+ (equal?+ (references/substitutes s (list o t3 t2 t1))+ `((,t2) () (,t1) ()))))))substitute: warning: authentication and authorization of substitutes disabled!substitute: guix substitute: warning: ACL for archive imports seems to be uninitialized, substitutes may be unavailableactual-value: #tresult: PASS
test-name: substitutable-path-info when substitutes are turned offlocation: /home/sapientech/Dev/guix/guix_wip/tests/store.scm:235source:+ (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 offlocation: /home/sapientech/Dev/guix/guix_wip/tests/store.scm:248source:+ (test-equal+ "substitutable-paths 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-paths s (list o))))))expected-value: ()actual-value: ()result: PASS
test-name: requisiteslocation: /home/sapientech/Dev/guix/guix_wip/tests/store.scm:261source:+ (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 (= (length x) (length y))+ (lset= 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: #tresult: PASS
test-name: deriverslocation: /home/sapientech/Dev/guix/guix_wip/tests/store.scm:281source:+ (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))))))@ build-started /home/sapientech/Dev/guix/guix_wip/test-tmp/store/kbazq13kw06ij2ms4avbwbjyx5wfff1n-the-thing.drv - x86_64-linux /home/sapientech/Dev/guix/guix_wip/test-tmp/var/log/guix/drvs/kb//azq13kw06ij2ms4avbwbjyx5wfff1n-the-thing.drv.bz2@ build-succeeded /home/sapientech/Dev/guix/guix_wip/test-tmp/store/kbazq13kw06ij2ms4avbwbjyx5wfff1n-the-thing.drv -actual-value: #tresult: PASS
test-name: topologically-sorted, one itemlocation: /home/sapientech/Dev/guix/guix_wip/tests/store.scm:297source:+ (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: #tresult: PASS
test-name: topologically-sorted, several itemslocation: /home/sapientech/Dev/guix/guix_wip/tests/store.scm:305source:+ (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: #tresult: PASS
test-name: topologically-sorted, more difficultlocation: /home/sapientech/Dev/guix/guix_wip/tests/store.scm:314source:+ (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= string=? s1 s3)))))actual-value: #tresult: PASS
test-name: current-build-output-port, UTF-8location: /home/sapientech/Dev/guix/guix_wip/tests/store.scm:338source:+ (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\u2019s a Greek letter: \u03bb.")+ (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\u2019s a Greek letter: \u03bb."))actual-value: 231result: PASS
test-name: current-build-output-port, UTF-8 + garbagelocation: /home/sapientech/Dev/guix/guix_wip/tests/store.scm:354source:+ (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: \u03bb\n"))+ #:guile-for-build+ (package-derivation %store %bootstrap-guile))))+ (guard (c ((nix-protocol-error? c) #t))+ (build-derivations %store (list d))))))))+ "garbage: ?lambda: \u03bb"))actual-value: 231result: PASS
test-name: log-file, derivationlocation: /home/sapientech/Dev/guix/guix_wip/tests/store.scm:374source:+ (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+ `(("foo" unquote (random-text)))+ #:inputs+ `((,b) (,s)))))+ (and (build-derivations %store (list d))+ (file-exists?+ (pk (log-file %store (derivation-file-name d)))))))@ build-started /home/sapientech/Dev/guix/guix_wip/test-tmp/store/spgm3xgq8sf8pn2r6s4sswqd14949y26-the-thing.drv - x86_64-linux /home/sapientech/Dev/guix/guix_wip/test-tmp/var/log/guix/drvs/sp//gm3xgq8sf8pn2r6s4sswqd14949y26-the-thing.drv.bz2@ build-succeeded /home/sapientech/Dev/guix/guix_wip/test-tmp/store/spgm3xgq8sf8pn2r6s4sswqd14949y26-the-thing.drv -
;;; ("/home/sapientech/Dev/guix/guix_wip/test-tmp/var/log/guix/drvs/sp/gm3xgq8sf8pn2r6s4sswqd14949y26-the-thing.drv.bz2")actual-value: #tresult: PASS
test-name: log-file, output file namelocation: /home/sapientech/Dev/guix/guix_wip/tests/store.scm:386source:+ (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=?+ (log-file %store (derivation-file-name d))+ (log-file %store o)))))@ build-started /home/sapientech/Dev/guix/guix_wip/test-tmp/store/688ij8nxfha72w8xwskb5kmgjwgy94iv-the-thing.drv - x86_64-linux /home/sapientech/Dev/guix/guix_wip/test-tmp/var/log/guix/drvs/68//8ij8nxfha72w8xwskb5kmgjwgy94iv-the-thing.drv.bz2@ build-succeeded /home/sapientech/Dev/guix/guix_wip/test-tmp/store/688ij8nxfha72w8xwskb5kmgjwgy94iv-the-thing.drv -
;;; ("/home/sapientech/Dev/guix/guix_wip/test-tmp/var/log/guix/drvs/68/8ij8nxfha72w8xwskb5kmgjwgy94iv-the-thing.drv.bz2")actual-value: #tresult: PASS
test-name: no substituteslocation: /home/sapientech/Dev/guix/guix_wip/tests/store.scm:401source:+ (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: #tresult: PASS
test-name: build-things with output pathlocation: /home/sapientech/Dev/guix/guix_wip/tests/store.scm:412source:+ (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: #tresult: PASS
test-name: substitute querylocation: /home/sapientech/Dev/guix/guix_wip/tests/store.scm:432source:+ (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)))+ (((? substitutable? s))+ (and (string=?+ (substitutable-deriver s)+ (derivation-file-name d))+ (null? (substitutable-references s))+ (equal? (substitutable-nar-size s) 1234)))))))))substitute: warning: authentication and authorization of substitutes disabled!substitute: guix substitute: warning: ACL for archive imports seems to be uninitialized, substitutes may be unavailable
;;; (spi (#<<substitutable> path: "/home/sapientech/Dev/guix/guix_wip/test-tmp/store/0vxgvlx03qscrds88s65hrs70n5jkw2g-guile-bootstrap-2.0" deriver: "/home/sapientech/Dev/guix/guix_wip/test-tmp/store/bjihchailclirz3310dqypibjg0happm-guile-bootstrap-2.0.drv" refs: () dl-size: 0 nar-size: 1234>))actual-value: #tresult: PASS
test-name: substitute query, alternating URLslocation: /home/sapientech/Dev/guix/guix_wip/tests/store.scm:456source:+ (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)))))))substitute: warning: authentication and authorization of substitutes disabled!substitute: guix substitute: warning: ACL for archive imports seems to be uninitialized, substitutes may be unavailablesubstitute: warning: authentication and authorization of substitutes disabled!substitute: guix substitute: warning: ACL for archive imports seems to be uninitialized, substitutes may be unavailablesubstitute: Backtrace:substitute: In ice-9/boot-9.scm:substitute: 157: 9 [catch #t #<catch-closure 8c83e0> ...]substitute: In unknown file:substitute: ?: 8 [apply-smob/1 #<catch-closure 8c83e0>]substitute: In ice-9/boot-9.scm:substitute: 63: 7 [call-with-prompt prompt0 ...]substitute: In ice-9/eval.scm:substitute: 432: 6 [eval # #]substitute: In ice-9/boot-9.scm:substitute: 2401: 5 [save-module-excursion #<procedure 8e8940 at ice-9/boot-9.scm:4045:3 ()>]substitute: 4050: 4 [#<procedure 8e8940 at ice-9/boot-9.scm:4045:3 ()>]substitute: 1724: 3 [%start-stack load-stack #<procedure 8fa820 at ice-9/boot-9.scm:4041:10 ()>]substitute: 1729: 2 [#<procedure 8ffea0 ()>]substitute: In unknown file:substitute: ?: 1 [primitive-load "/home/sapientech/Dev/guix/guix_wip/scripts/guix"]substitute: In guix/ui.scm:substitute: 1209: 0 [run-guix-command substitute "--query"]substitute: substitute: guix/ui.scm:1209:6: In procedure run-guix-command:substitute: guix/ui.scm:1209:6: unmatched line "<html><head><meta http-equiv=\"refresh\" content=\"0;url=http://www.dnsrsearch.com/index.php?origURL=http://does-not-exist/nix-cache-info&bc=\"/ /head body script type=\"text/javascript\" window.location=\"http://www.dnsrsearch.com/index.php?origURL=\"+escape(window.location)+\"&r=\"+escape(document.referrer)+\"&bc=\"; /script /body /html "actual-value: #factual-error:+ (srfi-34+ #<condition &nix-protocol-error [message: "substituter `substitute' died unexpectedly" status: 1] ac6e40>)result: FAIL
test-name: substitutelocation: /home/sapientech/Dev/guix/guix_wip/tests/store.scm:488source:+ (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)))))))substitute: warning: authentication and authorization of substitutes disabled!substitute: guix substitute: warning: ACL for archive imports seems to be uninitialized, substitutes may be unavailable@ substituter-started /home/sapientech/Dev/guix/guix_wip/test-tmp/store/2yzd6cmy7fh9zajvy8hb0ki3j61kq6xq-substitute-me /home/sapientech/Dev/guix/guix_wip/nix/scripts/substitutewarning: authentication and authorization of substitutes disabled!guix substitute: warning: ACL for archive imports seems to be uninitialized, substitutes may be unavailableDownloading /home/sapientech/Dev/guix/guix_wip/test-tmp/store/2yzd6cmy7fh9zajvy8hb0ki3j61kq6xq-substitute-me (1KiB installed)...  example.nar 176B 0B/s 00:00 [####################] 100.0%@ substituter-succeeded /home/sapientech/Dev/guix/guix_wip/test-tmp/store/2yzd6cmy7fh9zajvy8hb0ki3j61kq6xq-substitute-meactual-value: #tresult: PASS
test-name: substitute + build-things with output pathlocation: /home/sapientech/Dev/guix/guix_wip/tests/store.scm:507source:+ (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)))+ (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)))))))substitute: warning: authentication and authorization of substitutes disabled!substitute: guix substitute: warning: ACL for archive imports seems to be uninitialized, substitutes may be unavailable@ substituter-started /home/sapientech/Dev/guix/guix_wip/test-tmp/store/anrjyjqn3g8nnkwrhls8nd5bg0r5k082-substitute-me /home/sapientech/Dev/guix/guix_wip/nix/scripts/substitutewarning: authentication and authorization of substitutes disabled!guix substitute: warning: ACL for archive imports seems to be uninitialized, substitutes may be unavailableDownloading /home/sapientech/Dev/guix/guix_wip/test-tmp/store/anrjyjqn3g8nnkwrhls8nd5bg0r5k082-substitute-me (1KiB installed)...  example.nar 176B 0B/s 00:00 [####################] 100.0%@ substituter-succeeded /home/sapientech/Dev/guix/guix_wip/test-tmp/store/anrjyjqn3g8nnkwrhls8nd5bg0r5k082-substitute-meactual-value: #tresult: PASS
test-name: substitute, corrupt output hashlocation: /home/sapientech/Dev/guix/guix_wip/tests/store.scm:527source:+ (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 => (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))))))substitute: warning: authentication and authorization of substitutes disabled!substitute: guix substitute: warning: ACL for archive imports seems to be uninitialized, substitutes may be unavailable@ substituter-started /home/sapientech/Dev/guix/guix_wip/test-tmp/store/bmdlmicms7mw571siq7gsjip4as64586-corrupt-substitute /home/sapientech/Dev/guix/guix_wip/nix/scripts/substitutewarning: authentication and authorization of substitutes disabled!guix substitute: warning: ACL for archive imports seems to be uninitialized, substitutes may be unavailableDownloading /home/sapientech/Dev/guix/guix_wip/test-tmp/store/bmdlmicms7mw571siq7gsjip4as64586-corrupt-substitute (1KiB installed)...  example.nar 128B 0B/s 00:00 [####################] 100.0%@ substituter-failed /home/sapientech/Dev/guix/guix_wip/test-tmp/store/bmdlmicms7mw571siq7gsjip4as64586-corrupt-substitute 0 hash mismatch in downloaded path `/home/sapientech/Dev/guix/guix_wip/test-tmp/store/bmdlmicms7mw571siq7gsjip4as64586-corrupt-substitute': expected 0000000000000000000000000000000000000000000000000000000000000000, got b8f73a6eb280e63169b1de2a5b5e154676fe1ada685f1e5c7183cbb2c1dcd535
;;; (corrupt #<condition &nix-protocol-error [message: "some substitutes for the outputs of derivation `/home/sapientech/Dev/guix/guix_wip/test-tmp/store/yp3pfg2510b5dm7ilsl1nrry1j5q3ww3-corrupt-substitute.drv' failed (usually happens due to networking issues); try `--fallback' to build derivation from source " status: 1] 1afa7b0>)actual-value: #tresult: PASS
test-name: substitute --fallbacklocation: /home/sapientech/Dev/guix/guix_wip/tests/store.scm:557source:+ (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))))))substitute: warning: authentication and authorization of substitutes disabled!substitute: guix substitute: warning: ACL for archive imports seems to be uninitialized, substitutes may be unavailable@ substituter-started /home/sapientech/Dev/guix/guix_wip/test-tmp/store/d2jhbkixw475alsk738hfiq2jywagshm-substitute-me-not /home/sapientech/Dev/guix/guix_wip/nix/scripts/substitutewarning: authentication and authorization of substitutes disabled!guix substitute: warning: ACL for archive imports seems to be uninitialized, substitutes may be unavailableDownloading /home/sapientech/Dev/guix/guix_wip/test-tmp/store/d2jhbkixw475alsk738hfiq2jywagshm-substitute-me-not (1KiB installed)...guix substitute: error: open-file: No such file or directory: "/home/sapientech/Dev/guix/guix_wip/test-tmp/var/4578/substituter-data/example.nar"@ substituter-failed /home/sapientech/Dev/guix/guix_wip/test-tmp/store/d2jhbkixw475alsk738hfiq2jywagshm-substitute-me-not 256 fetching path `/home/sapientech/Dev/guix/guix_wip/test-tmp/store/d2jhbkixw475alsk738hfiq2jywagshm-substitute-me-not' failed with exit code 1@ substituter-started /home/sapientech/Dev/guix/guix_wip/test-tmp/store/d2jhbkixw475alsk738hfiq2jywagshm-substitute-me-not /home/sapientech/Dev/guix/guix_wip/nix/scripts/substitutewarning: authentication and authorization of substitutes disabled!guix substitute: warning: ACL for archive imports seems to be uninitialized, substitutes may be unavailableDownloading /home/sapientech/Dev/guix/guix_wip/test-tmp/store/d2jhbkixw475alsk738hfiq2jywagshm-substitute-me-not (1KiB installed)...guix substitute: error: open-file: No such file or directory: "/home/sapientech/Dev/guix/guix_wip/test-tmp/var/4578/substituter-data/example.nar"@ substituter-failed /home/sapientech/Dev/guix/guix_wip/test-tmp/store/d2jhbkixw475alsk738hfiq2jywagshm-substitute-me-not 256 fetching path `/home/sapientech/Dev/guix/guix_wip/test-tmp/store/d2jhbkixw475alsk738hfiq2jywagshm-substitute-me-not' failed with exit code 1@ build-started /home/sapientech/Dev/guix/guix_wip/test-tmp/store/dn44z9hdv1fhpw4ccrs2kcis3p3fs8mm-substitute-me-not.drv - x86_64-linux /home/sapientech/Dev/guix/guix_wip/test-tmp/var/log/guix/drvs/dn//44z9hdv1fhpw4ccrs2kcis3p3fs8mm-substitute-me-not.drv.bz2@ build-succeeded /home/sapientech/Dev/guix/guix_wip/test-tmp/store/dn44z9hdv1fhpw4ccrs2kcis3p3fs8mm-substitute-me-not.drv -actual-value: #tresult: PASS
test-name: export/import several pathslocation: /home/sapientech/Dev/guix/guix_wip/tests/store.scm:589source:+ (test-assert+ "export/import several paths"+ (let* ((texts (unfold+ (cut >= <> 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 <>))))+ (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)))))))finding garbage collector roots...deleting unused links...actual-value: #tresult: PASS
test-name: export/import paths, ensure topological orderlocation: /home/sapientech/Dev/guix/guix_wip/tests/store.scm:609source:+ (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=? 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)))))))finding garbage collector roots...deleting unused links...actual-value: #tresult: PASS
test-name: export/import incompletelocation: /home/sapientech/Dev/guix/guix_wip/tests/store.scm:631source:+ (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)))))finding garbage collector roots...deleting unused links...actual-value: 97result: PASS
test-name: export/import recursivelocation: /home/sapientech/Dev/guix/guix_wip/tests/store.scm:648source:+ (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))+ (equal? (list file0) (references %store file1))+ (equal? (list file1) (references %store file2))))))finding garbage collector roots...deleting unused links...actual-value: #tresult: PASS
test-name: write-file & export-path yield the same resultlocation: /home/sapientech/Dev/guix/guix_wip/tests/store.scm:664source:+ (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 >= <> 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)))+ (>>= (item-info item)+ (lambda (info)+ (return+ (and result+ (bytevector=?+ (path-info-hash info)+ ref-hash))))))+ #t+ (list out1 out2))))+ #:guile-for-build+ (%guile-for-build)))@ build-started /home/sapientech/Dev/guix/guix_wip/test-tmp/store/n1pkmab5w4n1ahaz580hn69kapn36jl9-bunch.drv - x86_64-linux /home/sapientech/Dev/guix/guix_wip/test-tmp/var/log/guix/drvs/n1//pkmab5w4n1ahaz580hn69kapn36jl9-bunch.drv.bz2@ build-succeeded /home/sapientech/Dev/guix/guix_wip/test-tmp/store/n1pkmab5w4n1ahaz580hn69kapn36jl9-bunch.drv -actual-value: #tresult: PASS
test-name: import corrupt pathlocation: /home/sapientech/Dev/guix/guix_wip/tests/store.scm:730source:+ (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 (quotient (bytevector-length dump) 4))+ (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)))))finding garbage collector roots...deleting unused links...
;;; (c #<condition &nix-protocol-error [message: "signed hash doesn't match actual contents of imported archive; archive could be corrupt, or someone is trying to import a Trojan horse" status: 1] 17317e0>)actual-value: 80result: PASS
test-name: register-pathlocation: /home/sapientech/Dev/guix/guix_wip/tests/store.scm:753source:+ (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: #tresult: PASS
test-name: verify-storelocation: /home/sapientech/Dev/guix/guix_wip/tests/store.scm:773source:+ (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))))))reading the Nix store...
;;; (verify1 #t)reading the Nix store...path `/home/sapientech/Dev/guix/guix_wip/test-tmp/store/67gdc8rqn1q0j7aqr0k5cnhykxfn5sai-foo' disappeared, but it still has valid referrers!
;;; (verify2 #f)reading the Nix store...
;;; (verify3 #t)actual-value: #tresult: PASS
test-name: verify-store + check-contentslocation: /home/sapientech/Dev/guix/guix_wip/tests/store.scm:790source:+ (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)))))))substitute: warning: authentication and authorization of substitutes disabled!substitute: guix substitute: warning: ACL for archive imports seems to be uninitialized, substitutes may be unavailablefetching path `/home/sapientech/Dev/guix/guix_wip/test-tmp/store/9jj6hfmkwhynlsjpr26qlf6wx308r322-corrupt'...warning: authentication and authorization of substitutes disabled!guix substitute: warning: ACL for archive imports seems to be uninitialized, substitutes may be unavailableDownloading /home/sapientech/Dev/guix/guix_wip/test-tmp/store/9jj6hfmkwhynlsjpr26qlf6wx308r322-corrupt (1KiB installed)...  example.nar 176B 0B/s 00:00 [####################] 100.0%reading the Nix store...checking path existence...checking hashes...reading the Nix store...checking path existence...checking hashes...path `/home/sapientech/Dev/guix/guix_wip/test-tmp/store/9jj6hfmkwhynlsjpr26qlf6wx308r322-corrupt' was modified! expected hash `3ffb771d8c3cbac98d545bf2b0eaa7c0aab691afd1cf02f4b88082784837b6c3', got `e09c480e2e93336cd3c45aa129f81a0d7ba56c410b849d7779a8136074413b3d'finding garbage collector roots...removing stale temporary roots file `/home/sapientech/Dev/guix/guix_wip/test-tmp/var/4578/temproots/4920'deleting `/home/sapientech/Dev/guix/guix_wip/test-tmp/store/9jj6hfmkwhynlsjpr26qlf6wx308r322-corrupt'deleting `/home/sapientech/Dev/guix/guix_wip/test-tmp/store/trash'deleting unused links...note: currently hard linking saves 19.66 MiBactual-value: (/home/sapientech/Dev/guix/guix_wip/test-tmp/store/9jj6hfmkwhynlsjpr26qlf6wx308r322-corrupt)result: PASS
test-name: build-things, check modelocation: /home/sapientech/Dev/guix/guix_wip/tests/store.scm:827source:+ (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+ (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))))))))substitute: warning: authentication and authorization of substitutes disabled!substitute: guix substitute: warning: ACL for archive imports seems to be uninitialized, substitutes may be unavailablebuilding path(s) `/home/sapientech/Dev/guix/guix_wip/test-tmp/store/sjcm2zl0bxbzkwpbnjlb9kzffsl2058j-non-deterministic'checking path(s) `/home/sapientech/Dev/guix/guix_wip/test-tmp/store/sjcm2zl0bxbzkwpbnjlb9kzffsl2058j-non-deterministic'warning: rewriting hashes in `/home/sapientech/Dev/guix/guix_wip/test-tmp/store/sjcm2zl0bxbzkwpbnjlb9kzffsl2058j-non-deterministic'; cross fingers
;;; (determinism-exception #<condition &nix-protocol-error [message: "derivation `/home/sapientech/Dev/guix/guix_wip/test-tmp/store/yxi5kv1szq8ca30xdbjss8gdpr0vqfak-non-deterministic.drv' may not be deterministic: output `/home/sapientech/Dev/guix/guix_wip/test-tmp/store/sjcm2zl0bxbzkwpbnjlb9kzffsl2058j-non-deterministic' differs" status: 1] 24053f0>)actual-value: 99result: PASS
test-name: build multiple timeslocation: /home/sapientech/Dev/guix/guix_wip/tests/store.scm:864source:+ (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))))))@ build-started /home/sapientech/Dev/guix/guix_wip/test-tmp/store/sl522ik0ji3m8ci7xldfbp56pln4zzvp-non-deterministic.drv - x86_64-linux /home/sapientech/Dev/guix/guix_wip/test-tmp/var/log/guix/drvs/sl//522ik0ji3m8ci7xldfbp56pln4zzvp-non-deterministic.drv.bz2@ build-started /home/sapientech/Dev/guix/guix_wip/test-tmp/store/sl522ik0ji3m8ci7xldfbp56pln4zzvp-non-deterministic.drv - x86_64-linux /home/sapientech/Dev/guix/guix_wip/test-tmp/var/log/guix/drvs/sl//522ik0ji3m8ci7xldfbp56pln4zzvp-non-deterministic.drv.bz2output ?/home/sapientech/Dev/guix/guix_wip/test-tmp/store/asg30hlmcpj4cxajsvmbzk6hcrg8xnj6-non-deterministic? of ?/home/sapientech/Dev/guix/guix_wip/test-tmp/store/sl522ik0ji3m8ci7xldfbp56pln4zzvp-non-deterministic.drv? differs from previous round@ build-failed /home/sapientech/Dev/guix/guix_wip/test-tmp/store/sl522ik0ji3m8ci7xldfbp56pln4zzvp-non-deterministic.drv - 1 output ?/home/sapientech/Dev/guix/guix_wip/test-tmp/store/asg30hlmcpj4cxajsvmbzk6hcrg8xnj6-non-deterministic? of ?/home/sapientech/Dev/guix/guix_wip/test-tmp/store/sl522ik0ji3m8ci7xldfbp56pln4zzvp-non-deterministic.drv? differs from previous round
;;; (multiple-build #<condition &nix-protocol-error [message: "build of `/home/sapientech/Dev/guix/guix_wip/test-tmp/store/sl522ik0ji3m8ci7xldfbp56pln4zzvp-non-deterministic.drv' failed" status: 1] 1ae7a20>)actual-value: 97result: PASS
test-name: store-lowerlocation: /home/sapientech/Dev/guix/guix_wip/tests/store.scm:902source:+ (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-systemlocation: /home/sapientech/Dev/guix/guix_wip/tests/store.scm:908source:+ (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: baractual-value: barresult: PASS
test-name: query-path-infolocation: /home/sapientech/Dev/guix/guix_wip/tests/store.scm:917source:+ (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: #tresult: PASS
test-name: path-info-deriverlocation: /home/sapientech/Dev/guix/guix_wip/tests/store.scm:927source:+ (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=?+ (derivation-file-name d)+ (path-info-deriver (query-path-info %store o))))))@ build-started /home/sapientech/Dev/guix/guix_wip/test-tmp/store/j5apd15d3ma9sh31p317qfs1ywbw0kjm-the-thing.drv - x86_64-linux /home/sapientech/Dev/guix/guix_wip/test-tmp/var/log/guix/drvs/j5//apd15d3ma9sh31p317qfs1ywbw0kjm-the-thing.drv.bz2@ build-succeeded /home/sapientech/Dev/guix/guix_wip/test-tmp/store/j5apd15d3ma9sh31p317qfs1ywbw0kjm-the-thing.drv -actual-value: #tresult: PASS

SKIP: tests/gexp================
test-name: no refslocation: /home/sapientech/Dev/guix/guix_wip/tests/gexp.scm:71source:+ (test-equal+ "no refs"+ '(display "hello!")+ (let ((exp (gexp (display "hello!"))))+ (and (gexp? exp)+ (null? (gexp-inputs exp))+ (gexp->sexp* exp))))expected-value: (display hello!)actual-value: (display hello!)result: PASS
test-name: unquotelocation: /home/sapientech/Dev/guix/guix_wip/tests/gexp.scm:78source:+ (test-equal+ "unquote"+ '(display `(foo ,(+ 2 3)))+ (let ((exp (gexp (display `(foo ,(+ 2 3))))))+ (and (gexp? exp)+ (null? (gexp-inputs exp))+ (gexp->sexp* exp))))expected-value: (display (quasiquote (foo (unquote (+ 2 3)))))actual-value: (display (quasiquote (foo (unquote (+ 2 3)))))result: PASS
test-name: one input packagelocation: /home/sapientech/Dev/guix/guix_wip/tests/gexp.scm:85source:+ (test-assert+ "one input package"+ (let ((exp (gexp (display (ungexp coreutils)))))+ (and (gexp? exp)+ (match (gexp-inputs exp)+ (((p "out")) (eq? p coreutils)))+ (equal?+ `(display+ ,(derivation->output-path+ (package-derivation %store coreutils)))+ (gexp->sexp* exp)))))actual-value: #tresult: PASS
test-name: one input originlocation: /home/sapientech/Dev/guix/guix_wip/tests/gexp.scm:95source:+ (test-assert+ "one input origin"+ (let ((exp (gexp (display (ungexp (package-source coreutils))))))+ (and (gexp? exp)+ (match (gexp-inputs exp)+ (((o "out")) (eq? o (package-source coreutils))))+ (equal?+ `(display+ ,(derivation->output-path+ (package-source-derivation+ %store+ (package-source coreutils))))+ (gexp->sexp* exp)))))actual-value: #tresult: PASS
test-name: one local filelocation: /home/sapientech/Dev/guix/guix_wip/tests/gexp.scm:106source:+ (test-assert+ "one local file"+ (let* ((file (search-path %load-path "guix.scm"))+ (local (local-file file))+ (exp (gexp (display (ungexp local))))+ (intd (add-to-store+ %store+ (basename file)+ #f+ "sha256"+ file)))+ (and (gexp? exp)+ (match (gexp-inputs exp)+ (((x "out")) (eq? x local)))+ (equal? `(display ,intd) (gexp->sexp* exp)))))actual-value: #tresult: PASS
test-name: one local file, symlinklocation: /home/sapientech/Dev/guix/guix_wip/tests/gexp.scm:118source:+ (test-assert+ "one local file, symlink"+ (let ((file (search-path %load-path "guix.scm"))+ (link (tmpnam)))+ (dynamic-wind+ (const #t)+ (lambda ()+ (symlink (canonicalize-path file) link)+ (let* ((local (local-file link "my-file" #:recursive? #f))+ (exp (gexp (display (ungexp local))))+ (intd (add-to-store %store "my-file" #f "sha256" file)))+ (and (gexp? exp)+ (match (gexp-inputs exp)+ (((x "out")) (eq? x local)))+ (equal? `(display ,intd) (gexp->sexp* exp)))))+ (lambda ()+ (false-if-exception (delete-file link))))))actual-value: #tresult: PASS
test-name: local-file, relative file namelocation: /home/sapientech/Dev/guix/guix_wip/tests/gexp.scm:137source:+ (test-equal+ "local-file, relative file name"+ (canonicalize-path+ (search-path %load-path "guix/base32.scm"))+ (let ((directory+ (dirname+ (search-path+ %load-path+ "guix/build-system/gnu.scm"))))+ (with-directory-excursion+ directory+ (let ((file (local-file "../guix/base32.scm")))+ (local-file-absolute-file-name file)))))expected-value: /home/sapientech/Dev/guix/guix_wip/guix/base32.scmactual-value: /home/sapientech/Dev/guix/guix_wip/guix/base32.scmresult: PASS
test-name: local-file, #:select?location: /home/sapientech/Dev/guix/guix_wip/tests/gexp.scm:145source:+ (test-assert+ "local-file, #:select?"+ (run-with-store+ %store+ (mlet* %store-monad+ ((select?+ ->+ (lambda (file stat)+ (member+ (basename file)+ '("guix.scm" "tests" "gexp.scm"))))+ (file ->+ (local-file+ ".."+ "directory"+ #:recursive?+ #t+ #:select?+ select?))+ (dir (lower-object file)))+ (return+ (and (store-path? dir)+ (equal?+ (scandir dir)+ '("." ".." "guix.scm" "tests"))+ (equal?+ (scandir (string-append dir "/tests"))+ '("." ".." "gexp.scm")))))+ #:guile-for-build+ (%guile-for-build)))actual-value: #tresult: PASS
test-name: one plain filelocation: /home/sapientech/Dev/guix/guix_wip/tests/gexp.scm:160source:+ (test-assert+ "one plain file"+ (let* ((file (plain-file "hi" "Hello, world!"))+ (exp (gexp (display (ungexp file))))+ (expected+ (add-text-to-store %store "hi" "Hello, world!")))+ (and (gexp? exp)+ (match (gexp-inputs exp)+ (((x "out")) (eq? x file)))+ (equal? `(display ,expected) (gexp->sexp* exp)))))actual-value: #tresult: PASS
test-name: same input twicelocation: /home/sapientech/Dev/guix/guix_wip/tests/gexp.scm:170source:+ (test-assert+ "same input twice"+ (let ((exp (gexp (begin+ (display (ungexp coreutils))+ (display (ungexp coreutils))))))+ (and (gexp? exp)+ (match (gexp-inputs exp)+ (((p "out")) (eq? p coreutils)))+ (let ((e `(display+ ,(derivation->output-path+ (package-derivation %store coreutils)))))+ (equal? `(begin ,e ,e) (gexp->sexp* exp))))))actual-value: #tresult: PASS
test-name: two input packages, one derivation, one filelocation: /home/sapientech/Dev/guix/guix_wip/tests/gexp.scm:182source:+ (test-assert+ "two input packages, one derivation, one file"+ (let* ((drv (build-expression->derivation+ %store+ "foo"+ 'bar+ #:guile-for-build+ (package-derivation %store %bootstrap-guile)))+ (txt (add-text-to-store %store "foo" "Hello, world!"))+ (exp (gexp (begin+ (display (ungexp coreutils))+ (display (ungexp %bootstrap-guile))+ (display (ungexp drv))+ (display (ungexp txt))))))+ (define (match-input thing)+ (match-lambda+ ((drv-or-pkg _ ...) (eq? thing drv-or-pkg))))+ (and (gexp? exp)+ (= 4 (length (gexp-inputs exp)))+ (every (lambda (input)+ (find (match-input input) (gexp-inputs exp)))+ (list drv coreutils %bootstrap-guile txt))+ (let ((e0 `(display+ ,(derivation->output-path+ (package-derivation %store coreutils))))+ (e1 `(display+ ,(derivation->output-path+ (package-derivation %store %bootstrap-guile))))+ (e2 `(display ,(derivation->output-path drv)))+ (e3 `(display ,txt)))+ (equal?+ `(begin ,e0 ,e1 ,e2 ,e3)+ (gexp->sexp* exp))))))actual-value: #tresult: PASS
test-name: ungexp + ungexp-nativelocation: /home/sapientech/Dev/guix/guix_wip/tests/gexp.scm:210source:+ (test-assert+ "ungexp + ungexp-native"+ (let* ((exp (gexp (list (ungexp-native %bootstrap-guile)+ (ungexp coreutils)+ (ungexp-native glibc)+ (ungexp binutils))))+ (target "mips64el-linux")+ (guile (derivation->output-path+ (package-derivation %store %bootstrap-guile)))+ (cu (derivation->output-path+ (package-cross-derivation+ %store+ coreutils+ target)))+ (libc (derivation->output-path+ (package-derivation %store glibc)))+ (bu (derivation->output-path+ (package-cross-derivation %store binutils target))))+ (and (lset= equal?+ `((,%bootstrap-guile "out") (,glibc "out"))+ (gexp-native-inputs exp))+ (lset= equal?+ `((,coreutils "out") (,binutils "out"))+ (gexp-inputs exp))+ (equal?+ `(list ,guile ,cu ,libc ,bu)+ (gexp->sexp* exp target)))))actual-value: #tresult: PASS
test-name: ungexp + ungexp-native, nestedlocation: /home/sapientech/Dev/guix/guix_wip/tests/gexp.scm:233source:+ (test-equal+ "ungexp + ungexp-native, nested"+ (list `((,%bootstrap-guile "out"))+ '<>+ `((,coreutils "out")))+ (let* ((exp (gexp (list (ungexp-native (gexp (ungexp coreutils)))+ (ungexp %bootstrap-guile)))))+ (list (gexp-inputs exp)+ '<>+ (gexp-native-inputs exp))))expected-value: (((#<package guile-bootstrap@2.0 gnu/packages/bootstrap.scm:277 11140c0> out)) <> ((#<package coreutils@8.24 gnu/packages/base.scm:244 2df06c0> out)))actual-value: (((#<package guile-bootstrap@2.0 gnu/packages/bootstrap.scm:277 11140c0> out)) <> ((#<package coreutils@8.24 gnu/packages/base.scm:244 2df06c0> out)))result: PASS
test-name: input listlocation: /home/sapientech/Dev/guix/guix_wip/tests/gexp.scm:239source:+ (test-assert+ "input list"+ (let ((exp (gexp (display+ '(ungexp (list %bootstrap-guile coreutils)))))+ (guile (derivation->output-path+ (package-derivation %store %bootstrap-guile)))+ (cu (derivation->output-path+ (package-derivation %store coreutils))))+ (and (lset= equal?+ `((,%bootstrap-guile "out") (,coreutils "out"))+ (gexp-inputs exp))+ (equal?+ `(display '(,guile ,cu))+ (gexp->sexp* exp)))))actual-value: #tresult: PASS
test-name: input list + ungexp-nativelocation: /home/sapientech/Dev/guix/guix_wip/tests/gexp.scm:252source:+ (test-assert+ "input list + ungexp-native"+ (let* ((target "mips64el-linux")+ (exp (gexp (display+ (cons '(ungexp-native+ (list %bootstrap-guile coreutils))+ '(ungexp (list glibc binutils))))))+ (guile (derivation->output-path+ (package-derivation %store %bootstrap-guile)))+ (cu (derivation->output-path+ (package-derivation %store coreutils)))+ (xlibc (derivation->output-path+ (package-cross-derivation %store glibc target)))+ (xbu (derivation->output-path+ (package-cross-derivation %store binutils target))))+ (and (lset= equal?+ `((,%bootstrap-guile "out") (,coreutils "out"))+ (gexp-native-inputs exp))+ (lset= equal?+ `((,glibc "out") (,binutils "out"))+ (gexp-inputs exp))+ (equal?+ `(display (cons '(,guile ,cu) '(,xlibc ,xbu)))+ (gexp->sexp* exp target)))))actual-value: #tresult: PASS
test-name: input list splicinglocation: /home/sapientech/Dev/guix/guix_wip/tests/gexp.scm:274source:+ (test-assert+ "input list splicing"+ (let* ((inputs+ (list (gexp-input glibc "debug")+ %bootstrap-guile))+ (outputs+ (list (derivation->output-path+ (package-derivation %store glibc)+ "debug")+ (derivation->output-path+ (package-derivation %store %bootstrap-guile))))+ (exp (gexp (list (ungexp-splicing (cons (+ 2 3) inputs))))))+ (and (lset= equal?+ `((,glibc "debug") (,%bootstrap-guile "out"))+ (gexp-inputs exp))+ (equal?+ (gexp->sexp* exp)+ `(list ,@(cons 5 outputs))))))actual-value: #tresult: PASS
test-name: input list splicing + ungexp-native-splicinglocation: /home/sapientech/Dev/guix/guix_wip/tests/gexp.scm:288source:+ (test-assert+ "input list splicing + ungexp-native-splicing"+ (let* ((inputs+ (list (gexp-input glibc "debug")+ %bootstrap-guile))+ (exp (gexp (list (ungexp-native-splicing (cons (+ 2 3) inputs))))))+ (and (lset= equal?+ `((,glibc "debug") (,%bootstrap-guile "out"))+ (gexp-native-inputs exp))+ (null? (gexp-inputs exp))+ (equal?+ (gexp->sexp* exp)+ (gexp->sexp* exp "mips64el-linux")))))actual-value: #tresult: PASS
test-name: output listlocation: /home/sapientech/Dev/guix/guix_wip/tests/gexp.scm:298source:+ (test-equal+ "output list"+ 2+ (let ((exp (gexp (begin+ (mkdir (ungexp output))+ (mkdir (ungexp output "bar"))))))+ (length (gexp-outputs exp))))expected-value: 2actual-value: 2result: PASS
test-name: output list, combined gexpslocation: /home/sapientech/Dev/guix/guix_wip/tests/gexp.scm:304source:+ (test-assert+ "output list, combined gexps"+ (let* ((exp0 (gexp (mkdir (ungexp output))))+ (exp1 (gexp (mkdir (ungexp output "foo"))))+ (exp2 (gexp (begin+ (display "hi!")+ (ungexp exp0)+ (ungexp exp1)))))+ (and (lset= equal?+ (append (gexp-outputs exp0) (gexp-outputs exp1))+ (gexp-outputs exp2))+ (= 2 (length (gexp-outputs exp2))))))actual-value: #tresult: PASS
test-name: output list, combined gexps, duplicate outputlocation: /home/sapientech/Dev/guix/guix_wip/tests/gexp.scm:313source:+ (test-equal+ "output list, combined gexps, duplicate output"+ 1+ (let* ((exp0 (gexp (mkdir (ungexp output))))+ (exp1 (gexp (begin (mkdir (ungexp output)) (ungexp exp0))))+ (exp2 (gexp (begin (mkdir (ungexp output)) (ungexp exp1)))))+ (length (gexp-outputs exp2))))expected-value: 1actual-value: 1result: PASS
test-name: output list + ungexp-splicing list, combined gexpslocation: /home/sapientech/Dev/guix/guix_wip/tests/gexp.scm:320source:+ (test-assert+ "output list + ungexp-splicing list, combined gexps"+ (let* ((exp0 (gexp (mkdir (ungexp output))))+ (exp1 (gexp (mkdir (ungexp output "foo"))))+ (exp2 (gexp (begin+ (display "hi!")+ (ungexp-splicing (list exp0 exp1))))))+ (and (lset= equal?+ (append (gexp-outputs exp0) (gexp-outputs exp1))+ (gexp-outputs exp2))+ (= 2 (length (gexp-outputs exp2))))))actual-value: #tresult: PASS
test-name: gexp->filelocation: /home/sapientech/Dev/guix/guix_wip/tests/gexp.scm:330source:+ (test-assert+ "gexp->file"+ (run-with-store+ %store+ (mlet* %store-monad+ ((exp ->+ (gexp (display (ungexp %bootstrap-guile))))+ (guile (package-file %bootstrap-guile))+ (sexp (gexp->sexp exp))+ (drv (gexp->file "foo" exp))+ (out -> (derivation->output-path drv))+ (done (built-derivations (list drv)))+ (refs ((store-lift references) out)))+ (return+ (and (equal? sexp (call-with-input-file out read))+ (equal? (list guile) refs))))+ #:guile-for-build+ (%guile-for-build)))random seed for tests: 1469828179@ build-started /home/sapientech/Dev/guix/guix_wip/test-tmp/store/br6cmbmw2d0y578fhk2041nmjya1xbn3-foo.drv - x86_64-linux /home/sapientech/Dev/guix/guix_wip/test-tmp/var/log/guix/drvs/br//6cmbmw2d0y578fhk2041nmjya1xbn3-foo.drv.bz2@ build-succeeded /home/sapientech/Dev/guix/guix_wip/test-tmp/store/br6cmbmw2d0y578fhk2041nmjya1xbn3-foo.drv -actual-value: #tresult: PASS
test-name: gexp->derivationlocation: /home/sapientech/Dev/guix/guix_wip/tests/gexp.scm:341source:+ (test-assert+ "gexp->derivation"+ (run-with-store+ %store+ (mlet* %store-monad+ ((file (text-file "foo" "Hello, world!"))+ (exp ->+ (gexp (begin+ (mkdir (ungexp output))+ (chdir (ungexp output))+ (symlink+ (string-append+ (ungexp %bootstrap-guile)+ "/bin/guile")+ "foo")+ (symlink (ungexp file) (ungexp output "2nd")))))+ (drv (gexp->derivation "foo" exp))+ (out -> (derivation->output-path drv))+ (out2 -> (derivation->output-path drv "2nd"))+ (done (built-derivations (list drv)))+ (refs ((store-lift references) out))+ (refs2 ((store-lift references) out2))+ (guile (package-file %bootstrap-guile "bin/guile")))+ (return+ (and (string=?+ (readlink (string-append out "/foo"))+ guile)+ (string=? (readlink out2) file)+ (equal? refs (list (dirname (dirname guile))))+ (equal? refs2 (list file)))))+ #:guile-for-build+ (%guile-for-build)))@ build-started /home/sapientech/Dev/guix/guix_wip/test-tmp/store/zmhmw968wgivsjlvw5qw3l2xlq5icaz6-foo.drv - x86_64-linux /home/sapientech/Dev/guix/guix_wip/test-tmp/var/log/guix/drvs/zm//hmw968wgivsjlvw5qw3l2xlq5icaz6-foo.drv.bz2@ build-succeeded /home/sapientech/Dev/guix/guix_wip/test-tmp/store/zmhmw968wgivsjlvw5qw3l2xlq5icaz6-foo.drv -actual-value: #tresult: PASS
test-name: gexp->derivation vs. graftslocation: /home/sapientech/Dev/guix/guix_wip/tests/gexp.scm:365source:+ (test-assert+ "gexp->derivation vs. grafts"+ (run-with-store+ %store+ (mlet* %store-monad+ ((graft? (set-grafting #f))+ (p0 ->+ (dummy-package+ "dummy"+ (arguments '(#:implicit-inputs? #f))))+ (r -> (package (inherit p0) (name "DuMMY")))+ (p1 -> (package (inherit p0) (replacement r)))+ (exp0 ->+ (gexp (frob (ungexp p0) (ungexp output))))+ (exp1 ->+ (gexp (frob (ungexp p1) (ungexp output))))+ (void (set-guile-for-build %bootstrap-guile))+ (drv0 (gexp->derivation "t" exp0 #:graft? #t))+ (drv1 (gexp->derivation "t" exp1 #:graft? #t))+ (drv1* (gexp->derivation "t" exp1 #:graft? #f))+ (_ (set-grafting graft?)))+ (return+ (and (not (string=?+ (derivation->output-path drv0)+ (derivation->output-path drv1)))+ (string=?+ (derivation->output-path drv0)+ (derivation->output-path drv1*)))))+ #:guile-for-build+ (%guile-for-build)))actual-value: #tresult: PASS
test-name: gexp->derivation, composed gexpslocation: /home/sapientech/Dev/guix/guix_wip/tests/gexp.scm:384source:+ (test-assert+ "gexp->derivation, composed gexps"+ (run-with-store+ %store+ (mlet* %store-monad+ ((exp0 ->+ (gexp (begin+ (mkdir (ungexp output))+ (chdir (ungexp output)))))+ (exp1 ->+ (gexp (symlink+ (string-append+ (ungexp %bootstrap-guile)+ "/bin/guile")+ "foo")))+ (exp ->+ (gexp (begin (ungexp exp0) (ungexp exp1))))+ (drv (gexp->derivation "foo" exp))+ (out -> (derivation->output-path drv))+ (done (built-derivations (list drv)))+ (guile (package-file %bootstrap-guile "bin/guile")))+ (return+ (string=?+ (readlink (string-append out "/foo"))+ guile)))+ #:guile-for-build+ (%guile-for-build)))@ build-started /home/sapientech/Dev/guix/guix_wip/test-tmp/store/d7a8qlyp2svnz3ayq1g38bx4lcymb4h6-foo.drv - x86_64-linux /home/sapientech/Dev/guix/guix_wip/test-tmp/var/log/guix/drvs/d7//a8qlyp2svnz3ayq1g38bx4lcymb4h6-foo.drv.bz2@ build-succeeded /home/sapientech/Dev/guix/guix_wip/test-tmp/store/d7a8qlyp2svnz3ayq1g38bx4lcymb4h6-foo.drv -actual-value: #tresult: PASS
test-name: gexp->derivation, default systemlocation: /home/sapientech/Dev/guix/guix_wip/tests/gexp.scm:400source:+ (test-assert+ "gexp->derivation, default system"+ (run-with-store+ %store+ (let ((system (%current-system))+ (mdrv (parameterize+ ((%current-system "foobar64-linux"))+ (gexp->derivation+ "foo"+ (gexp (mkdir (ungexp output)))))))+ (mlet %store-monad+ ((drv mdrv))+ (return+ (string=? system (derivation-system drv)))))+ #:guile-for-build+ (%guile-for-build)))actual-value: #tresult: PASS
test-name: gexp->derivation, local-filelocation: /home/sapientech/Dev/guix/guix_wip/tests/gexp.scm:411source:+ (test-assert+ "gexp->derivation, local-file"+ (run-with-store+ %store+ (mlet* %store-monad+ ((file -> (search-path %load-path "guix.scm"))+ (intd (interned-file file #:recursive? #f))+ (local -> (local-file file))+ (exp ->+ (gexp (begin+ (stat (ungexp local))+ (symlink (ungexp local) (ungexp output)))))+ (drv (gexp->derivation "local-file" exp)))+ (mbegin+ %store-monad+ (built-derivations (list drv))+ (return+ (string=?+ (readlink (derivation->output-path drv))+ intd))))+ #:guile-for-build+ (%guile-for-build)))@ build-started /home/sapientech/Dev/guix/guix_wip/test-tmp/store/h91argxck70yhn3k38qclqr7b1mcqky7-local-file.drv - x86_64-linux /home/sapientech/Dev/guix/guix_wip/test-tmp/var/log/guix/drvs/h9//1argxck70yhn3k38qclqr7b1mcqky7-local-file.drv.bz2@ build-succeeded /home/sapientech/Dev/guix/guix_wip/test-tmp/store/h91argxck70yhn3k38qclqr7b1mcqky7-local-file.drv -actual-value: #tresult: PASS
test-name: gexp->derivation, cross-compilationlocation: /home/sapientech/Dev/guix/guix_wip/tests/gexp.scm:425source:+ (test-assert+ "gexp->derivation, cross-compilation"+ (run-with-store+ %store+ (mlet* %store-monad+ ((target -> "mips64el-linux")+ (exp ->+ (gexp (list (ungexp coreutils) (ungexp output))))+ (xdrv (gexp->derivation "foo" exp #:target target))+ (refs ((store-lift references)+ (derivation-file-name xdrv)))+ (xcu (package->cross-derivation coreutils target))+ (cu (package->derivation coreutils)))+ (return+ (and (member (derivation-file-name xcu) refs)+ (not (member (derivation-file-name cu) refs)))))+ #:guile-for-build+ (%guile-for-build)))actual-value: #tresult: PASS
test-name: gexp->derivation, ungexp-nativelocation: /home/sapientech/Dev/guix/guix_wip/tests/gexp.scm:439source:+ (test-assert+ "gexp->derivation, ungexp-native"+ (run-with-store+ %store+ (mlet* %store-monad+ ((target -> "mips64el-linux")+ (exp ->+ (gexp (list (ungexp-native coreutils) (ungexp output))))+ (xdrv (gexp->derivation "foo" exp #:target target))+ (drv (gexp->derivation "foo" exp)))+ (return+ (string=?+ (derivation-file-name drv)+ (derivation-file-name xdrv))))+ #:guile-for-build+ (%guile-for-build)))actual-value: #tresult: PASS
test-name: gexp->derivation, ungexp + ungexp-nativelocation: /home/sapientech/Dev/guix/guix_wip/tests/gexp.scm:449source:+ (test-assert+ "gexp->derivation, ungexp + ungexp-native"+ (run-with-store+ %store+ (mlet* %store-monad+ ((target -> "mips64el-linux")+ (exp ->+ (gexp (list (ungexp-native coreutils)+ (ungexp glibc)+ (ungexp output))))+ (xdrv (gexp->derivation "foo" exp #:target target))+ (refs ((store-lift references)+ (derivation-file-name xdrv)))+ (xglibc (package->cross-derivation glibc target))+ (cu (package->derivation coreutils)))+ (return+ (and (member (derivation-file-name cu) refs)+ (member (derivation-file-name xglibc) refs))))+ #:guile-for-build+ (%guile-for-build)))actual-value: (/home/sapientech/Dev/guix/guix_wip/test-tmp/store/izq9lrpv4z9xaaslk79ayidcv5lisn90-glibc-2.22.drv /home/sapientech/Dev/guix/guix_wip/test-tmp/store/sajnfz79nhdi4l8a464c9hhv4vf0gay2-coreutils-8.24.drv)result: PASS
test-name: gexp->derivation, ungexp-native + composed gexpslocation: /home/sapientech/Dev/guix/guix_wip/tests/gexp.scm:463source:+ (test-assert+ "gexp->derivation, ungexp-native + composed gexps"+ (run-with-store+ %store+ (mlet* %store-monad+ ((target -> "mips64el-linux")+ (exp0 -> (gexp (list 1 2 (ungexp coreutils))))+ (exp -> (gexp (list 0 (ungexp-native exp0))))+ (xdrv (gexp->derivation "foo" exp #:target target))+ (drv (gexp->derivation "foo" exp)))+ (return+ (string=?+ (derivation-file-name drv)+ (derivation-file-name xdrv))))+ #:guile-for-build+ (%guile-for-build)))actual-value: #tresult: PASS
test-name: gexp->derivation, store copylocation: /home/sapientech/Dev/guix/guix_wip/tests/gexp.scm:474source:+ (test-assert+ "gexp->derivation, store copy"+ (run-with-store+ %store+ (let ((build-one+ (gexp (call-with-output-file+ (ungexp output)+ (lambda (port) (display "This is the one." port)))))+ (build-two+ (lambda (one)+ (gexp (begin+ (mkdir (ungexp output))+ (symlink+ (ungexp one)+ (string-append (ungexp output) "/one"))+ (call-with-output-file+ (string-append (ungexp output) "/two")+ (lambda (port)+ (display "This is the second one." port)))))))+ (build-drv+ (gexp (begin+ (use-modules (guix build store-copy))+ (mkdir (ungexp output))+ (populate-store '("graph") (ungexp output))))))+ (mlet* %store-monad+ ((one (gexp->derivation "one" build-one))+ (two (gexp->derivation "two" (build-two one)))+ (drv (gexp->derivation+ "store-copy"+ build-drv+ #:references-graphs+ `(("graph" ,two))+ #:modules+ '((guix build store-copy) (guix build utils))))+ (ok? (built-derivations (list drv)))+ (out -> (derivation->output-path drv)))+ (let ((one (derivation->output-path one))+ (two (derivation->output-path two)))+ (return+ (and ok?+ (file-exists? (string-append out "/" one))+ (file-exists? (string-append out "/" two))+ (file-exists? (string-append out "/" two "/two"))+ (string=?+ (readlink (string-append out "/" two "/one"))+ one))))))+ #:guile-for-build+ (%guile-for-build)))@ build-started /home/sapientech/Dev/guix/guix_wip/test-tmp/store/6qh9vwsa86rmnc4pqb4fjaj3ydbiy301-module-import.drv - x86_64-linux /home/sapientech/Dev/guix/guix_wip/test-tmp/var/log/guix/drvs/6q//h9vwsa86rmnc4pqb4fjaj3ydbiy301-module-import.drv.bz2@ build-succeeded /home/sapientech/Dev/guix/guix_wip/test-tmp/store/6qh9vwsa86rmnc4pqb4fjaj3ydbiy301-module-import.drv -@ build-started /home/sapientech/Dev/guix/guix_wip/test-tmp/store/6ycg2swlmras8w601nszvpqcanlimfb9-one.drv - x86_64-linux /home/sapientech/Dev/guix/guix_wip/test-tmp/var/log/guix/drvs/6y//cg2swlmras8w601nszvpqcanlimfb9-one.drv.bz2@ build-succeeded /home/sapientech/Dev/guix/guix_wip/test-tmp/store/6ycg2swlmras8w601nszvpqcanlimfb9-one.drv -@ build-started /home/sapientech/Dev/guix/guix_wip/test-tmp/store/pxpbgfyxyc8qgzwswr950hm84jj04phm-module-import-compiled.drv - x86_64-linux /home/sapientech/Dev/guix/guix_wip/test-tmp/var/log/guix/drvs/px//pbgfyxyc8qgzwswr950hm84jj04phm-module-import-compiled.drv.bz2@ build-succeeded /home/sapientech/Dev/guix/guix_wip/test-tmp/store/pxpbgfyxyc8qgzwswr950hm84jj04phm-module-import-compiled.drv -@ build-started /home/sapientech/Dev/guix/guix_wip/test-tmp/store/hlz0f76xsngzxm096sk52m421p3pk6vx-two.drv - x86_64-linux /home/sapientech/Dev/guix/guix_wip/test-tmp/var/log/guix/drvs/hl//z0f76xsngzxm096sk52m421p3pk6vx-two.drv.bz2@ build-succeeded /home/sapientech/Dev/guix/guix_wip/test-tmp/store/hlz0f76xsngzxm096sk52m421p3pk6vx-two.drv -@ build-started /home/sapientech/Dev/guix/guix_wip/test-tmp/store/mfjrzf11q70rc19jmyrr6iis51sj1130-store-copy.drv - x86_64-linux /home/sapientech/Dev/guix/guix_wip/test-tmp/var/log/guix/drvs/mf//jrzf11q70rc19jmyrr6iis51sj1130-store-copy.drv.bz2`/home/sapientech/Dev/guix/guix_wip/test-tmp/store/94lps0vkkjpcc4b0rnw9nvjm2jxy8dw2-one' -> `/home/sapientech/Dev/guix/guix_wip/test-tmp/store/0lnryq5km1232ajqyz9bipvp6nrr9scf-store-copy/home/sapientech/Dev/guix/guix_wip/test-tmp/store/94lps0vkkjpcc4b0rnw9nvjm2jxy8dw2-one'`/home/sapientech/Dev/guix/guix_wip/test-tmp/store/fp5qv848xdrqpf7fxbx5m8rw46whqw2d-two/one' -> `/home/sapientech/Dev/guix/guix_wip/test-tmp/store/0lnryq5km1232ajqyz9bipvp6nrr9scf-store-copy/home/sapientech/Dev/guix/guix_wip/test-tmp/store/fp5qv848xdrqpf7fxbx5m8rw46whqw2d-two/one'`/home/sapientech/Dev/guix/guix_wip/test-tmp/store/fp5qv848xdrqpf7fxbx5m8rw46whqw2d-two/two' -> `/home/sapientech/Dev/guix/guix_wip/test-tmp/store/0lnryq5km1232ajqyz9bipvp6nrr9scf-store-copy/home/sapientech/Dev/guix/guix_wip/test-tmp/store/fp5qv848xdrqpf7fxbx5m8rw46whqw2d-two/two'@ build-succeeded /home/sapientech/Dev/guix/guix_wip/test-tmp/store/mfjrzf11q70rc19jmyrr6iis51sj1130-store-copy.drv -actual-value: #tresult: PASS
test-name: imported-fileslocation: /home/sapientech/Dev/guix/guix_wip/tests/gexp.scm:509source:+ (test-assert+ "imported-files"+ (run-with-store+ %store+ (mlet* %store-monad+ ((files ->+ `(("x"+ unquote+ (search-path %load-path "ice-9/q.scm"))+ ("a/b/c"+ unquote+ (search-path %load-path "guix/derivations.scm"))+ ("p/q"+ unquote+ (search-path %load-path "guix.scm"))+ ("p/z"+ unquote+ (search-path %load-path "guix/store.scm"))))+ (drv (imported-files files)))+ (mbegin+ %store-monad+ (built-derivations (list drv))+ (let ((dir (derivation->output-path drv)))+ (return+ (every (match-lambda+ ((path . source)+ (equal?+ (call-with-input-file+ (string-append dir "/" path)+ get-bytevector-all)+ (call-with-input-file+ source+ get-bytevector-all))))+ files)))))+ #:guile-for-build+ (%guile-for-build)))@ build-started /home/sapientech/Dev/guix/guix_wip/test-tmp/store/135kg986zl2n23wgnayxik5zb7k93k3b-file-import.drv - x86_64-linux /home/sapientech/Dev/guix/guix_wip/test-tmp/var/log/guix/drvs/13//5kg986zl2n23wgnayxik5zb7k93k3b-file-import.drv.bz2@ build-succeeded /home/sapientech/Dev/guix/guix_wip/test-tmp/store/135kg986zl2n23wgnayxik5zb7k93k3b-file-import.drv -actual-value: #tresult: PASS
test-name: gexp-modules & ungexplocation: /home/sapientech/Dev/guix/guix_wip/tests/gexp.scm:529source:+ (test-equal+ "gexp-modules & ungexp"+ '((bar) (foo))+ ((@@ (guix gexp) gexp-modules)+ (gexp (foo (ungexp+ (with-imported-modules '((foo)) (gexp +)))+ (ungexp-native+ (with-imported-modules '((bar)) (gexp -)))))))expected-value: ((bar) (foo))actual-value: ((bar) (foo))result: PASS
test-name: gexp-modules & ungexp-splicinglocation: /home/sapientech/Dev/guix/guix_wip/tests/gexp.scm:535source:+ (test-equal+ "gexp-modules & ungexp-splicing"+ '((foo) (bar))+ ((@@ (guix gexp) gexp-modules)+ (gexp (foo (ungexp-splicing+ (list (with-imported-modules '((foo)) (gexp +))+ (with-imported-modules '((bar)) (gexp -))))))))expected-value: ((foo) (bar))actual-value: ((foo) (bar))result: PASS
test-name: gexp->derivation #:moduleslocation: /home/sapientech/Dev/guix/guix_wip/tests/gexp.scm:541source:+ (test-assert+ "gexp->derivation #:modules"+ (run-with-store+ %store+ (mlet* %store-monad+ ((build ->+ (gexp (begin+ (use-modules (guix build utils))+ (mkdir-p+ (string-append+ (ungexp output)+ "/guile/guix/nix"))+ #t)))+ (drv (gexp->derivation+ "test-with-modules"+ build+ #:modules+ '((guix build utils)))))+ (mbegin+ %store-monad+ (built-derivations (list drv))+ (let* ((p (derivation->output-path drv))+ (s (stat (string-append p "/guile/guix/nix"))))+ (return (eq? (stat:type s) 'directory)))))+ #:guile-for-build+ (%guile-for-build)))@ build-started /home/sapientech/Dev/guix/guix_wip/test-tmp/store/6lqp7f964zbiviini207blfw43bcp6jk-test-with-modules.drv - x86_64-linux /home/sapientech/Dev/guix/guix_wip/test-tmp/var/log/guix/drvs/6l//qp7f964zbiviini207blfw43bcp6jk-test-with-modules.drv.bz2@ build-succeeded /home/sapientech/Dev/guix/guix_wip/test-tmp/store/6lqp7f964zbiviini207blfw43bcp6jk-test-with-modules.drv -actual-value: #tresult: PASS
test-name: gexp->derivation & with-imported-moduleslocation: /home/sapientech/Dev/guix/guix_wip/tests/gexp.scm:555source:+ (test-assert+ "gexp->derivation & with-imported-modules"+ (run-with-store+ %store+ (mlet* %store-monad+ ((build ->+ (with-imported-modules+ '((guix build utils))+ (gexp (begin+ (use-modules (guix build utils))+ (mkdir-p+ (string-append+ (ungexp output)+ "/guile/guix/nix"))+ #t))))+ (drv (gexp->derivation "test-with-modules" build)))+ (mbegin+ %store-monad+ (built-derivations (list drv))+ (let* ((p (derivation->output-path drv))+ (s (stat (string-append p "/guile/guix/nix"))))+ (return (eq? (stat:type s) 'directory)))))+ #:guile-for-build+ (%guile-for-build)))actual-value: #tresult: PASS
test-name: gexp->derivation & nested with-imported-moduleslocation: /home/sapientech/Dev/guix/guix_wip/tests/gexp.scm:570source:+ (test-assert+ "gexp->derivation & nested with-imported-modules"+ (run-with-store+ %store+ (mlet* %store-monad+ ((build1+ ->+ (with-imported-modules+ '((guix build utils))+ (gexp (begin+ (use-modules (guix build utils))+ (mkdir-p+ (string-append (ungexp output) "/guile/guix/nix"))+ #t))))+ (build2+ ->+ (with-imported-modules+ '((guix build bournish))+ (gexp (begin+ (use-modules+ (guix build bournish)+ (system base compile))+ (ungexp-native build1)+ (call-with-output-file+ (string-append (ungexp output) "/b")+ (lambda (port)+ (write (read-and-compile+ (open-input-string "cd /foo")+ #:from+ %bournish-language+ #:to+ 'scheme)+ port)))))))+ (drv (gexp->derivation "test-with-modules" build2)))+ (mbegin+ %store-monad+ (built-derivations (list drv))+ (let* ((p (derivation->output-path drv))+ (s (stat (string-append p "/guile/guix/nix")))+ (b (string-append p "/b")))+ (return+ (and (eq? (stat:type s) 'directory)+ (equal?+ '(chdir "/foo")+ (call-with-input-file b read)))))))+ #:guile-for-build+ (%guile-for-build)))@ build-started /home/sapientech/Dev/guix/guix_wip/test-tmp/store/r3icsc8rkkx42gqycsi2k43qdfjl5a8z-module-import.drv - x86_64-linux /home/sapientech/Dev/guix/guix_wip/test-tmp/var/log/guix/drvs/r3//icsc8rkkx42gqycsi2k43qdfjl5a8z-module-import.drv.bz2@ build-succeeded /home/sapientech/Dev/guix/guix_wip/test-tmp/store/r3icsc8rkkx42gqycsi2k43qdfjl5a8z-module-import.drv -@ build-started /home/sapientech/Dev/guix/guix_wip/test-tmp/store/wh7apihrc82cp28arm2n6xfxcx6125zc-module-import-compiled.drv - x86_64-linux /home/sapientech/Dev/guix/guix_wip/test-tmp/var/log/guix/drvs/wh//7apihrc82cp28arm2n6xfxcx6125zc-module-import-compiled.drv.bz2@ build-succeeded /home/sapientech/Dev/guix/guix_wip/test-tmp/store/wh7apihrc82cp28arm2n6xfxcx6125zc-module-import-compiled.drv -@ build-started /home/sapientech/Dev/guix/guix_wip/test-tmp/store/qmqsh8w1bd8pbxrrmc2k7viyyfdm2jzb-test-with-modules.drv - x86_64-linux /home/sapientech/Dev/guix/guix_wip/test-tmp/var/log/guix/drvs/qm//qsh8w1bd8pbxrrmc2k7viyyfdm2jzb-test-with-modules.drv.bz2@ build-succeeded /home/sapientech/Dev/guix/guix_wip/test-tmp/store/qmqsh8w1bd8pbxrrmc2k7viyyfdm2jzb-test-with-modules.drv -actual-value: #tresult: PASS
test-name: gexp->derivation #:references-graphslocation: /home/sapientech/Dev/guix/guix_wip/tests/gexp.scm:599source:+ (test-assert+ "gexp->derivation #:references-graphs"+ (run-with-store+ %store+ (mlet* %store-monad+ ((one (text-file "one" (random-text)))+ (two (gexp->derivation+ "two"+ (gexp (symlink (ungexp one) (ungexp output "chbouib")))))+ (build ->+ (with-imported-modules+ '((guix build store-copy) (guix build utils))+ (gexp (begin+ (use-modules (guix build store-copy))+ (with-output-to-file+ (ungexp output)+ (lambda ()+ (write (call-with-input-file+ "guile"+ read-reference-graph))))+ (with-output-to-file+ (ungexp output "one")+ (lambda ()+ (write (call-with-input-file+ "one"+ read-reference-graph))))+ (with-output-to-file+ (ungexp output "two")+ (lambda ()+ (write (call-with-input-file+ "two"+ read-reference-graph))))))))+ (drv (gexp->derivation+ "ref-graphs"+ build+ #:references-graphs+ `(("one" ,one)+ ("two" ,two "chbouib")+ ("guile" ,%bootstrap-guile))))+ (ok? (built-derivations (list drv)))+ (guile-drv+ (package->derivation %bootstrap-guile))+ (bash (interned-file+ (search-bootstrap-binary+ "bash"+ (%current-system))+ "bash"+ #:recursive?+ #t))+ (g-one -> (derivation->output-path drv "one"))+ (g-two -> (derivation->output-path drv "two"))+ (g-guile -> (derivation->output-path drv)))+ (return+ (and ok?+ (equal?+ (call-with-input-file g-one read)+ (list one))+ (lset= string=?+ (call-with-input-file g-two read)+ (list one+ (derivation->output-path two "chbouib")))+ (lset= string=?+ (call-with-input-file g-guile read)+ (list (derivation->output-path guile-drv) bash)))))+ #:guile-for-build+ (%guile-for-build)))@ build-started /home/sapientech/Dev/guix/guix_wip/test-tmp/store/yi0nig74ynbzjm47frd4pvgl0hmq80w5-two.drv - x86_64-linux /home/sapientech/Dev/guix/guix_wip/test-tmp/var/log/guix/drvs/yi//0nig74ynbzjm47frd4pvgl0hmq80w5-two.drv.bz2@ build-succeeded /home/sapientech/Dev/guix/guix_wip/test-tmp/store/yi0nig74ynbzjm47frd4pvgl0hmq80w5-two.drv -@ build-started /home/sapientech/Dev/guix/guix_wip/test-tmp/store/4iwkm0gw4qhhnn6xazsgnx7lhc6iwzam-ref-graphs.drv - x86_64-linux /home/sapientech/Dev/guix/guix_wip/test-tmp/var/log/guix/drvs/4i//wkm0gw4qhhnn6xazsgnx7lhc6iwzam-ref-graphs.drv.bz2@ build-succeeded /home/sapientech/Dev/guix/guix_wip/test-tmp/store/4iwkm0gw4qhhnn6xazsgnx7lhc6iwzam-ref-graphs.drv -actual-value: #tresult: PASS
test-name: gexp->derivation #:allowed-referenceslocation: /home/sapientech/Dev/guix/guix_wip/tests/gexp.scm:643source:+ (test-assert+ "gexp->derivation #:allowed-references"+ (run-with-store+ %store+ (mlet %store-monad+ ((drv (gexp->derivation+ "allowed-refs"+ (gexp (begin+ (mkdir (ungexp output))+ (chdir (ungexp output))+ (symlink (ungexp output) "self")+ (symlink (ungexp %bootstrap-guile) "guile")))+ #:allowed-references+ (list "out" %bootstrap-guile))))+ (built-derivations (list drv)))+ #:guile-for-build+ (%guile-for-build)))@ build-started /home/sapientech/Dev/guix/guix_wip/test-tmp/store/qr3plan0zxv637d52f8kg7picirmdmmc-allowed-refs.drv - x86_64-linux /home/sapientech/Dev/guix/guix_wip/test-tmp/var/log/guix/drvs/qr//3plan0zxv637d52f8kg7picirmdmmc-allowed-refs.drv.bz2@ build-succeeded /home/sapientech/Dev/guix/guix_wip/test-tmp/store/qr3plan0zxv637d52f8kg7picirmdmmc-allowed-refs.drv -actual-value: #tresult: PASS
test-name: gexp->derivation #:allowed-references, specific outputlocation: /home/sapientech/Dev/guix/guix_wip/tests/gexp.scm:655source:+ (test-assert+ "gexp->derivation #:allowed-references, specific output"+ (run-with-store+ %store+ (mlet* %store-monad+ ((in (gexp->derivation+ "thing"+ (gexp (begin+ (mkdir (ungexp output "ok"))+ (mkdir (ungexp output "not-ok"))))))+ (drv (gexp->derivation+ "allowed-refs"+ (gexp (begin+ (pk (ungexp in "not-ok"))+ (mkdir (ungexp output))+ (chdir (ungexp output))+ (symlink (ungexp output) "self")+ (symlink (ungexp in "ok") "ok")))+ #:allowed-references+ (list "out" (gexp-input in "ok")))))+ (built-derivations (list drv)))+ #:guile-for-build+ (%guile-for-build)))@ build-started /home/sapientech/Dev/guix/guix_wip/test-tmp/store/yk97bv7rcbzlv3j79b9m2vr8v7h99hr7-thing.drv - x86_64-linux /home/sapientech/Dev/guix/guix_wip/test-tmp/var/log/guix/drvs/yk//97bv7rcbzlv3j79b9m2vr8v7h99hr7-thing.drv.bz2@ build-succeeded /home/sapientech/Dev/guix/guix_wip/test-tmp/store/yk97bv7rcbzlv3j79b9m2vr8v7h99hr7-thing.drv -@ build-started /home/sapientech/Dev/guix/guix_wip/test-tmp/store/bfrj4q14qxc5bvsy1938qi6rgb0xzsqy-allowed-refs.drv - x86_64-linux /home/sapientech/Dev/guix/guix_wip/test-tmp/var/log/guix/drvs/bf//rj4q14qxc5bvsy1938qi6rgb0xzsqy-allowed-refs.drv.bz2
;;; ("/home/sapientech/Dev/guix/guix_wip/test-tmp/store/hl2cmd513kn9sa6pbf4zr3k7sa78q5ff-thing-not-ok")@ build-succeeded /home/sapientech/Dev/guix/guix_wip/test-tmp/store/bfrj4q14qxc5bvsy1938qi6rgb0xzsqy-allowed-refs.drv -actual-value: #tresult: PASS
test-name: gexp->derivation #:allowed-references, disallowedlocation: /home/sapientech/Dev/guix/guix_wip/tests/gexp.scm:672source:+ (test-assert+ "gexp->derivation #:allowed-references, disallowed"+ (let ((drv (run-with-store+ %store+ (gexp->derivation+ "allowed-refs"+ (gexp (begin+ (mkdir (ungexp output))+ (chdir (ungexp output))+ (symlink (ungexp %bootstrap-guile) "guile")))+ #:allowed-references+ '()))))+ (guard (c ((nix-protocol-error? c) #t))+ (build-derivations %store (list drv))+ #f)))@ build-started /home/sapientech/Dev/guix/guix_wip/test-tmp/store/f2wbs6skpgnmljv4cddzx05gcx26b6n5-allowed-refs.drv - x86_64-linux /home/sapientech/Dev/guix/guix_wip/test-tmp/var/log/guix/drvs/f2//wbs6skpgnmljv4cddzx05gcx26b6n5-allowed-refs.drv.bz2output (`/home/sapientech/Dev/guix/guix_wip/test-tmp/store/ilzqy6rrlwdwsa939k1z5maipa1g202i-allowed-refs') is not allowed to refer to path `/home/sapientech/Dev/guix/guix_wip/test-tmp/store/0vxgvlx03qscrds88s65hrs70n5jkw2g-guile-bootstrap-2.0'@ build-failed /home/sapientech/Dev/guix/guix_wip/test-tmp/store/f2wbs6skpgnmljv4cddzx05gcx26b6n5-allowed-refs.drv - 1 output (`/home/sapientech/Dev/guix/guix_wip/test-tmp/store/ilzqy6rrlwdwsa939k1z5maipa1g202i-allowed-refs') is not allowed to refer to path `/home/sapientech/Dev/guix/guix_wip/test-tmp/store/0vxgvlx03qscrds88s65hrs70n5jkw2g-guile-bootstrap-2.0'actual-value: #tresult: PASS
test-name: gexp->derivation #:disallowed-references, allowedlocation: /home/sapientech/Dev/guix/guix_wip/tests/gexp.scm:684source:+ (test-assert+ "gexp->derivation #:disallowed-references, allowed"+ (run-with-store+ %store+ (mlet %store-monad+ ((drv (gexp->derivation+ "disallowed-refs"+ (gexp (begin+ (mkdir (ungexp output))+ (chdir (ungexp output))+ (symlink (ungexp output) "self")+ (symlink (ungexp %bootstrap-guile) "guile")))+ #:disallowed-references+ '())))+ (built-derivations (list drv)))+ #:guile-for-build+ (%guile-for-build)))@ build-started /home/sapientech/Dev/guix/guix_wip/test-tmp/store/n3hhcjzignj7czh53scbwjm7mcxa27yk-disallowed-refs.drv - x86_64-linux /home/sapientech/Dev/guix/guix_wip/test-tmp/var/log/guix/drvs/n3//hhcjzignj7czh53scbwjm7mcxa27yk-disallowed-refs.drv.bz2@ build-succeeded /home/sapientech/Dev/guix/guix_wip/test-tmp/store/n3hhcjzignj7czh53scbwjm7mcxa27yk-disallowed-refs.drv -actual-value: #tresult: PASS
test-name: gexp->derivation #:disallowed-referenceslocation: /home/sapientech/Dev/guix/guix_wip/tests/gexp.scm:696source:+ (test-assert+ "gexp->derivation #:disallowed-references"+ (let ((drv (run-with-store+ %store+ (gexp->derivation+ "disallowed-refs"+ (gexp (begin+ (mkdir (ungexp output))+ (chdir (ungexp output))+ (symlink (ungexp %bootstrap-guile) "guile")))+ #:disallowed-references+ (list %bootstrap-guile)))))+ (guard (c ((nix-protocol-error? c) #t))+ (build-derivations %store (list drv))+ #f)))@ build-started /home/sapientech/Dev/guix/guix_wip/test-tmp/store/y6h6i2d0vb4whn8bfvyl5vff17h9rs19-disallowed-refs.drv - x86_64-linux /home/sapientech/Dev/guix/guix_wip/test-tmp/var/log/guix/drvs/y6//h6i2d0vb4whn8bfvyl5vff17h9rs19-disallowed-refs.drv.bz2output (`/home/sapientech/Dev/guix/guix_wip/test-tmp/store/jz1q32n6qxyvi6dkywl028y6fvdfsi1k-disallowed-refs') is not allowed to refer to path `/home/sapientech/Dev/guix/guix_wip/test-tmp/store/0vxgvlx03qscrds88s65hrs70n5jkw2g-guile-bootstrap-2.0'@ build-failed /home/sapientech/Dev/guix/guix_wip/test-tmp/store/y6h6i2d0vb4whn8bfvyl5vff17h9rs19-disallowed-refs.drv - 1 output (`/home/sapientech/Dev/guix/guix_wip/test-tmp/store/jz1q32n6qxyvi6dkywl028y6fvdfsi1k-disallowed-refs') is not allowed to refer to path `/home/sapientech/Dev/guix/guix_wip/test-tmp/store/0vxgvlx03qscrds88s65hrs70n5jkw2g-guile-bootstrap-2.0'actual-value: #tresult: PASS
test-name: gexp->scriptlocation: /home/sapientech/Dev/guix/guix_wip/tests/gexp.scm:716source:+ (test-assert+ "gexp->script"+ (run-with-store+ %store+ (mlet* %store-monad+ ((n -> (random (expt 2 50)))+ (exp ->+ (gexp (system*+ (string-append+ (ungexp %bootstrap-guile)+ "/bin/guile")+ "-c"+ (object->string '(display (expt (ungexp n) 2))))))+ (drv (gexp->script+ "guile-thing"+ exp+ #:guile+ %bootstrap-guile))+ (out -> (derivation->output-path drv))+ (done (built-derivations (list drv))))+ (let* ((pipe (open-input-pipe out))+ (str (get-string-all pipe)))+ (return+ (and (zero? (close-pipe pipe))+ (= (expt n 2) (string->number str))))))+ #:guile-for-build+ (%guile-for-build)))result: SKIP
test-name: program-filelocation: /home/sapientech/Dev/guix/guix_wip/tests/gexp.scm:733source:+ (test-assert+ "program-file"+ (run-with-store+ %store+ (let* ((n (random (expt 2 50)))+ (exp (with-imported-modules+ '((guix build utils))+ (gexp (begin+ (use-modules (guix build utils))+ (display (ungexp n))))))+ (file (program-file+ "program"+ exp+ #:guile+ %bootstrap-guile)))+ (mlet* %store-monad+ ((drv (lower-object file))+ (out -> (derivation->output-path drv)))+ (mbegin+ %store-monad+ (built-derivations (list drv))+ (let* ((pipe (open-input-pipe out))+ (str (get-string-all pipe)))+ (return+ (and (zero? (close-pipe pipe))+ (= n (string->number str))))))))+ #:guile-for-build+ (%guile-for-build)))result: SKIP
test-name: scheme-filelocation: /home/sapientech/Dev/guix/guix_wip/tests/gexp.scm:750source:+ (test-assert+ "scheme-file"+ (run-with-store+ %store+ (let* ((text (plain-file "foo" "Hello, world!"))+ (scheme+ (scheme-file+ "bar"+ (gexp (list "foo" (ungexp text))))))+ (mlet* %store-monad+ ((drv (lower-object scheme))+ (text (lower-object text))+ (out -> (derivation->output-path drv)))+ (mbegin+ %store-monad+ (built-derivations (list drv))+ (mlet %store-monad+ ((refs ((store-lift references) out)))+ (return+ (and (equal? refs (list text))+ (equal?+ `(list "foo" ,text)+ (call-with-input-file out read))))))))+ #:guile-for-build+ (%guile-for-build)))@ build-started /home/sapientech/Dev/guix/guix_wip/test-tmp/store/c8il5061j0qwbgj6lr5yn10iw1gp8jch-bar.drv - x86_64-linux /home/sapientech/Dev/guix/guix_wip/test-tmp/var/log/guix/drvs/c8//il5061j0qwbgj6lr5yn10iw1gp8jch-bar.drv.bz2@ build-succeeded /home/sapientech/Dev/guix/guix_wip/test-tmp/store/c8il5061j0qwbgj6lr5yn10iw1gp8jch-bar.drv -actual-value: #tresult: PASS
test-name: text-file*location: /home/sapientech/Dev/guix/guix_wip/tests/gexp.scm:763source:+ (test-assert+ "text-file*"+ (let ((references (store-lift references)))+ (run-with-store+ %store+ (mlet* %store-monad+ ((drv (package->derivation %bootstrap-guile))+ (guile -> (derivation->output-path drv))+ (file (text-file "bar" "This is bar."))+ (text (text-file*+ "foo"+ %bootstrap-guile+ "/bin/guile "+ (gexp-input %bootstrap-guile "out")+ "/bin/guile "+ drv+ "/bin/guile "+ file))+ (done (built-derivations (list text)))+ (out -> (derivation->output-path text))+ (refs (references out)))+ (return+ (and (lset= string=? refs (list guile file))+ (equal?+ (call-with-input-file out get-string-all)+ (string-append+ guile+ "/bin/guile "+ guile+ "/bin/guile "+ guile+ "/bin/guile "+ file)))))+ #:guile-for-build+ (package-derivation %store %bootstrap-guile))))@ build-started /home/sapientech/Dev/guix/guix_wip/test-tmp/store/hkndxm5i5l1zczbiavqbk84qrdmilz6g-foo.drv - x86_64-linux /home/sapientech/Dev/guix/guix_wip/test-tmp/var/log/guix/drvs/hk//ndxm5i5l1zczbiavqbk84qrdmilz6g-foo.drv.bz2@ build-succeeded /home/sapientech/Dev/guix/guix_wip/test-tmp/store/hkndxm5i5l1zczbiavqbk84qrdmilz6g-foo.drv -actual-value: #tresult: PASS
test-name: mixed-text-filelocation: /home/sapientech/Dev/guix/guix_wip/tests/gexp.scm:787source:+ (test-assert+ "mixed-text-file"+ (run-with-store+ %store+ (mlet* %store-monad+ ((file ->+ (mixed-text-file+ "mixed"+ "export PATH="+ %bootstrap-guile+ "/bin"))+ (drv (lower-object file))+ (out -> (derivation->output-path drv))+ (guile-drv+ (package->derivation %bootstrap-guile))+ (guile -> (derivation->output-path guile-drv)))+ (mbegin+ %store-monad+ (built-derivations (list drv))+ (mlet %store-monad+ ((refs ((store-lift references) out)))+ (return+ (and (string=?+ (string-append "export PATH=" guile "/bin")+ (call-with-input-file out get-string-all))+ (equal? refs (list guile)))))))+ #:guile-for-build+ (%guile-for-build)))@ build-started /home/sapientech/Dev/guix/guix_wip/test-tmp/store/h3cn1cfdzpsbzn9cyfg47jbs8744gmwf-mixed.drv - x86_64-linux /home/sapientech/Dev/guix/guix_wip/test-tmp/var/log/guix/drvs/h3//cn1cfdzpsbzn9cyfg47jbs8744gmwf-mixed.drv.bz2@ build-succeeded /home/sapientech/Dev/guix/guix_wip/test-tmp/store/h3cn1cfdzpsbzn9cyfg47jbs8744gmwf-mixed.drv -actual-value: #tresult: PASS
test-name: gexp->derivation vs. %current-target-systemlocation: /home/sapientech/Dev/guix/guix_wip/tests/gexp.scm:802source:+ (test-assert+ "gexp->derivation vs. %current-target-system"+ (let ((mval (gexp->derivation+ "foo"+ (gexp (begin+ (mkdir (ungexp output))+ (foo (ungexp-native gnu-make))))+ #:target+ #f)))+ (parameterize+ ((%current-target-system "fooooo"))+ (derivation? (run-with-store %store mval)))))actual-value: #tresult: PASS
test-name: lower-objectlocation: /home/sapientech/Dev/guix/guix_wip/tests/gexp.scm:813source:+ (test-assert+ "lower-object"+ (run-with-store+ %store+ (mlet %store-monad+ ((drv1 (lower-object %bootstrap-guile))+ (drv2 (lower-object (package-source coreutils)))+ (item (lower-object (plain-file "foo" "Hello!"))))+ (return+ (and (derivation? drv1)+ (derivation? drv2)+ (store-path? item))))+ #:guile-for-build+ (%guile-for-build)))actual-value: #tresult: PASS
test-name: lower-object, computed-filelocation: /home/sapientech/Dev/guix/guix_wip/tests/gexp.scm:820source:+ (test-assert+ "lower-object, computed-file"+ (run-with-store+ %store+ (let* ((text (plain-file "foo" "Hello!"))+ (exp (gexp (begin+ (mkdir (ungexp output))+ (symlink+ (ungexp %bootstrap-guile)+ (string-append (ungexp output) "/guile"))+ (symlink+ (ungexp text)+ (string-append (ungexp output) "/text")))))+ (computed (computed-file "computed" exp)))+ (mlet* %store-monad+ ((text (lower-object text))+ (guile-drv (lower-object %bootstrap-guile))+ (comp-drv (lower-object computed))+ (comp -> (derivation->output-path comp-drv)))+ (mbegin+ %store-monad+ (built-derivations (list comp-drv))+ (return+ (and (string=?+ (readlink (string-append comp "/guile"))+ (derivation->output-path guile-drv))+ (string=?+ (readlink (string-append comp "/text"))+ text))))))+ #:guile-for-build+ (%guile-for-build)))@ build-started /home/sapientech/Dev/guix/guix_wip/test-tmp/store/fdhli6nzdk7643skliaca0flzvrf2xx8-computed.drv - x86_64-linux /home/sapientech/Dev/guix/guix_wip/test-tmp/var/log/guix/drvs/fd//hli6nzdk7643skliaca0flzvrf2xx8-computed.drv.bz2@ build-succeeded /home/sapientech/Dev/guix/guix_wip/test-tmp/store/fdhli6nzdk7643skliaca0flzvrf2xx8-computed.drv -actual-value: #tresult: PASS
test-name: printerlocation: /home/sapientech/Dev/guix/guix_wip/tests/gexp.scm:839source:+ (test-assert+ "printer"+ (string-match+ "^#<gexp \\(string-append .*#<package coreutils.* \"/bin/uname\"\\) [[:xdigit:]]+>$"+ (with-output-to-string+ (lambda ()+ (write (gexp (string-append (ungexp coreutils) "/bin/uname")))))))actual-value: #(#<gexp (string-append #<gexp-input #<package coreutils@8.24 gnu/packages/base.scm:244 2df06c0>:out> "/bin/uname") 2a6ad20> (0 . 122))result: PASS
test-name: printer vs. ungexp-splicinglocation: /home/sapientech/Dev/guix/guix_wip/tests/gexp.scm:848source:+ (test-assert+ "printer vs. ungexp-splicing"+ (string-match+ "^#<gexp .* [[:xdigit:]]+>$"+ (with-output-to-string+ (lambda ()+ (write (gexp (begin (ungexp-splicing (gexp ())))))))))actual-value: #(#<gexp 26b1cc0> (0 . 16))result: PASS
test-name: sugarlocation: /home/sapientech/Dev/guix/guix_wip/tests/gexp.scm:856source:+ (test-equal+ "sugar"+ '(gexp (foo (ungexp bar)+ (ungexp baz "out")+ (ungexp (chbouib 42))+ (ungexp-splicing (list x y z))+ (ungexp-native foo)+ (ungexp-native foo "out")+ (ungexp-native (chbouib 42))+ (ungexp-native-splicing (list x y z))))+ '(gexp (foo (ungexp bar)+ (ungexp baz "out")+ (ungexp (chbouib 42))+ (ungexp-splicing (list x y z))+ (ungexp-native foo)+ (ungexp-native foo "out")+ (ungexp-native (chbouib 42))+ (ungexp-native-splicing (list x y z)))))expected-value: (gexp (foo (ungexp bar) (ungexp baz out) (ungexp (chbouib 42)) (ungexp-splicing (list x y z)) (ungexp-native foo) (ungexp-native foo out) (ungexp-native (chbouib 42)) (ungexp-native-splicing (list x y z))))actual-value: (gexp (foo (ungexp bar) (ungexp baz out) (ungexp (chbouib 42)) (ungexp-splicing (list x y z)) (ungexp-native foo) (ungexp-native foo out) (ungexp-native (chbouib 42)) (ungexp-native-splicing (list x y z))))result: PASS

FAIL: tests/syscalls====================
test-name: mount, ENOENTlocation: /home/sapientech/Dev/guix/guix_wip/tests/syscalls.scm:38source:+ (test-equal+ "mount, ENOENT"+ ENOENT+ (catch 'system-error+ (lambda ()+ (mount "/dev/null" "/does-not-exist" "ext2")+ #f)+ (compose system-error-errno list)))expected-value: 2actual-value: 2result: PASS
test-name: umount, ENOENT/EPERMlocation: /home/sapientech/Dev/guix/guix_wip/tests/syscalls.scm:46source:+ (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-pointslocation: /home/sapientech/Dev/guix/guix_wip/tests/syscalls.scm:55source:+ (test-assert+ "mount-points"+ (any (cute member <> (mount-points))+ '("/" "/proc" "/sys" "/dev")))actual-value: (/ /sys/kernel/security /dev/shm /dev/pts /sys/fs/cgroup /sys/fs/cgroup/systemd /sys/fs/pstore /sys/fs/cgroup/cpu,cpuacct /sys/fs/cgroup/cpuset /sys/fs/cgroup/net_cls /sys/fs/cgroup/devices /sys/fs/cgroup/freezer /sys/fs/cgroup/memory /sys/fs/cgroup/pids /sys/fs/cgroup/blkio /proc/sys/fs/binfmt_misc /dev/hugepages /dev/mqueue /sys/kernel/config /tmp /run/user/1000 /mnt /sys/fs/fuse/connections)result: PASS
test-name: swapon, ENOENT/EPERMlocation: /home/sapientech/Dev/guix/guix_wip/tests/syscalls.scm:61source:+ (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/EPERMlocation: /home/sapientech/Dev/guix/guix_wip/tests/syscalls.scm:69source:+ (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: /home/sapientech/Dev/guix/guix_wip/tests/syscalls.scm:77source:+ (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: #tresult: PASS
test-name: statfs, ENOENTlocation: /home/sapientech/Dev/guix/guix_wip/tests/syscalls.scm:85source:+ (test-equal+ "statfs, ENOENT"+ ENOENT+ (catch 'system-error+ (lambda () (statfs "/does-not-exist"))+ (compose system-error-errno list)))expected-value: 2actual-value: 2result: PASS
test-name: statfslocation: /home/sapientech/Dev/guix/guix_wip/tests/syscalls.scm:92source:+ (test-assert+ "statfs"+ (let ((fs (statfs "/")))+ (and (file-system? fs)+ (> (file-system-block-size fs) 0)+ (>= (file-system-blocks-available fs) 0)+ (>= (file-system-blocks-free fs)+ (file-system-blocks-available fs)))))actual-value: #tresult: PASS
test-name: clonelocation: /home/sapientech/Dev/guix/guix_wip/tests/syscalls.scm:109source:+ (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) (= 42 (status:exit-val status))))))))actual-value: #factual-error:+ (system-error+ "clone"+ "~d: ~A"+ (268435473 "Operation not permitted")+ (1))result: FAIL
test-name: setnslocation: /home/sapientech/Dev/guix/guix_wip/tests/syscalls.scm:122source:+ (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))))))))actual-value: #factual-error:+ (system-error+ "clone"+ "~d: ~A"+ (268435473 "Operation not permitted")+ (1))result: FAIL
test-name: pivot-rootlocation: /home/sapientech/Dev/guix/guix_wip/tests/syscalls.scm:151source:+ (test-assert+ "pivot-root"+ (match (pipe)+ ((in . out)+ (match (clone (logior CLONE_NEWUSER CLONE_NEWNS SIGCHLD))+ (0+ (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))))+ (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))))))))actual-value: #factual-error:+ (system-error+ "clone"+ "~d: ~A"+ (268566545 "Operation not permitted")+ (1))result: FAIL
test-name: fcntl-flock waitlocation: /home/sapientech/Dev/guix/guix_wip/tests/syscalls.scm:180source:+ (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: 42actual-value: 42result: PASS
test-name: fcntl-flock non-blockinglocation: /home/sapientech/Dev/guix/guix_wip/tests/syscalls.scm:219source:+ (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)expected-value: 11actual-value: 11result: PASS
test-name: all-network-interface-nameslocation: /home/sapientech/Dev/guix/guix_wip/tests/syscalls.scm:261source:+ (test-assert+ "all-network-interface-names"+ (match (all-network-interface-names)+ (((? string? names) ..1) (member "lo" names))))actual-value: (lo enp0s25 wlp2s0)result: PASS
test-name: network-interface-nameslocation: /home/sapientech/Dev/guix/guix_wip/tests/syscalls.scm:266source:+ (test-assert+ "network-interface-names"+ (match (network-interface-names)+ (((? string? names) ..1)+ (lset<=+ string=?+ names+ (all-network-interface-names)))))actual-value: #tresult: PASS
test-name: network-interface-flagslocation: /home/sapientech/Dev/guix/guix_wip/tests/syscalls.scm:271source:+ (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: #tresult: PASS
test-name: loopback-network-interface?location: /home/sapientech/Dev/guix/guix_wip/tests/syscalls.scm:278source:+ (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: 19actual-value: 19result: PASS
test-name: set-network-interface-flagslocation: /home/sapientech/Dev/guix/guix_wip/tests/syscalls.scm:289source:+ (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 lolocation: /home/sapientech/Dev/guix/guix_wip/tests/syscalls.scm:299source:+ (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-addresslocation: /home/sapientech/Dev/guix/guix_wip/tests/syscalls.scm:307source:+ (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-interfaces returns one or more interfaceslocation: /home/sapientech/Dev/guix/guix_wip/tests/syscalls.scm:321source:+ (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: /home/sapientech/Dev/guix/guix_wip/tests/syscalls.scm:333source:+ (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=? "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)+ (= 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: tcgetattr ENOTTYlocation: /home/sapientech/Dev/guix/guix_wip/tests/syscalls.scm:348source:+ (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: 25actual-value: 25result: PASS
test-name: tcgetattrlocation: /home/sapientech/Dev/guix/guix_wip/tests/syscalls.scm:362source:+ (test-assert+ "tcgetattr"+ (let ((termios (tcgetattr 0)))+ (and (termios? termios)+ (> (termios-input-speed termios) 0)+ (> (termios-output-speed termios) 0))))actual-value: #tresult: PASS
test-name: tcsetattrlocation: /home/sapientech/Dev/guix/guix_wip/tests/syscalls.scm:368source:+ (test-assert+ "tcsetattr"+ (let ((first (tcgetattr 0)))+ (tcsetattr 0 (tcsetattr-action TCSANOW) first)+ (equal? first (tcgetattr 0))))actual-value: #tresult: PASS
test-name: terminal-window-size ENOTTYlocation: /home/sapientech/Dev/guix/guix_wip/tests/syscalls.scm:373source:+ (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-columnslocation: /home/sapientech/Dev/guix/guix_wip/tests/syscalls.scm:384source:+ (test-assert+ "terminal-columns"+ (> (terminal-columns) 0))actual-value: #tresult: PASS
test-name: terminal-columns non-file portlocation: /home/sapientech/Dev/guix/guix_wip/tests/syscalls.scm:387source:+ (test-assert+ "terminal-columns non-file port"+ (> (terminal-columns+ (open-input-string+ "Join us now, share the software!"))+ 0))actual-value: #tresult: PASS

SKIP: tests/gremlin===================
test-name: elf-dynamic-info-needed, executablelocation: /home/sapientech/Dev/guix/guix_wip/tests/gremlin.scm:44source:+ (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<=+ string=?+ (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-originlocation: /home/sapientech/Dev/guix/guix_wip/tests/gremlin.scm:55source:+ (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

FAIL: tests/lint================
test-name: description: not a stringlocation: /home/sapientech/Dev/guix/guix_wip/tests/lint.scm:145source:+ (test-assert+ "description: not a string"+ (->bool+ (string-contains+ (with-warnings+ (let ((pkg (dummy-package "x" (description 'foobar))))+ (check-description-style pkg)))+ "invalid description")))actual-value: #tresult: PASS
test-name: description: not emptylocation: /home/sapientech/Dev/guix/guix_wip/tests/lint.scm:153source:+ (test-assert+ "description: not empty"+ (->bool+ (string-contains+ (with-warnings+ (let ((pkg (dummy-package "x" (description ""))))+ (check-description-style pkg)))+ "description should not be empty")))actual-value: #tresult: PASS
test-name: description: valid Texinfo markuplocation: /home/sapientech/Dev/guix/guix_wip/tests/lint.scm:161source:+ (test-assert+ "description: valid Texinfo markup"+ (->bool+ (string-contains+ (with-warnings+ (check-description-style+ (dummy-package "x" (description "f{oo}b@r"))))+ "Texinfo markup in description is invalid")))actual-value: #tresult: PASS
test-name: description: does not start with an upper-case letterlocation: /home/sapientech/Dev/guix/guix_wip/tests/lint.scm:168source:+ (test-assert+ "description: does not start with an upper-case letter"+ (->bool+ (string-contains+ (with-warnings+ (let ((pkg (dummy-package+ "x"+ (description "bad description."))))+ (check-description-style pkg)))+ "description should start with an upper-case letter")))actual-value: #tresult: PASS
test-name: description: may start with a digitlocation: /home/sapientech/Dev/guix/guix_wip/tests/lint.scm:176source:+ (test-assert+ "description: may start with a digit"+ (string-null?+ (with-warnings+ (let ((pkg (dummy-package+ "x"+ (description "2-component library."))))+ (check-description-style pkg)))))actual-value: #tresult: PASS
test-name: description: may start with lower-case package namelocation: /home/sapientech/Dev/guix/guix_wip/tests/lint.scm:183source:+ (test-assert+ "description: may start with lower-case package name"+ (string-null?+ (with-warnings+ (let ((pkg (dummy-package+ "x"+ (description "x is a dummy package."))))+ (check-description-style pkg)))))actual-value: #tresult: PASS
test-name: description: two spaces after end of sentencelocation: /home/sapientech/Dev/guix/guix_wip/tests/lint.scm:190source:+ (test-assert+ "description: two spaces after end of sentence"+ (->bool+ (string-contains+ (with-warnings+ (let ((pkg (dummy-package+ "x"+ (description "Bad. Quite bad."))))+ (check-description-style pkg)))+ "sentences in description should be followed by two spaces")))actual-value: #tresult: PASS
test-name: description: end-of-sentence detection with abbreviationslocation: /home/sapientech/Dev/guix/guix_wip/tests/lint.scm:198source:+ (test-assert+ "description: end-of-sentence detection with abbreviations"+ (string-null?+ (with-warnings+ (let ((pkg (dummy-package+ "x"+ (description+ "E.g. Foo, i.e. Bar resp. Baz (a.k.a. DVD)."))))+ (check-description-style pkg)))))actual-value: #tresult: PASS
test-name: synopsis: not a stringlocation: /home/sapientech/Dev/guix/guix_wip/tests/lint.scm:206source:+ (test-assert+ "synopsis: not a string"+ (->bool+ (string-contains+ (with-warnings+ (let ((pkg (dummy-package "x" (synopsis #f))))+ (check-synopsis-style pkg)))+ "invalid synopsis")))actual-value: #tresult: PASS
test-name: synopsis: not emptylocation: /home/sapientech/Dev/guix/guix_wip/tests/lint.scm:214source:+ (test-assert+ "synopsis: not empty"+ (->bool+ (string-contains+ (with-warnings+ (let ((pkg (dummy-package "x" (synopsis ""))))+ (check-synopsis-style pkg)))+ "synopsis should not be empty")))actual-value: #tresult: PASS
test-name: synopsis: does not start with an upper-case letterlocation: /home/sapientech/Dev/guix/guix_wip/tests/lint.scm:222source:+ (test-assert+ "synopsis: does not start with an upper-case letter"+ (->bool+ (string-contains+ (with-warnings+ (let ((pkg (dummy-package "x" (synopsis "bad synopsis."))))+ (check-synopsis-style pkg)))+ "synopsis should start with an upper-case letter")))actual-value: #tresult: PASS
test-name: synopsis: may start with a digitlocation: /home/sapientech/Dev/guix/guix_wip/tests/lint.scm:230source:+ (test-assert+ "synopsis: may start with a digit"+ (string-null?+ (with-warnings+ (let ((pkg (dummy-package+ "x"+ (synopsis "5-dimensional frobnicator"))))+ (check-synopsis-style pkg)))))actual-value: #tresult: PASS
test-name: synopsis: ends with a periodlocation: /home/sapientech/Dev/guix/guix_wip/tests/lint.scm:237source:+ (test-assert+ "synopsis: ends with a period"+ (->bool+ (string-contains+ (with-warnings+ (let ((pkg (dummy-package "x" (synopsis "Bad synopsis."))))+ (check-synopsis-style pkg)))+ "no period allowed at the end of the synopsis")))actual-value: #tresult: PASS
test-name: synopsis: ends with 'etc.'location: /home/sapientech/Dev/guix/guix_wip/tests/lint.scm:245source:+ (test-assert+ "synopsis: ends with 'etc.'"+ (string-null?+ (with-warnings+ (let ((pkg (dummy-package "x" (synopsis "Foo, bar, etc."))))+ (check-synopsis-style pkg)))))actual-value: #tresult: PASS
test-name: synopsis: starts with 'A'location: /home/sapientech/Dev/guix/guix_wip/tests/lint.scm:251source:+ (test-assert+ "synopsis: starts with 'A'"+ (->bool+ (string-contains+ (with-warnings+ (let ((pkg (dummy-package+ "x"+ (synopsis "A bad synop\u015dis"))))+ (check-synopsis-style pkg)))+ "no article allowed at the beginning of the synopsis")))actual-value: #tresult: PASS
test-name: synopsis: starts with 'An'location: /home/sapientech/Dev/guix/guix_wip/tests/lint.scm:259source:+ (test-assert+ "synopsis: starts with 'An'"+ (->bool+ (string-contains+ (with-warnings+ (let ((pkg (dummy-package+ "x"+ (synopsis "An awful synopsis"))))+ (check-synopsis-style pkg)))+ "no article allowed at the beginning of the synopsis")))actual-value: #tresult: PASS
test-name: synopsis: starts with 'a'location: /home/sapientech/Dev/guix/guix_wip/tests/lint.scm:267source:+ (test-assert+ "synopsis: starts with 'a'"+ (->bool+ (string-contains+ (with-warnings+ (let ((pkg (dummy-package "x" (synopsis "a bad synopsis"))))+ (check-synopsis-style pkg)))+ "no article allowed at the beginning of the synopsis")))actual-value: #tresult: PASS
test-name: synopsis: starts with 'an'location: /home/sapientech/Dev/guix/guix_wip/tests/lint.scm:275source:+ (test-assert+ "synopsis: starts with 'an'"+ (->bool+ (string-contains+ (with-warnings+ (let ((pkg (dummy-package+ "x"+ (synopsis "an awful synopsis"))))+ (check-synopsis-style pkg)))+ "no article allowed at the beginning of the synopsis")))actual-value: #tresult: PASS
test-name: synopsis: too longlocation: /home/sapientech/Dev/guix/guix_wip/tests/lint.scm:283source:+ (test-assert+ "synopsis: too long"+ (->bool+ (string-contains+ (with-warnings+ (let ((pkg (dummy-package+ "x"+ (synopsis (make-string 80 #\x)))))+ (check-synopsis-style pkg)))+ "synopsis should be less than 80 characters long")))actual-value: #tresult: PASS
test-name: synopsis: start with package namelocation: /home/sapientech/Dev/guix/guix_wip/tests/lint.scm:291source:+ (test-assert+ "synopsis: start with package name"+ (->bool+ (string-contains+ (with-warnings+ (let ((pkg (dummy-package+ "x"+ (name "foo")+ (synopsis "foo, a nice package"))))+ (check-synopsis-style pkg)))+ "synopsis should not start with the package name")))actual-value: #tresult: PASS
test-name: synopsis: start with package name prefixlocation: /home/sapientech/Dev/guix/guix_wip/tests/lint.scm:300source:+ (test-assert+ "synopsis: start with package name prefix"+ (string-null?+ (with-warnings+ (let ((pkg (dummy-package+ "arb"+ (synopsis "Arbitrary precision"))))+ (check-synopsis-style pkg)))))actual-value: #tresult: PASS
test-name: synopsis: start with abbreviationlocation: /home/sapientech/Dev/guix/guix_wip/tests/lint.scm:307source:+ (test-assert+ "synopsis: start with abbreviation"+ (string-null?+ (with-warnings+ (let ((pkg (dummy-package+ "uucp"+ (synopsis "UUCP implementation")+ (description "Imagine this is Taylor UUCP."))))+ (check-synopsis-style pkg)))))actual-value: #tresult: PASS
test-name: inputs: pkg-config is probably a native inputlocation: /home/sapientech/Dev/guix/guix_wip/tests/lint.scm:316source:+ (test-assert+ "inputs: pkg-config is probably a native input"+ (->bool+ (string-contains+ (with-warnings+ (let ((pkg (dummy-package+ "x"+ (inputs `(("pkg-config" ,pkg-config))))))+ (check-inputs-should-be-native pkg)))+ "'pkg-config' should probably be a native input")))actual-value: #tresult: PASS
test-name: inputs: glib:bin is probably a native inputlocation: /home/sapientech/Dev/guix/guix_wip/tests/lint.scm:325source:+ (test-assert+ "inputs: glib:bin is probably a native input"+ (->bool+ (string-contains+ (with-warnings+ (let ((pkg (dummy-package+ "x"+ (inputs `(("glib" ,glib "bin"))))))+ (check-inputs-should-be-native pkg)))+ "'glib:bin' should probably be a native input")))actual-value: #tresult: PASS
test-name: patches: file nameslocation: /home/sapientech/Dev/guix/guix_wip/tests/lint.scm:334source:+ (test-assert+ "patches: file names"+ (->bool+ (string-contains+ (with-warnings+ (let ((pkg (dummy-package+ "x"+ (source+ (dummy-origin+ (patches (list "/path/to/y.patch")))))))+ (check-patch-file-names pkg)))+ "file names of patches should start with the package name")))actual-value: #tresult: PASS
test-name: patches: not foundlocation: /home/sapientech/Dev/guix/guix_wip/tests/lint.scm:345source:+ (test-assert+ "patches: not found"+ (->bool+ (string-contains+ (with-warnings+ (let ((pkg (dummy-package+ "x"+ (source+ (dummy-origin+ (patches+ (list (search-patch+ "this-patch-does-not-exist!"))))))))+ (check-patch-file-names pkg)))+ "patch not found")))actual-value: #tresult: PASS
test-name: derivation: invalid argumentslocation: /home/sapientech/Dev/guix/guix_wip/tests/lint.scm:357source:+ (test-assert+ "derivation: invalid arguments"+ (->bool+ (string-contains+ (with-warnings+ (let ((pkg (dummy-package+ "x"+ (arguments+ '(#:imported-modules (invalid-module))))))+ (check-derivation pkg)))+ "failed to create derivation")))actual-value: #tresult: PASS
test-name: license: invalid licenselocation: /home/sapientech/Dev/guix/guix_wip/tests/lint.scm:367source:+ (test-assert+ "license: invalid license"+ (string-contains+ (with-warnings+ (check-license (dummy-package "x" (license #f))))+ "invalid license"))actual-value: 63result: PASS
test-name: home-page: wrong home-pagelocation: /home/sapientech/Dev/guix/guix_wip/tests/lint.scm:373source:+ (test-assert+ "home-page: wrong home-page"+ (->bool+ (string-contains+ (with-warnings+ (let ((pkg (package+ (inherit (dummy-package "x"))+ (home-page #f))))+ (check-home-page pkg)))+ "invalid")))actual-value: #tresult: PASS
test-name: home-page: invalid URIlocation: /home/sapientech/Dev/guix/guix_wip/tests/lint.scm:383source:+ (test-assert+ "home-page: invalid URI"+ (->bool+ (string-contains+ (with-warnings+ (let ((pkg (package+ (inherit (dummy-package "x"))+ (home-page "foobar"))))+ (check-home-page pkg)))+ "invalid home page URL")))actual-value: #tresult: PASS
test-name: home-page: host not foundlocation: /home/sapientech/Dev/guix/guix_wip/tests/lint.scm:393source:+ (test-assert+ "home-page: host not found"+ (->bool+ (string-contains+ (with-warnings+ (let ((pkg (package+ (inherit (dummy-package "x"))+ (home-page "http://does-not-exist"))))+ (check-home-page pkg)))+ "domain not found")))actual-value: #fresult: FAIL
test-name: home-page: Connection refusedlocation: /home/sapientech/Dev/guix/guix_wip/tests/lint.scm:404source:+ (test-assert+ "home-page: Connection refused"+ (->bool+ (string-contains+ (with-warnings+ (let ((pkg (package+ (inherit (dummy-package "x"))+ (home-page %local-url))))+ (check-home-page pkg)))+ "Connection refused")))actual-value: #tresult: PASS
test-name: home-page: 200location: /home/sapientech/Dev/guix/guix_wip/tests/lint.scm:415source:+ (test-equal+ "home-page: 200"+ ""+ (with-warnings+ (with-http-server+ 200+ %long-string+ (let ((pkg (package+ (inherit (dummy-package "x"))+ (home-page %local-url))))+ (check-home-page pkg)))))expected-value: actual-value: result: PASS
test-name: home-page: 200 but short lengthlocation: /home/sapientech/Dev/guix/guix_wip/tests/lint.scm:425source:+ (test-assert+ "home-page: 200 but short length"+ (->bool+ (string-contains+ (with-warnings+ (with-http-server+ 200+ "This is too small."+ (let ((pkg (package+ (inherit (dummy-package "x"))+ (home-page %local-url))))+ (check-home-page pkg))))+ "suspiciously small")))actual-value: #tresult: PASS
test-name: home-page: 404location: /home/sapientech/Dev/guix/guix_wip/tests/lint.scm:437source:+ (test-assert+ "home-page: 404"+ (->bool+ (string-contains+ (with-warnings+ (with-http-server+ 404+ %long-string+ (let ((pkg (package+ (inherit (dummy-package "x"))+ (home-page %local-url))))+ (check-home-page pkg))))+ "not reachable: 404")))actual-value: #tresult: PASS
test-name: source-file-namelocation: /home/sapientech/Dev/guix/guix_wip/tests/lint.scm:448source:+ (test-assert+ "source-file-name"+ (->bool+ (string-contains+ (with-warnings+ (let ((pkg (dummy-package+ "x"+ (version "3.2.1")+ (source+ (origin+ (method url-fetch)+ (uri "http://www.example.com/3.2.1.tar.gz")+ (sha256 %null-sha256))))))+ (check-source-file-name pkg)))+ "file name should contain the package name")))actual-value: #tresult: PASS
test-name: source-file-name: v prefixlocation: /home/sapientech/Dev/guix/guix_wip/tests/lint.scm:462source:+ (test-assert+ "source-file-name: v prefix"+ (->bool+ (string-contains+ (with-warnings+ (let ((pkg (dummy-package+ "x"+ (version "3.2.1")+ (source+ (origin+ (method url-fetch)+ (uri "http://www.example.com/v3.2.1.tar.gz")+ (sha256 %null-sha256))))))+ (check-source-file-name pkg)))+ "file name should contain the package name")))actual-value: #tresult: PASS
test-name: source-file-name: bad checkoutlocation: /home/sapientech/Dev/guix/guix_wip/tests/lint.scm:476source:+ (test-assert+ "source-file-name: bad checkout"+ (->bool+ (string-contains+ (with-warnings+ (let ((pkg (dummy-package+ "x"+ (version "3.2.1")+ (source+ (origin+ (method git-fetch)+ (uri (git-reference+ (url "http://www.example.com/x.git")+ (commit "0")))+ (sha256 %null-sha256))))))+ (check-source-file-name pkg)))+ "file name should contain the package name")))actual-value: #tresult: PASS
test-name: source-file-name: good checkoutlocation: /home/sapientech/Dev/guix/guix_wip/tests/lint.scm:492source:+ (test-assert+ "source-file-name: good checkout"+ (not (->bool+ (string-contains+ (with-warnings+ (let ((pkg (dummy-package+ "x"+ (version "3.2.1")+ (source+ (origin+ (method git-fetch)+ (uri (git-reference+ (url "http://git.example.com/x.git")+ (commit "0")))+ (file-name (string-append "x-" version))+ (sha256 %null-sha256))))))+ (check-source-file-name pkg)))+ "file name should contain the package name"))))actual-value: #tresult: PASS
test-name: source-file-name: validlocation: /home/sapientech/Dev/guix/guix_wip/tests/lint.scm:510source:+ (test-assert+ "source-file-name: valid"+ (not (->bool+ (string-contains+ (with-warnings+ (let ((pkg (dummy-package+ "x"+ (version "3.2.1")+ (source+ (origin+ (method url-fetch)+ (uri "http://www.example.com/x-3.2.1.tar.gz")+ (sha256 %null-sha256))))))+ (check-source-file-name pkg)))+ "file name should contain the package name"))))actual-value: #tresult: PASS
test-name: source: 200location: /home/sapientech/Dev/guix/guix_wip/tests/lint.scm:526source:+ (test-equal+ "source: 200"+ ""+ (with-warnings+ (with-http-server+ 200+ %long-string+ (let ((pkg (package+ (inherit (dummy-package "x"))+ (source+ (origin+ (method url-fetch)+ (uri %local-url)+ (sha256 %null-sha256))))))+ (check-source pkg)))))expected-value: actual-value: result: PASS
test-name: source: 200 but short lengthlocation: /home/sapientech/Dev/guix/guix_wip/tests/lint.scm:539source:+ (test-assert+ "source: 200 but short length"+ (->bool+ (string-contains+ (with-warnings+ (with-http-server+ 200+ "This is too small."+ (let ((pkg (package+ (inherit (dummy-package "x"))+ (source+ (origin+ (method url-fetch)+ (uri %local-url)+ (sha256 %null-sha256))))))+ (check-source pkg))))+ "suspiciously small")))actual-value: #tresult: PASS
test-name: source: 404location: /home/sapientech/Dev/guix/guix_wip/tests/lint.scm:554source:+ (test-assert+ "source: 404"+ (->bool+ (string-contains+ (with-warnings+ (with-http-server+ 404+ %long-string+ (let ((pkg (package+ (inherit (dummy-package "x"))+ (source+ (origin+ (method url-fetch)+ (uri %local-url)+ (sha256 %null-sha256))))))+ (check-source pkg))))+ "not reachable: 404")))actual-value: #tresult: PASS
test-name: cvelocation: /home/sapientech/Dev/guix/guix_wip/tests/lint.scm:568source:+ (test-assert+ "cve"+ (mock ((guix scripts lint)+ package-vulnerabilities+ (const '()))+ (string-null?+ (with-warnings+ (check-vulnerabilities (dummy-package "x"))))))actual-value: #tresult: PASS
test-name: cve: one vulnerabilitylocation: /home/sapientech/Dev/guix/guix_wip/tests/lint.scm:573source:+ (test-assert+ "cve: one vulnerability"+ (mock ((guix scripts lint)+ package-vulnerabilities+ (lambda (package)+ (list (make-struct+ (@@ (guix cve) <vulnerability>)+ 0+ "CVE-2015-1234"+ (list (cons (package-name package)+ (package-version package)))))))+ (string-contains+ (with-warnings+ (check-vulnerabilities+ (dummy-package "pi" (version "3.14"))))+ "vulnerable to CVE-2015-1234")))actual-value: 76result: PASS
test-name: cve: one patched vulnerabilitylocation: /home/sapientech/Dev/guix/guix_wip/tests/lint.scm:585source:+ (test-assert+ "cve: one patched vulnerability"+ (mock ((guix scripts lint)+ package-vulnerabilities+ (lambda (package)+ (list (make-struct+ (@@ (guix cve) <vulnerability>)+ 0+ "CVE-2015-1234"+ (list (cons (package-name package)+ (package-version package)))))))+ (string-null?+ (with-warnings+ (check-vulnerabilities+ (dummy-package+ "pi"+ (version "3.14")+ (source+ (dummy-origin+ (patches (list "/a/b/pi-CVE-2015-1234.patch"))))))))))actual-value: #tresult: PASS
test-name: cve: patched vulnerability in replacementlocation: /home/sapientech/Dev/guix/guix_wip/tests/lint.scm:602source:+ (test-assert+ "cve: patched vulnerability in replacement"+ (mock ((guix scripts lint)+ package-vulnerabilities+ (lambda (package)+ (list (make-struct+ (@@ (guix cve) <vulnerability>)+ 0+ "CVE-2015-1234"+ (list (cons (package-name package)+ (package-version package)))))))+ (string-null?+ (with-warnings+ (check-vulnerabilities+ (dummy-package+ "pi"+ (version "3.14")+ (source (dummy-origin))+ (replacement+ (dummy-package+ "pi"+ (version "3.14")+ (source+ (dummy-origin+ (patches+ (list "/a/b/pi-CVE-2015-1234.patch"))))))))))))actual-value: #tresult: PASS
test-name: formatting: lonely parentheseslocation: /home/sapientech/Dev/guix/guix_wip/tests/lint.scm:621source:+ (test-assert+ "formatting: lonely parentheses"+ (string-contains+ (with-warnings+ (check-formatting+ (dummy-package "ugly as hell!")))+ "lonely"))actual-value: 101result: PASS
test-name: formatting: tabulationlocation: /home/sapientech/Dev/guix/guix_wip/tests/lint.scm:631source:+ (test-assert+ "formatting: tabulation"+ (string-contains+ (with-warnings+ (check-formatting+ (dummy-package "leave the tab here:\t")))+ "tabulation"))actual-value: 82result: PASS
test-name: formatting: trailing white spacelocation: /home/sapientech/Dev/guix/guix_wip/tests/lint.scm:637source:+ (test-assert+ "formatting: trailing white space"+ (string-contains+ (with-warnings+ (check-formatting (dummy-package "x")))+ "trailing white space"))actual-value: 63result: PASS
test-name: formatting: long linelocation: /home/sapientech/Dev/guix/guix_wip/tests/lint.scm:644source:+ (test-assert+ "formatting: long line"+ (string-contains+ (with-warnings+ (check-formatting (dummy-package "x")))+ "too long"))actual-value: 78result: PASS
test-name: formatting: alrightlocation: /home/sapientech/Dev/guix/guix_wip/tests/lint.scm:652source:+ (test-assert+ "formatting: alright"+ (string-null?+ (with-warnings+ (check-formatting (dummy-package "x")))))actual-value: #tresult: PASS
random seed for tests: 1469827647
FAIL: tests/containers======================
test-name: call-with-container, exit with 0 when there is no errorlocation: /home/sapientech/Dev/guix/guix_wip/tests/containers.scm:40source:+ (test-assert+ "call-with-container, exit with 0 when there is no error"+ (zero? (call-with-container+ '()+ (const #t)+ #:namespaces+ '(user))))actual-value: #factual-error:+ (system-error+ "clone"+ "~d: ~A"+ (268435473 "Operation not permitted")+ (1))result: FAIL
test-name: call-with-container, user namespacelocation: /home/sapientech/Dev/guix/guix_wip/tests/containers.scm:45source:+ (test-assert+ "call-with-container, user namespace"+ (zero? (call-with-container+ '()+ (lambda ()+ (assert-exit+ (and (zero? (getuid)) (zero? (getgid)))))+ #:namespaces+ '(user))))actual-value: #factual-error:+ (system-error+ "clone"+ "~d: ~A"+ (268435473 "Operation not permitted")+ (1))result: FAIL
test-name: call-with-container, uts namespacelocation: /home/sapientech/Dev/guix/guix_wip/tests/containers.scm:54source:+ (test-assert+ "call-with-container, uts namespace"+ (zero? (call-with-container+ '()+ (lambda ()+ (sethostname "test-container")+ (primitive-exit 0))+ #:namespaces+ '(user uts))))actual-value: #factual-error:+ (system-error+ "clone"+ "~d: ~A"+ (335544337 "Operation not permitted")+ (1))result: FAIL
test-name: call-with-container, pid namespacelocation: /home/sapientech/Dev/guix/guix_wip/tests/containers.scm:65source:+ (test-assert+ "call-with-container, pid namespace"+ (zero? (call-with-container+ '()+ (lambda ()+ (match (primitive-fork)+ (0 (assert-exit (= 2 (getpid))))+ (pid (primitive-exit+ (match (waitpid pid)+ ((_ . status)+ (status:exit-val status)))))))+ #:namespaces+ '(user pid))))actual-value: #factual-error:+ (system-error+ "clone"+ "~d: ~A"+ (805306385 "Operation not permitted")+ (1))result: FAIL
test-name: call-with-container, mnt namespacelocation: /home/sapientech/Dev/guix/guix_wip/tests/containers.scm:81source:+ (test-assert+ "call-with-container, mnt namespace"+ (zero? (call-with-container+ '(("none" device "/testing" "tmpfs" () #f #f))+ (lambda ()+ (assert-exit (file-exists? "/testing")))+ #:namespaces+ '(user mnt))))actual-value: #factual-error:+ (system-error+ "clone"+ "~d: ~A"+ (268566545 "Operation not permitted")+ (1))result: FAIL
test-name: call-with-container, mnt namespace, wrong bind mountlocation: /home/sapientech/Dev/guix/guix_wip/tests/containers.scm:89source:+ (test-equal+ "call-with-container, mnt namespace, wrong bind mount"+ `(system-error ,ENOENT)+ (catch 'system-error+ (lambda ()+ (call-with-container+ '(("/does-not-exist"+ device+ "/foo"+ "none"+ (bind-mount)+ #f+ #f))+ (const #t)+ #:namespaces+ '(user mnt)))+ (lambda args+ (list 'system-error (system-error-errno args)))))expected-value: (system-error 2)actual-value: (system-error 1)result: FAIL
test-name: call-with-container, all namespaceslocation: /home/sapientech/Dev/guix/guix_wip/tests/containers.scm:102source:+ (test-assert+ "call-with-container, all namespaces"+ (zero? (call-with-container+ '()+ (lambda () (primitive-exit 0)))))actual-value: #factual-error:+ (system-error+ "clone"+ "~d: ~A"+ (2080505873 "Operation not permitted")+ (1))result: FAIL
test-name: container-excursionlocation: /home/sapientech/Dev/guix/guix_wip/tests/containers.scm:109source:+ (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)))))))actual-value: #factual-error:+ (system-error+ "clone"+ "~d: ~A"+ (2080505873 "Operation not permitted")+ (1))result: FAIL

SKIP: tests/pypi================
test-name: guix-package->pypi-name, old URL stylelocation: /home/sapientech/Dev/guix/guix_wip/tests/pypi.scm:76source:+ (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: psutilactual-value: psutilresult: PASS
test-name: guix-package->pypi-name, new URL stylelocation: /home/sapientech/Dev/guix/guix_wip/tests/pypi.scm:84source:+ (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/4756e6a0ceb14e084042a2a65c615d68d25621c6fd446d0fc10d14c4ce7d/certbot-0.8.1.tar.gz"))))))expected-value: certbotactual-value: certbotresult: PASS
test-name: pypi->guix-packagelocation: /home/sapientech/Dev/guix/guix_wip/tests/pypi.scm:92source:+ (test-assert+ "pypi->guix-package"+ (mock ((guix import utils)+ url-fetch+ (lambda (url file-name)+ (match url+ ("https://pypi.python.org/pypi/foo/json"+ (with-output-to-file+ file-name+ (lambda () (display test-json))))+ ("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)))))+ (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)+ ('inputs+ ('quasiquote+ (("python-bar" ('unquote 'python-bar))+ ("python-baz" ('unquote 'python-baz))+ ("python-setuptools"+ ('unquote 'python-setuptools)))))+ ('home-page "http://example.com")+ ('synopsis "summary")+ ('description "summary")+ ('license 'lgpl2.0))+ (string=?+ (bytevector->nix-base32-string test-source-hash)+ hash))+ (x (pk 'fail x #f)))))foo-1.0.0/foo-1.0.0/requirements.txtactual-value: #tresult: PASS
test-name: pypi->guix-package, wheelslocation: /home/sapientech/Dev/guix/guix_wip/tests/pypi.scm:141source:+ (test-assert+ "pypi->guix-package, wheels"+ (mock ((guix import utils)+ url-fetch+ (lambda (url file-name)+ (match url+ ("https://pypi.python.org/pypi/foo/json"+ (with-output-to-file+ file-name+ (lambda () (display test-json))))+ ("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)))))+ (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)+ ('inputs+ ('quasiquote+ (("python-bar" ('unquote 'python-bar))+ ("python-baz" ('unquote 'python-baz))+ ("python-setuptools"+ ('unquote 'python-setuptools)))))+ ('home-page "http://example.com")+ ('synopsis "summary")+ ('description "summary")+ ('license 'lgpl2.0))+ (string=?+ (bytevector->nix-base32-string test-source-hash)+ hash))+ (x (pk 'fail x #f)))))result: SKIP
random seed for tests: 1469827146
FAIL: tests/guix-download=========================
+ guix download --versionguix download (GNU Guix) 0.10.0Copyright (C) 2016 the Guix authorsLicense GPLv3+: GNU GPL version 3 or later http://gnu.org/licenses/gpl.htmlThis is free software: you are free to change and redistribute it.There is NO WARRANTY, to the extent permitted by law.+ guix download http://does.not/existaccepted connection from pid 6989, user sapientech
Starting download of /tmp/guix-file.54OQQNFrom http://does.not/exist...  exist 0B/s 00:00 | 0B transferred  exist 290KiB/s 00:00 | 319B transferred/home/sapientech/Dev/guix/guix_wip/test-tmp/store/hi5hmfl117bri5c79i96fb7ymip4cb43-exist1ipmbjjgif1f6a77j91s2y989y6sgk3fh4jiycbqqs6v2i827l7s+ false./test-env: line 1: 6980 Terminated "/home/sapientech/Dev/guix/guix_wip/pre-inst-env" "/home/sapientech/Dev/guix/guix_wip/guix-daemon" --disable-chroot --substitute-urls="$GUIX_BINARY_SUBSTITUTE_URL"FAIL tests/guix-download.sh (exit status: 1)
FAIL: tests/guix-environment-container======================================
+ set -e+ guix environment --versionguix environment (GNU Guix) 0.10.0Copyright (C) 2016 the Guix authorsLicense GPLv3+: GNU GPL version 3 or later http://gnu.org/licenses/gpl.htmlThis is free software: you are free to change and redistribute it.There is NO WARRANTY, to the extent permitted by law.+ guile -c '((@@ (guix scripts environment) assert-container-features))'+ tmpdir=t-guix-environment-11298+ trap 'rm -r "$tmpdir"' EXIT+ mkdir t-guix-environment-11298+ guix environment --container --ad-hoc --bootstrap guile-bootstrap -- guile -c '(exit 42)'accepted connection from pid 11310, user sapientechguix environment: error: clone: 2080505873: Operation not permitted+ test 1 = 42+ rm -r t-guix-environment-11298./test-env: line 1: 11297 Terminated "/home/sapientech/Dev/guix/guix_wip/pre-inst-env" "/home/sapientech/Dev/guix/guix_wip/guix-daemon" --disable-chroot --substitute-urls="$GUIX_BINARY_SUBSTITUTE_URL"FAIL tests/guix-environment-container.sh (exit status: 1)
L
L
Ludovic Courtès wrote on 30 Jul 2016 15:07
(address . sapientech@openmailbox.org)(address . 24108@debbugs.gnu.org)
874m77e0ky.fsf@gnu.org
Hi,
sapientech@openmailbox.org skribis:
Toggle quote (3 lines)> test-name: substitute query, alternating URLs> location: /home/sapientech/Dev/guix/guix_wip/tests/store.scm:456
[...]
Toggle quote (3 lines)> substitute: guix/ui.scm:1209:6: In procedure run-guix-command:> substitute: guix/ui.scm:1209:6: unmatched line "<html><head><meta http-equiv=\"refresh\" content=\"0;url=http://www.dnsrsearch.com/index.php?origURL=http://does-not-exist/nix-cache-info&bc=\"/></head><body><script type=\"text/javascript\">window.location=\"http://www.dnsrsearch.com/index.php?origURL=\"+escape(window.location)+\"&r=\"+escape(document.referrer)+\"&bc=\";</script></body></html>"
It seems there’s a DNS hijacker in place where domain names such as“does-not-exist” (used in this and other tests) are resolved to someISP-specific host or something. This explains this and more of theother test failures you are seeing; this is unsupported.
Toggle quote (21 lines)> test-name: clone> location: /home/sapientech/Dev/guix/guix_wip/tests/syscalls.scm:109> 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) (= 42 (status:exit-val status))))))))> actual-value: #f> actual-error:> + (system-error> + "clone"> + "~d: ~A"> + (268435473 "Operation not permitted")> + (1))> result: FAIL
What does “uname -srv” report on this machine? It seems this kerneldoes not support namespaces.
Thanks,Ludo’.
D
D
Dylan Jeffers wrote on 30 Jul 2016 19:43
(name . Ludovic Courtès)(address . ludo@gnu.org)(address . 24108@debbugs.gnu.org)
20160730104312.2166ffa5@openmailbox.org
On Sat, 30 Jul 2016 15:07:25 +0200ludo@gnu.org (Ludovic Courtès) wrote:
Toggle quote (47 lines)> Hi,> > sapientech@openmailbox.org skribis:> > > test-name: substitute query, alternating URLs> > location: /home/sapientech/Dev/guix/guix_wip/tests/store.scm:456 > > [...]> > > substitute: guix/ui.scm:1209:6: In procedure run-guix-command:> > substitute: guix/ui.scm:1209:6: unmatched line "<html><head><meta> > http-equiv=\"refresh\"> > content=\"0;url=http://www.dnsrsearch.com/index.php?origURL=http://does-not-exist/nix-cache-info&bc=\"/></head><body><script> > type=\"text/javascript\">window.location=\"http://www.dnsrsearch.com/index.php?origURL=\"+escape(window.location)+\"&r=\"+escape(document.referrer)+\"&bc=\";</script></body></html>" > > It seems there’s a DNS hijacker in place where domain names such as> “does-not-exist” (used in this and other tests) are resolved to some> ISP-specific host or something. This explains this and more of the> other test failures you are seeing; this is unsupported.> > > test-name: clone> > location: /home/sapientech/Dev/guix/guix_wip/tests/syscalls.scm:109> > 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) (= 42 (status:exit-val> > status)))))))) actual-value: #f> > actual-error:> > + (system-error> > + "clone"> > + "~d: ~A"> > + (268435473 "Operation not permitted")> > + (1))> > result: FAIL > > What does “uname -srv” report on this machine? It seems this kernel> does not support namespaces.> > Thanks,> Ludo’.
Hi Ludo,
Thanks for getting back so quick.Output of uname -srv: Linux 4.6.4-gnu-201607192040-1-grsec #1 SMPPREEMPT Wed Jul 20 15:37:34 UYT 2016It is a security enhanced kernel, so that may be the issue. Let me knowif there is a workaround for this kernel, or whether i should fall-backto an lts, or standard kernel.
Best,Dylan
L
L
Ludovic Courtès wrote on 30 Jul 2016 23:31
(name . Dylan Jeffers)(address . sapientech@openmailbox.org)(address . 24108@debbugs.gnu.org)
87bn1ebynp.fsf@gnu.org
Dylan Jeffers <sapientech@openmailbox.org> skribis:
Toggle quote (3 lines)> On Sat, 30 Jul 2016 15:07:25 +0200> ludo@gnu.org (Ludovic Courtès) wrote:
[...]
Toggle quote (33 lines)>> > test-name: clone>> > location: /home/sapientech/Dev/guix/guix_wip/tests/syscalls.scm:109>> > 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) (= 42 (status:exit-val>> > status)))))))) actual-value: #f>> > actual-error:>> > + (system-error>> > + "clone">> > + "~d: ~A">> > + (268435473 "Operation not permitted")>> > + (1))>> > result: FAIL >> >> What does “uname -srv” report on this machine? It seems this kernel>> does not support namespaces.>> >> Thanks,>> Ludo’.>> Hi Ludo,>> Thanks for getting back so quick.> Output of uname -srv: Linux 4.6.4-gnu-201607192040-1-grsec #1 SMP> PREEMPT Wed Jul 20 15:37:34 UYT 2016
These tests are skipped when user namespaces are not supported, as perthis condition:
(define perform-container-tests? (and (user-namespace-supported?) (unprivileged-user-namespace-supported?)))
… which is true iff (1) /proc/self/ns/user exists, and (2)/proc/sys/kernel/unprivileged_userns_clone does not exist, or it existsand contains “1”.
Do these files exist on this system?
Maybe we should just ignore EPERM from (clone CLONE_NEWUSER) but it’sannoying to annotate every single test that uses it.
From a user viewpoint, this test failure simply mean that you cannot usethe ‘--container’ option ‘guix environment’ on your system.
Thanks,Ludo’.
D
D
Dylan Jeffers wrote on 31 Jul 2016 02:40
(name . Ludovic Courtès)(address . ludo@gnu.org)(address . 24108@debbugs.gnu.org)
20160730174027.0551e855@openmailbox.org
On Sat, 30 Jul 2016 23:31:54 +0200ludo@gnu.org (Ludovic Courtès) wrote:
Toggle quote (54 lines)> Dylan Jeffers <sapientech@openmailbox.org> skribis:> > > On Sat, 30 Jul 2016 15:07:25 +0200> > ludo@gnu.org (Ludovic Courtès) wrote: > > [...]> > >> > test-name: clone> >> > location: /home/sapientech/Dev/guix/guix_wip/tests/syscalls.scm:109> >> > 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) (= 42 (status:exit-val> >> > status)))))))) actual-value: #f> >> > actual-error:> >> > + (system-error> >> > + "clone"> >> > + "~d: ~A"> >> > + (268435473 "Operation not permitted")> >> > + (1))> >> > result: FAIL > >> > >> What does “uname -srv” report on this machine? It seems this> >> kernel does not support namespaces.> >> > >> Thanks,> >> Ludo’. > >> > Hi Ludo,> >> > Thanks for getting back so quick.> > Output of uname -srv: Linux 4.6.4-gnu-201607192040-1-grsec #1 SMP> > PREEMPT Wed Jul 20 15:37:34 UYT 2016 > > These tests are skipped when user namespaces are not supported, as per> this condition:> > (define perform-container-tests?> (and (user-namespace-supported?)> (unprivileged-user-namespace-supported?)))> > … which is true iff (1) /proc/self/ns/user exists, and (2)> /proc/sys/kernel/unprivileged_userns_clone does not exist, or it> exists and contains “1”.> > Do these files exist on this system?
(1) /proc/self/ns/user exists, and(2) /proc/sys/kernel/unpriviledged_userns_clone D.N.E
Ideas on the best approach to allow the build to succeed?
I also have had issues with qemu, so it makes sense that vm/containerstuff both have issues. I have a feeling its due to thegrsec kernel.https://wiki.archlinux.org/index.php/Grsecurity_Patchsettalks abit about userspace/namespace hardening + issues with xen andvirtbox. Going to reboot with an lts kernel and try again. Will postupdate...
Best,Dylan
Best,Dylan
D
D
Dylan Jeffers wrote on 31 Jul 2016 03:53
(name . Ludovic Courtès)(address . ludo@gnu.org)(address . 24108@debbugs.gnu.org)
20160730185305.0c8cfe59@openmailbox.org
On Sat, 30 Jul 2016 17:40:27 -0700Dylan Jeffers <sapientech@openmailbox.org> wrote:
Toggle quote (76 lines)> On Sat, 30 Jul 2016 23:31:54 +0200> ludo@gnu.org (Ludovic Courtès) wrote:> > > Dylan Jeffers <sapientech@openmailbox.org> skribis:> > > > > On Sat, 30 Jul 2016 15:07:25 +0200> > > ludo@gnu.org (Ludovic Courtès) wrote: > > > > [...]> > > > >> > test-name: clone> > >> > location: /home/sapientech/Dev/guix/guix_wip/tests/syscalls.scm:109> > >> > 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) (= 42> > >> > (status:exit-val status)))))))) actual-value: #f> > >> > actual-error:> > >> > + (system-error> > >> > + "clone"> > >> > + "~d: ~A"> > >> > + (268435473 "Operation not permitted")> > >> > + (1))> > >> > result: FAIL > > >> > > >> What does “uname -srv” report on this machine? It seems this> > >> kernel does not support namespaces.> > >> > > >> Thanks,> > >> Ludo’. > > >> > > Hi Ludo,> > >> > > Thanks for getting back so quick.> > > Output of uname -srv: Linux 4.6.4-gnu-201607192040-1-grsec #1 SMP> > > PREEMPT Wed Jul 20 15:37:34 UYT 2016 > > > > These tests are skipped when user namespaces are not supported, as> > per this condition:> > > > (define perform-container-tests?> > (and (user-namespace-supported?)> > (unprivileged-user-namespace-supported?)))> > > > … which is true iff (1) /proc/self/ns/user exists, and (2)> > /proc/sys/kernel/unprivileged_userns_clone does not exist, or it> > exists and contains “1”.> > > > Do these files exist on this system? > > (1) /proc/self/ns/user exists, and> (2) /proc/sys/kernel/unpriviledged_userns_clone D.N.E> > Ideas on the best approach to allow the build to succeed?> > I also have had issues with qemu, so it makes sense that vm/container> stuff both have issues. I have a feeling its due to the> grsec kernel.> https://wiki.archlinux.org/index.php/Grsecurity_Patchset talks a> bit about userspace/namespace hardening + issues with xen and> virtbox. Going to reboot with an lts kernel and try again. Will post> update...> > Best,> Dylan> > Best,> Dylan
After changing kernel, and stopping paxd.service, build stillfailed :(
It looks like the failed tests are different though (see attachment)
Dylan
This file contains any messages produced by compilers whilerunning configure, to aid debugging if configure makes a mistake.
It was created by GNU Guix configure 0.10.0, which wasgenerated by GNU Autoconf 2.69. Invocation command line was
$ ./configure
## --------- #### Platform. #### --------- ##
hostname = freetopuname -m = x86_64uname -r = 4.6.4-gnu-1uname -s = Linuxuname -v = #1 SMP PREEMPT Wed Jul 20 05:58:11 UYT 2016
/usr/bin/uname -p = unknown/bin/uname -X = unknown
/bin/arch = unknown/usr/bin/arch -k = unknown/usr/convex/getsysinfo = unknown/usr/bin/hostinfo = unknown/bin/machine = unknown/usr/bin/oslevel = unknown/bin/universe = unknown
PATH: /gnu/store/20qsgil18h1k3znqx52wjzy1kfiwqgdp-profile/binPATH: /gnu/store/20qsgil18h1k3znqx52wjzy1kfiwqgdp-profile/sbinPATH: /usr/local/sbinPATH: /usr/local/binPATH: /usr/binPATH: /usr/lib/jvm/default/binPATH: /usr/bin/site_perlPATH: /usr/bin/vendor_perlPATH: /usr/bin/core_perlPATH: /home/sapientech/.guix-profile/binPATH: /home/sapientech/.guix-profile/sbin

## ----------- #### Core tests. #### ----------- ##
configure:2574: checking for a BSD-compatible installconfigure:2642: result: /gnu/store/20qsgil18h1k3znqx52wjzy1kfiwqgdp-profile/bin/install -cconfigure:2653: checking whether build environment is saneconfigure:2708: result: yesconfigure:2859: checking for a thread-safe mkdir -pconfigure:2898: result: /gnu/store/20qsgil18h1k3znqx52wjzy1kfiwqgdp-profile/bin/mkdir -pconfigure:2905: checking for gawkconfigure:2921: found /gnu/store/20qsgil18h1k3znqx52wjzy1kfiwqgdp-profile/bin/gawkconfigure:2932: result: gawkconfigure:2943: checking whether make sets $(MAKE)configure:2965: result: yesconfigure:2994: checking whether make supports nested variablesconfigure:3011: result: yesconfigure:3150: checking whether make supports nested variablesconfigure:3167: result: yesconfigure:3194: checking for style of include used by makeconfigure:3222: result: GNUconfigure:3293: checking for gccconfigure:3309: found /gnu/store/20qsgil18h1k3znqx52wjzy1kfiwqgdp-profile/bin/gccconfigure:3320: result: gccconfigure:3549: checking for C compiler versionconfigure:3558: gcc --version >&5gcc (GCC) 4.9.3Copyright (C) 2015 Free Software Foundation, Inc.This is free software; see the source for copying conditions. There is NOwarranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
configure:3569: $? = 0configure:3558: gcc -v >&5Using built-in specs.COLLECT_GCC=gccCOLLECT_LTO_WRAPPER=/gnu/store/sjvcirri2bg7q5hlrkaywhmxllik0cfx-gcc-4.9.3/libexec/gcc/x86_64-unknown-linux-gnu/4.9.3/lto-wrapperTarget: x86_64-unknown-linux-gnuConfigured with: Thread model: posixgcc version 4.9.3 (GCC) configure:3569: $? = 0configure:3558: gcc -V >&5gcc: error: unrecognized command line option '-V'gcc: fatal error: no input filescompilation terminated.configure:3569: $? = 1configure:3558: gcc -qversion >&5gcc: error: unrecognized command line option '-qversion'gcc: fatal error: no input filescompilation terminated.configure:3569: $? = 1configure:3589: checking whether the C compiler worksconfigure:3611: gcc conftest.c >&5configure:3615: $? = 0configure:3663: result: yesconfigure:3666: checking for C compiler default output file nameconfigure:3668: result: a.outconfigure:3674: checking for suffix of executablesconfigure:3681: gcc -o conftest conftest.c >&5configure:3685: $? = 0configure:3707: result: configure:3729: checking whether we are cross compilingconfigure:3737: gcc -o conftest conftest.c >&5configure:3741: $? = 0configure:3748: ./conftestconfigure:3752: $? = 0configure:3767: result: noconfigure:3772: checking for suffix of object filesconfigure:3794: gcc -c conftest.c >&5configure:3798: $? = 0configure:3819: result: oconfigure:3823: checking whether we are using the GNU C compilerconfigure:3842: gcc -c conftest.c >&5configure:3842: $? = 0configure:3851: result: yesconfigure:3860: checking whether gcc accepts -gconfigure:3880: gcc -c -g conftest.c >&5configure:3880: $? = 0configure:3921: result: yesconfigure:3938: checking for gcc option to accept ISO C89configure:4001: gcc -c -g -O2 conftest.c >&5configure:4001: $? = 0configure:4014: result: none neededconfigure:4039: checking whether gcc understands -c and -o togetherconfigure:4061: gcc -c conftest.c -o conftest2.oconfigure:4064: $? = 0configure:4061: gcc -c conftest.c -o conftest2.oconfigure:4064: $? = 0configure:4076: result: yesconfigure:4095: checking dependency style of gccconfigure:4206: result: gcc3configure:4227: checking how to run the C preprocessorconfigure:4258: gcc -E conftest.cconfigure:4258: $? = 0configure:4272: gcc -E conftest.cconftest.c:11:28: fatal error: ac_nonexistent.h: No such file or directory #include <ac_nonexistent.h> ^compilation terminated.configure:4272: $? = 1configure: failed program was:| /* confdefs.h */| #define PACKAGE_NAME "GNU Guix"| #define PACKAGE_TARNAME "guix"| #define PACKAGE_VERSION "0.10.0"| #define PACKAGE_STRING "GNU Guix 0.10.0"| #define PACKAGE_BUGREPORT "bug-guix@gnu.org"| #define PACKAGE_URL "http://www.gnu.org/software/guix/"| #define PACKAGE "guix"| #define VERSION "0.10.0"| /* end confdefs.h. */| #include <ac_nonexistent.h>configure:4297: result: gcc -Econfigure:4317: gcc -E conftest.cconfigure:4317: $? = 0configure:4331: gcc -E conftest.cconftest.c:11:28: fatal error: ac_nonexistent.h: No such file or directory #include <ac_nonexistent.h> ^compilation terminated.configure:4331: $? = 1configure: failed program was:| /* confdefs.h */| #define PACKAGE_NAME "GNU Guix"| #define PACKAGE_TARNAME "guix"| #define PACKAGE_VERSION "0.10.0"| #define PACKAGE_STRING "GNU Guix 0.10.0"| #define PACKAGE_BUGREPORT "bug-guix@gnu.org"| #define PACKAGE_URL "http://www.gnu.org/software/guix/"| #define PACKAGE "guix"| #define VERSION "0.10.0"| /* end confdefs.h. */| #include <ac_nonexistent.h>configure:4360: checking for grep that handles long lines and -econfigure:4418: result: /gnu/store/20qsgil18h1k3znqx52wjzy1kfiwqgdp-profile/bin/grepconfigure:4423: checking for egrepconfigure:4485: result: /gnu/store/20qsgil18h1k3znqx52wjzy1kfiwqgdp-profile/bin/grep -Econfigure:4490: checking for ANSI C header filesconfigure:4510: gcc -c -g -O2 conftest.c >&5configure:4510: $? = 0configure:4583: gcc -o conftest -g -O2 conftest.c >&5configure:4583: $? = 0configure:4583: ./conftestconfigure:4583: $? = 0configure:4594: result: yesconfigure:4607: checking for sys/types.hconfigure:4607: gcc -c -g -O2 conftest.c >&5configure:4607: $? = 0configure:4607: result: yesconfigure:4607: checking for sys/stat.hconfigure:4607: gcc -c -g -O2 conftest.c >&5configure:4607: $? = 0configure:4607: result: yesconfigure:4607: checking for stdlib.hconfigure:4607: gcc -c -g -O2 conftest.c >&5configure:4607: $? = 0configure:4607: result: yesconfigure:4607: checking for string.hconfigure:4607: gcc -c -g -O2 conftest.c >&5configure:4607: $? = 0configure:4607: result: yesconfigure:4607: checking for memory.hconfigure:4607: gcc -c -g -O2 conftest.c >&5configure:4607: $? = 0configure:4607: result: yesconfigure:4607: checking for strings.hconfigure:4607: gcc -c -g -O2 conftest.c >&5configure:4607: $? = 0configure:4607: result: yesconfigure:4607: checking for inttypes.hconfigure:4607: gcc -c -g -O2 conftest.c >&5configure:4607: $? = 0configure:4607: result: yesconfigure:4607: checking for stdint.hconfigure:4607: gcc -c -g -O2 conftest.c >&5configure:4607: $? = 0configure:4607: result: yesconfigure:4607: checking for unistd.hconfigure:4607: gcc -c -g -O2 conftest.c >&5configure:4607: $? = 0configure:4607: result: yesconfigure:4620: checking minix/config.h usabilityconfigure:4620: gcc -c -g -O2 conftest.c >&5conftest.c:54:26: fatal error: minix/config.h: No such file or directory #include <minix/config.h> ^compilation terminated.configure:4620: $? = 1configure: failed program was:| /* confdefs.h */| #define PACKAGE_NAME "GNU Guix"| #define PACKAGE_TARNAME "guix"| #define PACKAGE_VERSION "0.10.0"| #define PACKAGE_STRING "GNU Guix 0.10.0"| #define PACKAGE_BUGREPORT "bug-guix@gnu.org"| #define PACKAGE_URL "http://www.gnu.org/software/guix/"| #define PACKAGE "guix"| #define VERSION "0.10.0"| #define STDC_HEADERS 1| #define HAVE_SYS_TYPES_H 1| #define HAVE_SYS_STAT_H 1| #define HAVE_STDLIB_H 1| #define HAVE_STRING_H 1| #define HAVE_MEMORY_H 1| #define HAVE_STRINGS_H 1| #define HAVE_INTTYPES_H 1| #define HAVE_STDINT_H 1| #define HAVE_UNISTD_H 1| /* end confdefs.h. */| #include <stdio.h>| #ifdef HAVE_SYS_TYPES_H| # include <sys/types.h>| #endif| #ifdef HAVE_SYS_STAT_H| # include <sys/stat.h>| #endif| #ifdef STDC_HEADERS| # include <stdlib.h>| # include <stddef.h>| #else| # ifdef HAVE_STDLIB_H| # include <stdlib.h>| # endif| #endif| #ifdef HAVE_STRING_H| # if !defined STDC_HEADERS && defined HAVE_MEMORY_H| # include <memory.h>| # endif| # include <string.h>| #endif| #ifdef HAVE_STRINGS_H| # include <strings.h>| #endif| #ifdef HAVE_INTTYPES_H| # include <inttypes.h>| #endif| #ifdef HAVE_STDINT_H| # include <stdint.h>| #endif| #ifdef HAVE_UNISTD_H| # include <unistd.h>| #endif| #include <minix/config.h>configure:4620: result: noconfigure:4620: checking minix/config.h presenceconfigure:4620: gcc -E conftest.cconftest.c:21:26: fatal error: minix/config.h: No such file or directory #include <minix/config.h> ^compilation terminated.configure:4620: $? = 1configure: failed program was:| /* confdefs.h */| #define PACKAGE_NAME "GNU Guix"| #define PACKAGE_TARNAME "guix"| #define PACKAGE_VERSION "0.10.0"| #define PACKAGE_STRING "GNU Guix 0.10.0"| #define PACKAGE_BUGREPORT "bug-guix@gnu.org"| #define PACKAGE_URL "http://www.gnu.org/software/guix/"| #define PACKAGE "guix"| #define VERSION "0.10.0"| #define STDC_HEADERS 1| #define HAVE_SYS_TYPES_H 1| #define HAVE_SYS_STAT_H 1| #define HAVE_STDLIB_H 1| #define HAVE_STRING_H 1| #define HAVE_MEMORY_H 1| #define HAVE_STRINGS_H 1| #define HAVE_INTTYPES_H 1| #define HAVE_STDINT_H 1| #define HAVE_UNISTD_H 1| /* end confdefs.h. */| #include <minix/config.h>configure:4620: result: noconfigure:4620: checking for minix/config.hconfigure:4620: result: noconfigure:4641: checking whether it is safe to define __EXTENSIONS__configure:4659: gcc -c -g -O2 conftest.c >&5configure:4659: $? = 0configure:4666: result: yesconfigure:4689: checking whether NLS is requestedconfigure:4698: result: yesconfigure:4739: checking for msgfmtconfigure: trying /gnu/store/20qsgil18h1k3znqx52wjzy1kfiwqgdp-profile/bin/msgfmt...0 translated messages.configure:4771: result: /gnu/store/20qsgil18h1k3znqx52wjzy1kfiwqgdp-profile/bin/msgfmtconfigure:4780: checking for gmsgfmtconfigure:4811: result: /gnu/store/20qsgil18h1k3znqx52wjzy1kfiwqgdp-profile/bin/msgfmtconfigure:4862: checking for xgettextconfigure: trying /gnu/store/20qsgil18h1k3znqx52wjzy1kfiwqgdp-profile/bin/xgettext.../gnu/store/20qsgil18h1k3znqx52wjzy1kfiwqgdp-profile/bin/xgettext: warning: file '/dev/null' extension '' is unknown; will try Cconfigure:4894: result: /gnu/store/20qsgil18h1k3znqx52wjzy1kfiwqgdp-profile/bin/xgettextconfigure:4940: checking for msgmergeconfigure: trying /gnu/store/20qsgil18h1k3znqx52wjzy1kfiwqgdp-profile/bin/msgmerge...configure:4971: result: /gnu/store/20qsgil18h1k3znqx52wjzy1kfiwqgdp-profile/bin/msgmergeconfigure:5008: checking build system typeconfigure:5022: result: x86_64-unknown-linux-gnuconfigure:5042: checking host system typeconfigure:5055: result: x86_64-unknown-linux-gnuconfigure:5099: checking for ld used by GCCconfigure:5163: result: /gnu/store/20qsgil18h1k3znqx52wjzy1kfiwqgdp-profile/bin/ldconfigure:5170: checking if the linker (/gnu/store/20qsgil18h1k3znqx52wjzy1kfiwqgdp-profile/bin/ld) is GNU ldconfigure:5183: result: yesconfigure:5190: checking for shared library run path originconfigure:5203: result: doneconfigure:5775: checking for CFPreferencesCopyAppValueconfigure:5793: gcc -o conftest -g -O2 conftest.c -Wl,-framework -Wl,CoreFoundation >&5conftest.c:26:42: fatal error: CoreFoundation/CFPreferences.h: No such file or directory #include <CoreFoundation/CFPreferences.h> ^compilation terminated.configure:5793: $? = 1configure: failed program was:| /* confdefs.h */| #define PACKAGE_NAME "GNU Guix"| #define PACKAGE_TARNAME "guix"| #define PACKAGE_VERSION "0.10.0"| #define PACKAGE_STRING "GNU Guix 0.10.0"| #define PACKAGE_BUGREPORT "bug-guix@gnu.org"| #define PACKAGE_URL "http://www.gnu.org/software/guix/"| #define PACKAGE "guix"| #define VERSION "0.10.0"| #define STDC_HEADERS 1| #define HAVE_SYS_TYPES_H 1| #define HAVE_SYS_STAT_H 1| #define HAVE_STDLIB_H 1| #define HAVE_STRING_H 1| #define HAVE_MEMORY_H 1| #define HAVE_STRINGS_H 1| #define HAVE_INTTYPES_H 1| #define HAVE_STDINT_H 1| #define HAVE_UNISTD_H 1| #define __EXTENSIONS__ 1| #define _ALL_SOURCE 1| #define _GNU_SOURCE 1| #define _POSIX_PTHREAD_SEMANTICS 1| #define _TANDEM_SOURCE 1| /* end confdefs.h. */| #include <CoreFoundation/CFPreferences.h>| int| main ()| {| CFPreferencesCopyAppValue(NULL, NULL)| ;| return 0;| }configure:5802: result: noconfigure:5809: checking for CFLocaleCopyCurrentconfigure:5827: gcc -o conftest -g -O2 conftest.c -Wl,-framework -Wl,CoreFoundation >&5conftest.c:26:37: fatal error: CoreFoundation/CFLocale.h: No such file or directory #include <CoreFoundation/CFLocale.h> ^compilation terminated.configure:5827: $? = 1configure: failed program was:| /* confdefs.h */| #define PACKAGE_NAME "GNU Guix"| #define PACKAGE_TARNAME "guix"| #define PACKAGE_VERSION "0.10.0"| #define PACKAGE_STRING "GNU Guix 0.10.0"| #define PACKAGE_BUGREPORT "bug-guix@gnu.org"| #define PACKAGE_URL "http://www.gnu.org/software/guix/"| #define PACKAGE "guix"| #define VERSION "0.10.0"| #define STDC_HEADERS 1| #define HAVE_SYS_TYPES_H 1| #define HAVE_SYS_STAT_H 1| #define HAVE_STDLIB_H 1| #define HAVE_STRING_H 1| #define HAVE_MEMORY_H 1| #define HAVE_STRINGS_H 1| #define HAVE_INTTYPES_H 1| #define HAVE_STDINT_H 1| #define HAVE_UNISTD_H 1| #define __EXTENSIONS__ 1| #define _ALL_SOURCE 1| #define _GNU_SOURCE 1| #define _POSIX_PTHREAD_SEMANTICS 1| #define _TANDEM_SOURCE 1| /* end confdefs.h. */| #include <CoreFoundation/CFLocale.h>| int| main ()| {| CFLocaleCopyCurrent();| ;| return 0;| }configure:5836: result: noconfigure:5885: checking for GNU gettext in libcconfigure:5905: gcc -o conftest -g -O2 conftest.c >&5configure:5905: $? = 0configure:5914: result: yesconfigure:6705: checking whether to use NLSconfigure:6707: result: yesconfigure:6710: checking where the gettext function comes fromconfigure:6721: result: libcconfigure:6787: checking for sedconfigure:6805: found /gnu/store/20qsgil18h1k3znqx52wjzy1kfiwqgdp-profile/bin/sedconfigure:6817: result: /gnu/store/20qsgil18h1k3znqx52wjzy1kfiwqgdp-profile/bin/sedconfigure:6867: checking for the Guix system typeconfigure:6869: result: x86_64-linuxconfigure:6923: checking for the store directoryconfigure:6925: result: /gnu/storeconfigure:6947: checking the length of the installed socket file nameconfigure:6954: result: 40configure:6958: checking for unit test root directoryconfigure:6965: result: /home/sapientech/Dev/guix/guix_wip/test-tmpconfigure:6970: checking the length of the socket file name used in testsconfigure:6977: result: 75configure:6981: checking the length of a typical hash bang lineconfigure:6988: result: 73configure:6993: checking the length of a hash bang line used in testsconfigure:7000: result: 112configure:7094: checking for pkg-configconfigure:7112: found /gnu/store/20qsgil18h1k3znqx52wjzy1kfiwqgdp-profile/bin/pkg-configconfigure:7124: result: /gnu/store/20qsgil18h1k3znqx52wjzy1kfiwqgdp-profile/bin/pkg-configconfigure:7149: checking pkg-config is at least version 0.9.0configure:7152: result: yesconfigure:7162: checking for GUILEconfigure:7169: $PKG_CONFIG --exists --print-errors "guile-2.0 >= 2.0.7"configure:7172: $? = 0configure:7186: $PKG_CONFIG --exists --print-errors "guile-2.0 >= 2.0.7"configure:7189: $? = 0configure:7247: result: yesconfigure:7253: checking for guileconfigure:7271: found /gnu/store/20qsgil18h1k3znqx52wjzy1kfiwqgdp-profile/bin/guileconfigure:7283: result: /gnu/store/20qsgil18h1k3znqx52wjzy1kfiwqgdp-profile/bin/guileconfigure:7293: checking for guildconfigure:7311: found /gnu/store/20qsgil18h1k3znqx52wjzy1kfiwqgdp-profile/bin/guildconfigure:7323: result: /gnu/store/20qsgil18h1k3znqx52wjzy1kfiwqgdp-profile/bin/guildconfigure:7337: checking for guileconfigure:7367: result: /gnu/store/20qsgil18h1k3znqx52wjzy1kfiwqgdp-profile/bin/guileconfigure:7396: checking for Guile version >= 2.0configure:7417: result: 2.0.11configure:7422: checking for guildconfigure:7452: result: /gnu/store/20qsgil18h1k3znqx52wjzy1kfiwqgdp-profile/bin/guildconfigure:7464: checking for guile-configconfigure:7482: found /gnu/store/20qsgil18h1k3znqx52wjzy1kfiwqgdp-profile/bin/guile-configconfigure:7494: result: /gnu/store/20qsgil18h1k3znqx52wjzy1kfiwqgdp-profile/bin/guile-configconfigure:7549: checking if (json) is availableconfigure:7556: result: yesconfigure:7572: checking whether /gnu/store/20qsgil18h1k3znqx52wjzy1kfiwqgdp-profile/bin/guile provides feature 'regex'configure:7576: result: yesconfigure:7572: checking whether /gnu/store/20qsgil18h1k3znqx52wjzy1kfiwqgdp-profile/bin/guile provides feature 'posix'configure:7576: result: yesconfigure:7572: checking whether /gnu/store/20qsgil18h1k3znqx52wjzy1kfiwqgdp-profile/bin/guile provides feature 'socket'configure:7576: result: yesconfigure:7572: checking whether /gnu/store/20qsgil18h1k3znqx52wjzy1kfiwqgdp-profile/bin/guile provides feature 'net-db'configure:7576: result: yesconfigure:7572: checking whether /gnu/store/20qsgil18h1k3znqx52wjzy1kfiwqgdp-profile/bin/guile provides feature 'threads'configure:7576: result: yesconfigure:7587: checking whether (srfi srfi-37) is affected by http://bugs.gnu.org/13176configure:7603: result: noconfigure:7616: checking whether libc provides 'mount'configure:7631: result: yesconfigure:7645: checking for gzipconfigure:7663: found /gnu/store/20qsgil18h1k3znqx52wjzy1kfiwqgdp-profile/bin/gzipconfigure:7675: result: /gnu/store/20qsgil18h1k3znqx52wjzy1kfiwqgdp-profile/bin/gzipconfigure:7685: checking for bzip2configure:7703: found /gnu/store/20qsgil18h1k3znqx52wjzy1kfiwqgdp-profile/bin/bzip2configure:7715: result: /gnu/store/20qsgil18h1k3znqx52wjzy1kfiwqgdp-profile/bin/bzip2configure:7725: checking for xzconfigure:7743: found /gnu/store/20qsgil18h1k3znqx52wjzy1kfiwqgdp-profile/bin/xzconfigure:7755: result: /gnu/store/20qsgil18h1k3znqx52wjzy1kfiwqgdp-profile/bin/xzconfigure:7783: checking for nix-instantiateconfigure:7816: result: noconfigure:7823: checking for nix-hashconfigure:7856: result: noconfigure:7881: checking for Nixpkgs source treeconfigure:7888: result: not foundconfigure:7932: checking for libgcrypt-configconfigure:7950: found /gnu/store/20qsgil18h1k3znqx52wjzy1kfiwqgdp-profile/bin/libgcrypt-configconfigure:7962: result: /gnu/store/20qsgil18h1k3znqx52wjzy1kfiwqgdp-profile/bin/libgcrypt-configconfigure:7970: checking libgcrypt's library directoryconfigure:7981: result: /gnu/store/7wfbprp1b9b25crlidg6h7b6hpib2b99-libgcrypt-1.6.5/libconfigure:7993: checking for libgcrypt shared library nameconfigure:7995: result: /gnu/store/7wfbprp1b9b25crlidg6h7b6hpib2b99-libgcrypt-1.6.5/lib/libgcryptconfigure:8001: checking whether /gnu/store/7wfbprp1b9b25crlidg6h7b6hpib2b99-libgcrypt-1.6.5/lib/libgcrypt can be dynamically loadedconfigure:8016: result: yesconfigure:8025: checking zlib's library directoryconfigure:8032: result: /gnu/store/hsxhfmjgh8m4c0pavq3gd3gcrn8zrgxj-zlib-1.2.8/libconfigure:8041: checking for zlib's shared library nameconfigure:8043: result: /gnu/store/hsxhfmjgh8m4c0pavq3gd3gcrn8zrgxj-zlib-1.2.8/lib/libzconfigure:8134: checking whether to build daemonconfigure:8136: result: yesconfigure:8197: checking for g++configure:8213: found /gnu/store/20qsgil18h1k3znqx52wjzy1kfiwqgdp-profile/bin/g++configure:8224: result: g++configure:8251: checking for C++ compiler versionconfigure:8260: g++ --version >&5g++ (GCC) 4.9.3Copyright (C) 2015 Free Software Foundation, Inc.This is free software; see the source for copying conditions. There is NOwarranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
configure:8271: $? = 0configure:8260: g++ -v >&5Using built-in specs.COLLECT_GCC=g++COLLECT_LTO_WRAPPER=/gnu/store/sjvcirri2bg7q5hlrkaywhmxllik0cfx-gcc-4.9.3/libexec/gcc/x86_64-unknown-linux-gnu/4.9.3/lto-wrapperTarget: x86_64-unknown-linux-gnuConfigured with: Thread model: posixgcc version 4.9.3 (GCC) configure:8271: $? = 0configure:8260: g++ -V >&5g++: error: unrecognized command line option '-V'g++: fatal error: no input filescompilation terminated.configure:8271: $? = 1configure:8260: g++ -qversion >&5g++: error: unrecognized command line option '-qversion'g++: fatal error: no input filescompilation terminated.configure:8271: $? = 1configure:8275: checking whether we are using the GNU C++ compilerconfigure:8294: g++ -c conftest.cpp >&5configure:8294: $? = 0configure:8303: result: yesconfigure:8312: checking whether g++ accepts -gconfigure:8332: g++ -c -g conftest.cpp >&5configure:8332: $? = 0configure:8373: result: yesconfigure:8398: checking dependency style of g++configure:8509: result: gcc3configure:8537: checking whether g++ supports C++11configure:8561: g++ -c -std=c++11 -g -O2 conftest.cpp >&5configure:8561: $? = 0configure:8570: result: yesconfigure:8621: checking for ranlibconfigure:8637: found /gnu/store/20qsgil18h1k3znqx52wjzy1kfiwqgdp-profile/bin/ranlibconfigure:8648: result: ranlibconfigure:8680: checking for special C compiler options needed for large filesconfigure:8725: result: noconfigure:8731: checking for _FILE_OFFSET_BITS value needed for large filesconfigure:8756: g++ -c -g -O2 conftest.cpp >&5configure:8756: $? = 0configure:8788: result: noconfigure:8874: checking for BZ2_bzWriteOpen in -lbz2configure:8899: g++ -o conftest -g -O2 conftest.cpp -lbz2 >&5configure:8899: $? = 0configure:8908: result: yesconfigure:8921: checking how to run the C++ preprocessorconfigure:8948: g++ -E conftest.cppconfigure:8948: $? = 0configure:8962: g++ -E conftest.cppconftest.cpp:29:28: fatal error: ac_nonexistent.h: No such file or directory #include <ac_nonexistent.h> ^compilation terminated.configure:8962: $? = 1configure: failed program was:| /* confdefs.h */| #define PACKAGE_NAME "GNU Guix"| #define PACKAGE_TARNAME "guix"| #define PACKAGE_VERSION "0.10.0"| #define PACKAGE_STRING "GNU Guix 0.10.0"| #define PACKAGE_BUGREPORT "bug-guix@gnu.org"| #define PACKAGE_URL "http://www.gnu.org/software/guix/"| #define PACKAGE "guix"| #define VERSION "0.10.0"| #define STDC_HEADERS 1| #define HAVE_SYS_TYPES_H 1| #define HAVE_SYS_STAT_H 1| #define HAVE_STDLIB_H 1| #define HAVE_STRING_H 1| #define HAVE_MEMORY_H 1| #define HAVE_STRINGS_H 1| #define HAVE_INTTYPES_H 1| #define HAVE_STDINT_H 1| #define HAVE_UNISTD_H 1| #define __EXTENSIONS__ 1| #define _ALL_SOURCE 1| #define _GNU_SOURCE 1| #define _POSIX_PTHREAD_SEMANTICS 1| #define _TANDEM_SOURCE 1| #define ENABLE_NLS 1| #define HAVE_GETTEXT 1| #define HAVE_DCGETTEXT 1| /* end confdefs.h. */| #include <ac_nonexistent.h>configure:8987: result: g++ -Econfigure:9007: g++ -E conftest.cppconfigure:9007: $? = 0configure:9021: g++ -E conftest.cppconftest.cpp:29:28: fatal error: ac_nonexistent.h: No such file or directory #include <ac_nonexistent.h> ^compilation terminated.configure:9021: $? = 1configure: failed program was:| /* confdefs.h */| #define PACKAGE_NAME "GNU Guix"| #define PACKAGE_TARNAME "guix"| #define PACKAGE_VERSION "0.10.0"| #define PACKAGE_STRING "GNU Guix 0.10.0"| #define PACKAGE_BUGREPORT "bug-guix@gnu.org"| #define PACKAGE_URL "http://www.gnu.org/software/guix/"| #define PACKAGE "guix"| #define VERSION "0.10.0"| #define STDC_HEADERS 1| #define HAVE_SYS_TYPES_H 1| #define HAVE_SYS_STAT_H 1| #define HAVE_STDLIB_H 1| #define HAVE_STRING_H 1| #define HAVE_MEMORY_H 1| #define HAVE_STRINGS_H 1| #define HAVE_INTTYPES_H 1| #define HAVE_STDINT_H 1| #define HAVE_UNISTD_H 1| #define __EXTENSIONS__ 1| #define _ALL_SOURCE 1| #define _GNU_SOURCE 1| #define _POSIX_PTHREAD_SEMANTICS 1| #define _TANDEM_SOURCE 1| #define ENABLE_NLS 1| #define HAVE_GETTEXT 1| #define HAVE_DCGETTEXT 1| /* end confdefs.h. */| #include <ac_nonexistent.h>configure:9052: checking bzlib.h usabilityconfigure:9052: g++ -c -g -O2 conftest.cpp >&5configure:9052: $? = 0configure:9052: result: yesconfigure:9052: checking bzlib.h presenceconfigure:9052: g++ -E conftest.cppconfigure:9052: $? = 0configure:9052: result: yesconfigure:9052: checking for bzlib.hconfigure:9052: result: yesconfigure:9067: checking for SQLITE3configure:9074: $PKG_CONFIG --exists --print-errors "sqlite3 >= 3.6.19"configure:9077: $? = 0configure:9091: $PKG_CONFIG --exists --print-errors "sqlite3 >= 3.6.19"configure:9094: $? = 0configure:9152: result: yesconfigure:9193: checking for gcry_md_open in -lgcryptconfigure:9218: g++ -o conftest -g -O2 conftest.cpp -lgcrypt >&5configure:9218: $? = 0configure:9227: result: yesconfigure:9235: checking gcrypt.h usabilityconfigure:9235: g++ -c -g -O2 conftest.cpp >&5configure:9235: $? = 0configure:9235: result: yesconfigure:9235: checking gcrypt.h presenceconfigure:9235: g++ -E conftest.cppconfigure:9235: $? = 0configure:9235: result: yesconfigure:9235: checking for gcrypt.hconfigure:9235: result: yesconfigure:9253: checking for chrootconfigure:9253: g++ -o conftest -g -O2 conftest.cpp >&5configure:9253: $? = 0configure:9253: result: yesconfigure:9253: checking for unshareconfigure:9253: g++ -o conftest -g -O2 conftest.cpp >&5configure:9253: $? = 0configure:9253: result: yesconfigure:9265: checking sched.h usabilityconfigure:9265: g++ -c -g -O2 conftest.cpp >&5configure:9265: $? = 0configure:9265: result: yesconfigure:9265: checking sched.h presenceconfigure:9265: g++ -E conftest.cppconfigure:9265: $? = 0configure:9265: result: yesconfigure:9265: checking for sched.hconfigure:9265: result: yesconfigure:9265: checking sys/param.h usabilityconfigure:9265: g++ -c -g -O2 conftest.cpp >&5configure:9265: $? = 0configure:9265: result: yesconfigure:9265: checking sys/param.h presenceconfigure:9265: g++ -E conftest.cppconfigure:9265: $? = 0configure:9265: result: yesconfigure:9265: checking for sys/param.hconfigure:9265: result: yesconfigure:9265: checking sys/mount.h usabilityconfigure:9265: g++ -c -g -O2 conftest.cpp >&5configure:9265: $? = 0configure:9265: result: yesconfigure:9265: checking sys/mount.h presenceconfigure:9265: g++ -E conftest.cppconfigure:9265: $? = 0configure:9265: result: yesconfigure:9265: checking for sys/mount.hconfigure:9265: result: yesconfigure:9265: checking sys/syscall.h usabilityconfigure:9265: g++ -c -g -O2 conftest.cpp >&5configure:9265: $? = 0configure:9265: result: yesconfigure:9265: checking sys/syscall.h presenceconfigure:9265: g++ -E conftest.cppconfigure:9265: $? = 0configure:9265: result: yesconfigure:9265: checking for sys/syscall.hconfigure:9265: result: yesconfigure:9284: checking for lutimesconfigure:9284: g++ -o conftest -g -O2 conftest.cpp >&5configure:9284: $? = 0configure:9284: result: yesconfigure:9284: checking for lchownconfigure:9284: g++ -o conftest -g -O2 conftest.cpp >&5configure:9284: $? = 0configure:9284: result: yesconfigure:9284: checking for posix_fallocateconfigure:9284: g++ -o conftest -g -O2 conftest.cpp >&5configure:9284: $? = 0configure:9284: result: yesconfigure:9284: checking for sched_setaffinityconfigure:9284: g++ -o conftest -g -O2 conftest.cpp >&5configure:9284: $? = 0configure:9284: result: yesconfigure:9284: checking for statvfsconfigure:9284: g++ -o conftest -g -O2 conftest.cpp >&5configure:9284: $? = 0configure:9284: result: yesconfigure:9284: checking for nanosleepconfigure:9284: g++ -o conftest -g -O2 conftest.cpp >&5configure:9284: $? = 0configure:9284: result: yesconfigure:9284: checking for strsignalconfigure:9284: g++ -o conftest -g -O2 conftest.cpp >&5configure:9284: $? = 0configure:9284: result: yesconfigure:9294: checking whether it is possible to create a link to a symlinkconfigure:9298: result: yesconfigure:9317: checking locale usabilityconfigure:9317: g++ -c -g -O2 conftest.cpp >&5configure:9317: $? = 0configure:9317: result: yesconfigure:9317: checking locale presenceconfigure:9317: g++ -E conftest.cppconfigure:9317: $? = 0configure:9317: result: yesconfigure:9317: checking for localeconfigure:9317: result: yesconfigure:9337: checking sys/personality.h usabilityconfigure:9337: g++ -c -g -O2 conftest.cpp >&5configure:9337: $? = 0configure:9337: result: yesconfigure:9337: checking sys/personality.h presenceconfigure:9337: g++ -E conftest.cppconfigure:9337: $? = 0configure:9337: result: yesconfigure:9337: checking for sys/personality.hconfigure:9337: result: yesconfigure:9350: checking linux/fs.h usabilityconfigure:9350: g++ -c -g -O2 conftest.cpp >&5configure:9350: $? = 0configure:9350: result: yesconfigure:9350: checking linux/fs.h presenceconfigure:9350: g++ -E conftest.cppconfigure:9350: $? = 0configure:9350: result: yesconfigure:9350: checking for linux/fs.hconfigure:9350: result: yesconfigure:9361: checking if (gnutls) is availableconfigure:9368: result: yesconfigure:9379: checking for default substitute URLsconfigure:9381: result: https://mirror.hydra.gnu.orgconfigure:9391: checking whether Guile's custom binary input ports support 'setvbuf'configure:9405: result: yesconfigure:9417: checking for unit test root directoryconfigure:9424: result: /home/sapientech/Dev/guix/guix_wip/test-tmpconfigure:9433: checking for guileconfigure:9463: result: /gnu/store/20qsgil18h1k3znqx52wjzy1kfiwqgdp-profile/bin/guileconfigure:9471: checking the current installation's localstatedirconfigure:9485: result: /usr/local/varconfigure:9563: checking for dotconfigure:9581: found /gnu/store/20qsgil18h1k3znqx52wjzy1kfiwqgdp-profile/bin/dotconfigure:9594: result: /gnu/store/20qsgil18h1k3znqx52wjzy1kfiwqgdp-profile/bin/dotconfigure:9609: checking for emacsconfigure:9625: found /gnu/store/20qsgil18h1k3znqx52wjzy1kfiwqgdp-profile/bin/emacsconfigure:9636: result: emacsconfigure:9660: checking where .elc files should goconfigure:9673: $EMACS -batch -Q -eval '(while load-path (princ (concat (car load-path) "\n")) (setq load-path (cdr load-path)))' </dev/null >conftest.outconfigure:9676: $? = 0configure:9689: result: ${datadir}/emacs/site-lispconfigure:9820: checking that generated files are newer than configureconfigure:9826: result: doneconfigure:9881: creating ./config.status
## ---------------------- #### Running config.status. #### ---------------------- ##
This file was extended by GNU Guix config.status 0.10.0, which wasgenerated by GNU Autoconf 2.69. Invocation command line was
CONFIG_FILES = CONFIG_HEADERS = CONFIG_LINKS = CONFIG_COMMANDS = $ ./config.status
on freetop
config.status:992: creating nix/scripts/list-runtime-rootsconfig.status:992: creating nix/scripts/substituteconfig.status:992: creating nix/scripts/guix-authenticateconfig.status:992: creating nix/scripts/offloadconfig.status:992: creating Makefileconfig.status:992: creating po/guix/Makefile.inconfig.status:992: creating po/packages/Makefile.inconfig.status:992: creating guix/config.scmconfig.status:992: creating scripts/guixconfig.status:992: creating test-envconfig.status:992: creating pre-inst-envconfig.status:992: creating emacs/guix-config.elconfig.status:992: creating emacs/guix-helper.scmconfig.status:992: creating nix/config.hconfig.status:1173: nix/config.h is unchangedconfig.status:1221: executing depfiles commandsconfig.status:1221: executing po-directories commands
## ---------------- #### Cache variables. #### ---------------- ##
ac_cv_build=x86_64-unknown-linux-gnuac_cv_c_compiler_gnu=yesac_cv_cxx_compiler_gnu=yesac_cv_env_CCC_set=ac_cv_env_CCC_value=ac_cv_env_CC_set=ac_cv_env_CC_value=ac_cv_env_CFLAGS_set=ac_cv_env_CFLAGS_value=ac_cv_env_CPPFLAGS_set=ac_cv_env_CPPFLAGS_value=ac_cv_env_CPP_set=ac_cv_env_CPP_value=ac_cv_env_CXXCPP_set=ac_cv_env_CXXCPP_value=ac_cv_env_CXXFLAGS_set=ac_cv_env_CXXFLAGS_value=ac_cv_env_CXX_set=ac_cv_env_CXX_value=ac_cv_env_EMACSLOADPATH_set=ac_cv_env_EMACSLOADPATH_value=ac_cv_env_EMACS_set=ac_cv_env_EMACS_value=ac_cv_env_GUILE_CFLAGS_set=ac_cv_env_GUILE_CFLAGS_value=ac_cv_env_GUILE_LIBS_set=ac_cv_env_GUILE_LIBS_value=ac_cv_env_LDFLAGS_set=ac_cv_env_LDFLAGS_value=ac_cv_env_LIBS_set=ac_cv_env_LIBS_value=ac_cv_env_PKG_CONFIG_LIBDIR_set=ac_cv_env_PKG_CONFIG_LIBDIR_value=ac_cv_env_PKG_CONFIG_PATH_set=setac_cv_env_PKG_CONFIG_PATH_value=/gnu/store/20qsgil18h1k3znqx52wjzy1kfiwqgdp-profile/lib/pkgconfig::/home/sapientech/.guix-profile/lib/pkgconfigac_cv_env_PKG_CONFIG_set=ac_cv_env_PKG_CONFIG_value=ac_cv_env_SQLITE3_CFLAGS_set=ac_cv_env_SQLITE3_CFLAGS_value=ac_cv_env_SQLITE3_LIBS_set=ac_cv_env_SQLITE3_LIBS_value=ac_cv_env_build_alias_set=ac_cv_env_build_alias_value=ac_cv_env_host_alias_set=ac_cv_env_host_alias_value=ac_cv_env_target_alias_set=ac_cv_env_target_alias_value=ac_cv_func_chroot=yesac_cv_func_lchown=yesac_cv_func_lutimes=yesac_cv_func_nanosleep=yesac_cv_func_posix_fallocate=yesac_cv_func_sched_setaffinity=yesac_cv_func_statvfs=yesac_cv_func_strsignal=yesac_cv_func_unshare=yesac_cv_guix_cbips_support_setvbuf=yesac_cv_guix_cxx11_support=yesac_cv_guix_hash_bang_length=73ac_cv_guix_socket_file_name_length=40ac_cv_guix_srfi_37_broken=noac_cv_guix_test_hash_bang_length=112ac_cv_guix_test_root=/home/sapientech/Dev/guix/guix_wip/test-tmpac_cv_guix_test_socket_file_name_length=75ac_cv_header_bzlib_h=yesac_cv_header_gcrypt_h=yesac_cv_header_inttypes_h=yesac_cv_header_linux_fs_h=yesac_cv_header_locale=yesac_cv_header_memory_h=yesac_cv_header_minix_config_h=noac_cv_header_sched_h=yesac_cv_header_stdc=yesac_cv_header_stdint_h=yesac_cv_header_stdlib_h=yesac_cv_header_string_h=yesac_cv_header_strings_h=yesac_cv_header_sys_mount_h=yesac_cv_header_sys_param_h=yesac_cv_header_sys_personality_h=yesac_cv_header_sys_stat_h=yesac_cv_header_sys_syscall_h=yesac_cv_header_sys_types_h=yesac_cv_header_unistd_h=yesac_cv_host=x86_64-unknown-linux-gnuac_cv_lib_bz2_BZ2_bzWriteOpen=yesac_cv_lib_gcrypt_gcry_md_open=yesac_cv_objext=oac_cv_path_BZIP2=/gnu/store/20qsgil18h1k3znqx52wjzy1kfiwqgdp-profile/bin/bzip2ac_cv_path_DOT_USER_PROGRAM=/gnu/store/20qsgil18h1k3znqx52wjzy1kfiwqgdp-profile/bin/dotac_cv_path_EGREP='/gnu/store/20qsgil18h1k3znqx52wjzy1kfiwqgdp-profile/bin/grep -E'ac_cv_path_GMSGFMT=/gnu/store/20qsgil18h1k3znqx52wjzy1kfiwqgdp-profile/bin/msgfmtac_cv_path_GREP=/gnu/store/20qsgil18h1k3znqx52wjzy1kfiwqgdp-profile/bin/grepac_cv_path_GUILD=/gnu/store/20qsgil18h1k3znqx52wjzy1kfiwqgdp-profile/bin/guildac_cv_path_GUILE=/gnu/store/20qsgil18h1k3znqx52wjzy1kfiwqgdp-profile/bin/guileac_cv_path_GUILE_CONFIG=/gnu/store/20qsgil18h1k3znqx52wjzy1kfiwqgdp-profile/bin/guile-configac_cv_path_GZIP=/gnu/store/20qsgil18h1k3znqx52wjzy1kfiwqgdp-profile/bin/gzipac_cv_path_LIBGCRYPT_CONFIG=/gnu/store/20qsgil18h1k3znqx52wjzy1kfiwqgdp-profile/bin/libgcrypt-configac_cv_path_MSGFMT=/gnu/store/20qsgil18h1k3znqx52wjzy1kfiwqgdp-profile/bin/msgfmtac_cv_path_MSGMERGE=/gnu/store/20qsgil18h1k3znqx52wjzy1kfiwqgdp-profile/bin/msgmergeac_cv_path_SED=/gnu/store/20qsgil18h1k3znqx52wjzy1kfiwqgdp-profile/bin/sedac_cv_path_XGETTEXT=/gnu/store/20qsgil18h1k3znqx52wjzy1kfiwqgdp-profile/bin/xgettextac_cv_path_XZ=/gnu/store/20qsgil18h1k3znqx52wjzy1kfiwqgdp-profile/bin/xzac_cv_path_ac_pt_PKG_CONFIG=/gnu/store/20qsgil18h1k3znqx52wjzy1kfiwqgdp-profile/bin/pkg-configac_cv_path_install='/gnu/store/20qsgil18h1k3znqx52wjzy1kfiwqgdp-profile/bin/install -c'ac_cv_path_mkdir=/gnu/store/20qsgil18h1k3znqx52wjzy1kfiwqgdp-profile/bin/mkdirac_cv_prog_AWK=gawkac_cv_prog_CPP='gcc -E'ac_cv_prog_CXXCPP='g++ -E'ac_cv_prog_EMACS=emacsac_cv_prog_ac_ct_CC=gccac_cv_prog_ac_ct_CXX=g++ac_cv_prog_ac_ct_RANLIB=ranlibac_cv_prog_cc_c89=ac_cv_prog_cc_g=yesac_cv_prog_cxx_g=yesac_cv_prog_make_make_set=yesac_cv_safe_to_define___extensions__=yesac_cv_sys_file_offset_bits=noac_cv_sys_largefile_CC=noacl_cv_hardcode_direct=noacl_cv_hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir'acl_cv_hardcode_libdir_separator=acl_cv_hardcode_minus_L=noacl_cv_libext=aacl_cv_libname_spec='lib$name'acl_cv_library_names_spec='$libname$shrext'acl_cv_path_LD=/gnu/store/20qsgil18h1k3znqx52wjzy1kfiwqgdp-profile/bin/ldacl_cv_prog_gnu_ld=yesacl_cv_rpath=doneacl_cv_shlibext=soacl_cv_wl=-Wl,am_cv_CC_dependencies_compiler_type=gcc3am_cv_CXX_dependencies_compiler_type=gcc3am_cv_lispdir='${datadir}/emacs/site-lisp'am_cv_make_support_nested_variables=yesam_cv_prog_cc_c_o=yesgt_cv_func_CFLocaleCopyCurrent=nogt_cv_func_CFPreferencesCopyAppValue=nogt_cv_func_gnugettext1_libc=yesguix_cv_current_localstatedir=/usr/local/varguix_cv_libc_has_mount=yesguix_cv_libgcrypt_libdir=/gnu/store/7wfbprp1b9b25crlidg6h7b6hpib2b99-libgcrypt-1.6.5/libguix_cv_libgcrypt_usable_p=yesguix_cv_libz_libdir=/gnu/store/hsxhfmjgh8m4c0pavq3gd3gcrn8zrgxj-zlib-1.2.8/libpkg_cv_GUILE_CFLAGS='-pthread -I/gnu/store/hyk2i7b8mwbrbiyqk5sgrfgds9zvcrn5-guile-2.0.11/include/guile/2.0'pkg_cv_GUILE_LIBS='-L/gnu/store/hyk2i7b8mwbrbiyqk5sgrfgds9zvcrn5-guile-2.0.11/lib -L/gnu/store/my4az71gz8iqd4w8kb34kq7vlk3fcvhm-libgc-7.4.2/lib -lguile-2.0 -lgc'pkg_cv_SQLITE3_CFLAGS=-I/gnu/store/y7h8gf890qaj6f23ryshwxd3r9y96cnc-sqlite-3.10.0/includepkg_cv_SQLITE3_LIBS='-L/gnu/store/y7h8gf890qaj6f23ryshwxd3r9y96cnc-sqlite-3.10.0/lib -lsqlite3'
## ----------------- #### Output variables. #### ----------------- ##
ACLOCAL='${SHELL} /home/sapientech/Dev/guix/guix_wip/build-aux/missing aclocal-1.15'AMDEPBACKSLASH='\'AMDEP_FALSE='#'AMDEP_TRUE=''AMTAR='$${TAR-tar}'AM_BACKSLASH='\'AM_DEFAULT_V='$(AM_DEFAULT_VERBOSITY)'AM_DEFAULT_VERBOSITY='0'AM_V='$(V)'AUTOCONF='${SHELL} /home/sapientech/Dev/guix/guix_wip/build-aux/missing autoconf'AUTOHEADER='${SHELL} /home/sapientech/Dev/guix/guix_wip/build-aux/missing autoheader'AUTOMAKE='${SHELL} /home/sapientech/Dev/guix/guix_wip/build-aux/missing automake-1.15'AWK='gawk'BUILD_DAEMON_FALSE='#'BUILD_DAEMON_OFFLOAD_FALSE='#'BUILD_DAEMON_OFFLOAD_TRUE=''BUILD_DAEMON_TRUE=''BUILD_SYSCALLS_MODULE_FALSE='#'BUILD_SYSCALLS_MODULE_TRUE=''BZIP2='/gnu/store/20qsgil18h1k3znqx52wjzy1kfiwqgdp-profile/bin/bzip2'CAN_RUN_TESTS_FALSE='#'CAN_RUN_TESTS_TRUE=''CC='gcc'CCDEPMODE='depmode=gcc3'CFLAGS='-g -O2'CPP='gcc -E'CPPFLAGS=''CXX='g++'CXXCPP='g++ -E'CXXDEPMODE='depmode=gcc3'CXXFLAGS='-g -O2'CYGPATH_W='echo'DEFS='-DHAVE_CONFIG_H'DEPDIR='.deps'DOT='${SHELL} /home/sapientech/Dev/guix/guix_wip/build-aux/missing dot'DOT_USER_PROGRAM='/gnu/store/20qsgil18h1k3znqx52wjzy1kfiwqgdp-profile/bin/dot'ECHO_C=''ECHO_N='-n'ECHO_T=''EGREP='/gnu/store/20qsgil18h1k3znqx52wjzy1kfiwqgdp-profile/bin/grep -E'EMACS='emacs'EMACSLOADPATH=''EXEEXT=''GETTEXT_MACRO_VERSION='0.18'GMSGFMT='/gnu/store/20qsgil18h1k3znqx52wjzy1kfiwqgdp-profile/bin/msgfmt'GMSGFMT_015='/gnu/store/20qsgil18h1k3znqx52wjzy1kfiwqgdp-profile/bin/msgfmt'GREP='/gnu/store/20qsgil18h1k3znqx52wjzy1kfiwqgdp-profile/bin/grep'GUILD='/gnu/store/20qsgil18h1k3znqx52wjzy1kfiwqgdp-profile/bin/guild'GUILE='/gnu/store/20qsgil18h1k3znqx52wjzy1kfiwqgdp-profile/bin/guile'GUILE_CFLAGS='-pthread -I/gnu/store/hyk2i7b8mwbrbiyqk5sgrfgds9zvcrn5-guile-2.0.11/include/guile/2.0'GUILE_CONFIG='/gnu/store/20qsgil18h1k3znqx52wjzy1kfiwqgdp-profile/bin/guile-config'GUILE_LIBS='-L/gnu/store/hyk2i7b8mwbrbiyqk5sgrfgds9zvcrn5-guile-2.0.11/lib -L/gnu/store/my4az71gz8iqd4w8kb34kq7vlk3fcvhm-libgc-7.4.2/lib -lguile-2.0 -lgc'GUILE_TOOLS='/gnu/store/20qsgil18h1k3znqx52wjzy1kfiwqgdp-profile/bin/guild'GUIX_TEST_ROOT='/home/sapientech/Dev/guix/guix_wip/test-tmp'GZIP='/gnu/store/20qsgil18h1k3znqx52wjzy1kfiwqgdp-profile/bin/gzip'HAVE_EMACS_FALSE='#'HAVE_EMACS_TRUE=''HAVE_GUILE_JSON_FALSE='#'HAVE_GUILE_JSON_TRUE=''HELP2MAN='${SHELL} /home/sapientech/Dev/guix/guix_wip/build-aux/missing help2man'INSTALL_DATA='${INSTALL} -m 644'INSTALL_PROGRAM='${INSTALL}'INSTALL_SCRIPT='${INSTALL}'INSTALL_SRFI_37_FALSE=''INSTALL_SRFI_37_TRUE='#'INSTALL_STRIP_PROGRAM='$(install_sh) -c -s'INTLLIBS=''INTL_MACOSX_LIBS=''LDFLAGS=''LIBGCRYPT='/gnu/store/7wfbprp1b9b25crlidg6h7b6hpib2b99-libgcrypt-1.6.5/lib/libgcrypt'LIBGCRYPT_CFLAGS=''LIBGCRYPT_CONFIG='/gnu/store/20qsgil18h1k3znqx52wjzy1kfiwqgdp-profile/bin/libgcrypt-config'LIBGCRYPT_LIBDIR='/gnu/store/7wfbprp1b9b25crlidg6h7b6hpib2b99-libgcrypt-1.6.5/lib'LIBGCRYPT_LIBS='-L/gnu/store/7wfbprp1b9b25crlidg6h7b6hpib2b99-libgcrypt-1.6.5/lib -lgcrypt'LIBGCRYPT_PREFIX='no'LIBICONV='-liconv'LIBINTL=''LIBOBJS=''LIBS=''LIBZ='/gnu/store/hsxhfmjgh8m4c0pavq3gd3gcrn8zrgxj-zlib-1.2.8/lib/libz'LTLIBICONV='-liconv'LTLIBINTL=''LTLIBOBJS=''MAKEINFO='${SHELL} /home/sapientech/Dev/guix/guix_wip/build-aux/missing makeinfo'MKDIR_P='/gnu/store/20qsgil18h1k3znqx52wjzy1kfiwqgdp-profile/bin/mkdir -p'MSGFMT='/gnu/store/20qsgil18h1k3znqx52wjzy1kfiwqgdp-profile/bin/msgfmt'MSGFMT_015='/gnu/store/20qsgil18h1k3znqx52wjzy1kfiwqgdp-profile/bin/msgfmt'MSGMERGE='/gnu/store/20qsgil18h1k3znqx52wjzy1kfiwqgdp-profile/bin/msgmerge'NIXPKGS=''NIX_HASH=''NIX_INSTANTIATE='nix-instantiate'NIX_PREFIX=''OBJEXT='o'PACKAGE='guix'PACKAGE_BUGREPORT='bug-guix@gnu.org'PACKAGE_NAME='GNU Guix'PACKAGE_STRING='GNU Guix 0.10.0'PACKAGE_TARNAME='guix'PACKAGE_URL='http://www.gnu.org/software/guix/'PACKAGE_VERSION='0.10.0'PATH_SEPARATOR=':'PKG_CONFIG='/gnu/store/20qsgil18h1k3znqx52wjzy1kfiwqgdp-profile/bin/pkg-config'PKG_CONFIG_LIBDIR=''PKG_CONFIG_PATH='/gnu/store/20qsgil18h1k3znqx52wjzy1kfiwqgdp-profile/lib/pkgconfig::/home/sapientech/.guix-profile/lib/pkgconfig'POSUB='po'RANLIB='ranlib'SED='/gnu/store/20qsgil18h1k3znqx52wjzy1kfiwqgdp-profile/bin/sed'SET_MAKE=''SHELL='/bin/sh'SQLITE3_CFLAGS='-I/gnu/store/y7h8gf890qaj6f23ryshwxd3r9y96cnc-sqlite-3.10.0/include'SQLITE3_LIBS='-L/gnu/store/y7h8gf890qaj6f23ryshwxd3r9y96cnc-sqlite-3.10.0/lib -lsqlite3'STRIP=''USE_NLS='yes'VERSION='0.10.0'XGETTEXT='/gnu/store/20qsgil18h1k3znqx52wjzy1kfiwqgdp-profile/bin/xgettext'XGETTEXT_015='/gnu/store/20qsgil18h1k3znqx52wjzy1kfiwqgdp-profile/bin/xgettext'XGETTEXT_EXTRA_OPTIONS=''XZ='/gnu/store/20qsgil18h1k3znqx52wjzy1kfiwqgdp-profile/bin/xz'ac_ct_CC='gcc'ac_ct_CXX='g++'am__EXEEXT_FALSE=''am__EXEEXT_TRUE='#'am__fastdepCC_FALSE='#'am__fastdepCC_TRUE=''am__fastdepCXX_FALSE='#'am__fastdepCXX_TRUE=''am__include='include'am__isrc=''am__leading_dot='.'am__nodep='_no'am__quote=''am__tar='$${TAR-tar} chof - "$$tardir"'am__untar='$${TAR-tar} xf -'bashcompletiondir='${sysconfdir}/bash_completion.d'bindir='${exec_prefix}/bin'build='x86_64-unknown-linux-gnu'build_alias=''build_cpu='x86_64'build_os='linux-gnu'build_vendor='unknown'datadir='${datarootdir}'datarootdir='${prefix}/share'docdir='${datarootdir}/doc/${PACKAGE_TARNAME}'dvidir='${docdir}'emacsuidir='${prefix}/share/guile/site/2.0/guix/emacs'exec_prefix='${prefix}'guilemoduledir='${prefix}/share/guile/site/2.0'guix_localstatedir='/usr/local/var'guix_sbindir='/usr/local/sbin'guix_sysconfdir='/usr/local/etc'guix_system='x86_64-linux'host='x86_64-unknown-linux-gnu'host_alias=''host_cpu='x86_64'host_os='linux-gnu'host_vendor='unknown'htmldir='${docdir}'includedir='${prefix}/include'infodir='${datarootdir}/info'install_sh='${SHELL} /home/sapientech/Dev/guix/guix_wip/build-aux/install-sh'libdir='${exec_prefix}/lib'libexecdir='${exec_prefix}/libexec'lispdir='${datadir}/emacs/site-lisp'localedir='${datarootdir}/locale'localstatedir='${prefix}/var'mandir='${datarootdir}/man'mkdir_p='/gnu/store/20qsgil18h1k3znqx52wjzy1kfiwqgdp-profile/bin/mkdir -p'oldincludedir='/usr/include'pdfdir='${docdir}'prefix='/usr/local'program_transform_name='s,x,x,'psdir='${docdir}'sbindir='${exec_prefix}/sbin'sharedstatedir='${prefix}/com'storedir='/gnu/store'sysconfdir='${prefix}/etc'target_alias=''
## ----------- #### confdefs.h. #### ----------- ##
/* confdefs.h */#define PACKAGE_NAME "GNU Guix"#define PACKAGE_TARNAME "guix"#define PACKAGE_VERSION "0.10.0"#define PACKAGE_STRING "GNU Guix 0.10.0"#define PACKAGE_BUGREPORT "bug-guix@gnu.org"#define PACKAGE_URL "http://www.gnu.org/software/guix/"#define PACKAGE "guix"#define VERSION "0.10.0"#define STDC_HEADERS 1#define HAVE_SYS_TYPES_H 1#define HAVE_SYS_STAT_H 1#define HAVE_STDLIB_H 1#define HAVE_STRING_H 1#define HAVE_MEMORY_H 1#define HAVE_STRINGS_H 1#define HAVE_INTTYPES_H 1#define HAVE_STDINT_H 1#define HAVE_UNISTD_H 1#define __EXTENSIONS__ 1#define _ALL_SOURCE 1#define _GNU_SOURCE 1#define _POSIX_PTHREAD_SEMANTICS 1#define _TANDEM_SOURCE 1#define ENABLE_NLS 1#define HAVE_GETTEXT 1#define HAVE_DCGETTEXT 1#define HAVE_BZLIB_H 1#define NIX_VERSION "0.0.0"#define SYSTEM "x86_64-linux"#define HAVE_CHROOT 1#define HAVE_UNSHARE 1#define HAVE_SCHED_H 1#define HAVE_SYS_PARAM_H 1#define HAVE_SYS_MOUNT_H 1#define HAVE_SYS_SYSCALL_H 1#define HAVE_LUTIMES 1#define HAVE_LCHOWN 1#define HAVE_POSIX_FALLOCATE 1#define HAVE_SCHED_SETAFFINITY 1#define HAVE_STATVFS 1#define HAVE_NANOSLEEP 1#define HAVE_STRSIGNAL 1#define CAN_LINK_SYMLINK 1#define HAVE_LOCALE 1#define HAVE_SYS_PERSONALITY_H 1#define HAVE_LINUX_FS_H 1#define GUIX_SUBSTITUTE_URLS "https://mirror.hydra.gnu.org"#define HAVE_DAEMON_OFFLOAD_HOOK 1
configure: exit 0
Attachment: config.status
======================================= GNU Guix 0.10.0: ./test-suite.log=======================================
# TOTAL: 604# PASS: 582# SKIP: 19# XFAIL: 0# FAIL: 3# XPASS: 0# ERROR: 0
.. contents:: :depth: 2
SKIP: tests/base32==================
sh: nix-hash: command not foundtest-name: bytevector->base32-stringlocation: /home/sapientech/Dev/guix/guix_wip/tests/base32.scm:48source:+ (test-assert+ "bytevector->base32-string"+ (fold (lambda (bv expected result)+ (and result+ (string=?+ (bytevector->base32-string bv)+ expected)))+ #t+ (map string->utf8+ '("" "f" "fo" "foo" "foob" "fooba" "foobar"))+ '(""+ "my"+ "mzxq"+ "mzxw6"+ "mzxw6yq"+ "mzxw6ytb"+ "mzxw6ytboi")))actual-value: #tresult: PASS
test-name: base32-string->bytevectorlocation: /home/sapientech/Dev/guix/guix_wip/tests/base32.scm:65source:+ (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: #tresult: PASS
test-name: nix-base32-string->bytevectorlocation: /home/sapientech/Dev/guix/guix_wip/tests/base32.scm:73source:+ (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: #tresult: PASS
test-name: &invalid-base32-characterlocation: /home/sapientech/Dev/guix/guix_wip/tests/base32.scm:81source:+ (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: eactual-value: eresult: PASS
test-name: sha256 & bytevector->nix-base32-stringlocation: /home/sapientech/Dev/guix/guix_wip/tests/base32.scm:92source:+ (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================
test-name: file->cpio-header + write-cpio-header + read-cpio-headerlocation: /home/sapientech/Dev/guix/guix_wip/tests/cpio.scm:37source:+ (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: #tresult: PASS
test-name: bit-identical to GNU cpio's outputlocation: /home/sapientech/Dev/guix/guix_wip/tests/cpio.scm:49source:+ (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=? ref-file file)+ (throw 'cpio-archives-differ+ files+ ref-file+ file+ (stat:size (stat ref-file))+ (stat:size (stat file))))))))))))))result: SKIP
random seed for tests: 1469939214
SKIP: tests/snix================
test-name: factorize-urilocation: /home/sapientech/Dev/guix/guix_wip/tests/snix.scm:36source:+ (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: #tresult: PASS
test-name: nixpkgs->guix-packagelocation: /home/sapientech/Dev/guix/guix_wip/tests/snix.scm:54source:+ (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=================
test-name: store-path-hash-partlocation: /home/sapientech/Dev/guix/guix_wip/tests/store.scm:51source:+ (test-equal+ "store-path-hash-part"+ "283gqy39v3g9dxjy26rynl0zls82fmcg"+ (store-path-hash-part+ (string-append+ (%store-prefix)+ "/283gqy39v3g9dxjy26rynl0zls82fmcg-guile-2.0.7")))expected-value: 283gqy39v3g9dxjy26rynl0zls82fmcgactual-value: 283gqy39v3g9dxjy26rynl0zls82fmcgresult: PASS
test-name: store-path-hash-part #flocation: /home/sapientech/Dev/guix/guix_wip/tests/store.scm:57source:+ (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: #factual-value: #fresult: PASS
test-name: store-path-package-namelocation: /home/sapientech/Dev/guix/guix_wip/tests/store.scm:63source:+ (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.7actual-value: guile-2.0.7result: PASS
test-name: store-path-package-name #flocation: /home/sapientech/Dev/guix/guix_wip/tests/store.scm:69source:+ (test-equal+ "store-path-package-name #f"+ #f+ (store-path-package-name+ "/foo/bar/283gqy39v3g9dxjy26rynl0zls82fmcg-guile-2.0.7"))expected-value: #factual-value: #fresult: PASS
test-name: direct-store-path?location: /home/sapientech/Dev/guix/guix_wip/tests/store.scm:74source:+ (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: #tresult: PASS
test-name: valid-path? livelocation: /home/sapientech/Dev/guix/guix_wip/tests/store.scm:86source:+ (test-assert+ "valid-path? live"+ (let ((p (add-text-to-store %store "hello" "hello, world")))+ (valid-path? %store p)))actual-value: #tresult: PASS
test-name: valid-path? falselocation: /home/sapientech/Dev/guix/guix_wip/tests/store.scm:90source:+ (test-assert+ "valid-path? false"+ (not (valid-path?+ %store+ (string-append+ (%store-prefix)+ "/"+ (make-string 32 #\e)+ "-foobar"))))actual-value: #tresult: PASS
test-name: valid-path? errorlocation: /home/sapientech/Dev/guix/guix_wip/tests/store.scm:95source:+ (test-assert+ "valid-path? error"+ (with-store+ s+ (guard (c ((nix-protocol-error? c) #t))+ (valid-path? s "foo")+ #f)))actual-value: #tresult: PASS
test-name: valid-path? recoverylocation: /home/sapientech/Dev/guix/guix_wip/tests/store.scm:101source:+ (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: #tresult: PASS
test-name: hash-part->pathlocation: /home/sapientech/Dev/guix/guix_wip/tests/store.scm:118source:+ (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: #tresult: PASS
test-name: dead-pathslocation: /home/sapientech/Dev/guix/guix_wip/tests/store.scm:123source:+ (test-assert+ "dead-paths"+ (let ((p (add-text-to-store+ %store+ "random-text"+ (random-text))))+ (->bool (member p (dead-paths %store)))))random seed for tests: 1469938959finding garbage collector roots...removing stale temporary roots file `/home/sapientech/Dev/guix/guix_wip/test-tmp/var/11072/temproots/11095'determining live/dead paths...actual-value: #tresult: PASS
test-name: permanent rootlocation: /home/sapientech/Dev/guix/guix_wip/tests/store.scm:144source:+ (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)))))))finding garbage collector roots...determining live/dead paths...finding garbage collector roots...determining live/dead paths...actual-value: #tresult: PASS
test-name: dead path can be explicitly collectedlocation: /home/sapientech/Dev/guix/guix_wip/tests/store.scm:156source:+ (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))))))finding garbage collector roots...deleting unused links...actual-value: #tresult: PASS
test-name: add-text-to-store vs. delete-pathslocation: /home/sapientech/Dev/guix/guix_wip/tests/store.scm:164source:+ (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=? path path2)+ (equal? deleted (list path))+ (valid-path? store path)+ (file-exists? path)))))finding garbage collector roots...removing stale temporary roots file `/home/sapientech/Dev/guix/guix_wip/test-tmp/var/11072/temproots/11111'deleting `/home/sapientech/Dev/guix/guix_wip/test-tmp/store/r11ng87nwwzjwb5qxkyg8nbayhwrqfxr-delete-me'deleting `/home/sapientech/Dev/guix/guix_wip/test-tmp/store/trash'deleting unused links...note: currently hard linking saves 26.30 MiBactual-value: #tresult: PASS
test-name: add-to-store vs. delete-pathslocation: /home/sapientech/Dev/guix/guix_wip/tests/store.scm:177source:+ (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=? path path2)+ (equal? deleted (list path))+ (valid-path? store path)+ (file-exists? path)))))finding garbage collector roots...removing stale temporary roots file `/home/sapientech/Dev/guix/guix_wip/test-tmp/var/11072/temproots/11115'deleting `/home/sapientech/Dev/guix/guix_wip/test-tmp/store/57nhqlbqv5kh4zwr2vvdk3xyh741ynri-delete-me'deleting `/home/sapientech/Dev/guix/guix_wip/test-tmp/store/trash'deleting unused links...note: currently hard linking saves 26.30 MiBactual-value: #tresult: PASS
test-name: referenceslocation: /home/sapientech/Dev/guix/guix_wip/tests/store.scm:189source:+ (test-assert+ "references"+ (let* ((t1 (add-text-to-store+ %store+ "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: #tresult: PASS
test-name: references/substitutes missing reference infolocation: /home/sapientech/Dev/guix/guix_wip/tests/store.scm:199source:+ (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: #tresult: PASS
test-name: references/substitutes with substitute infolocation: /home/sapientech/Dev/guix/guix_wip/tests/store.scm:211source:+ (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 => (sha256 (string->utf8 t2)))+ (references => (list t2))+ (equal?+ (references/substitutes s (list o t3 t2 t1))+ `((,t2) () (,t1) ()))))))substitute: warning: authentication and authorization of substitutes disabled!substitute: guix substitute: warning: ACL for archive imports seems to be uninitialized, substitutes may be unavailableactual-value: #tresult: PASS
test-name: substitutable-path-info when substitutes are turned offlocation: /home/sapientech/Dev/guix/guix_wip/tests/store.scm:235source:+ (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 offlocation: /home/sapientech/Dev/guix/guix_wip/tests/store.scm:248source:+ (test-equal+ "substitutable-paths 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-paths s (list o))))))expected-value: ()actual-value: ()result: PASS
test-name: requisiteslocation: /home/sapientech/Dev/guix/guix_wip/tests/store.scm:261source:+ (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 (= (length x) (length y))+ (lset= 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: #tresult: PASS
test-name: deriverslocation: /home/sapientech/Dev/guix/guix_wip/tests/store.scm:281source:+ (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))))))@ build-started /home/sapientech/Dev/guix/guix_wip/test-tmp/store/v90wk11vk033yirgdz1lwq3j5rharim2-the-thing.drv - x86_64-linux /home/sapientech/Dev/guix/guix_wip/test-tmp/var/log/guix/drvs/v9//0wk11vk033yirgdz1lwq3j5rharim2-the-thing.drv.bz2@ build-succeeded /home/sapientech/Dev/guix/guix_wip/test-tmp/store/v90wk11vk033yirgdz1lwq3j5rharim2-the-thing.drv -actual-value: #tresult: PASS
test-name: topologically-sorted, one itemlocation: /home/sapientech/Dev/guix/guix_wip/tests/store.scm:297source:+ (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: #tresult: PASS
test-name: topologically-sorted, several itemslocation: /home/sapientech/Dev/guix/guix_wip/tests/store.scm:305source:+ (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: #tresult: PASS
test-name: topologically-sorted, more difficultlocation: /home/sapientech/Dev/guix/guix_wip/tests/store.scm:314source:+ (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= string=? s1 s3)))))actual-value: #tresult: PASS
test-name: current-build-output-port, UTF-8location: /home/sapientech/Dev/guix/guix_wip/tests/store.scm:338source:+ (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\u2019s a Greek letter: \u03bb.")+ (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\u2019s a Greek letter: \u03bb."))actual-value: 231result: PASS
test-name: current-build-output-port, UTF-8 + garbagelocation: /home/sapientech/Dev/guix/guix_wip/tests/store.scm:354source:+ (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: \u03bb\n"))+ #:guile-for-build+ (package-derivation %store %bootstrap-guile))))+ (guard (c ((nix-protocol-error? c) #t))+ (build-derivations %store (list d))))))))+ "garbage: ?lambda: \u03bb"))actual-value: 231result: PASS
test-name: log-file, derivationlocation: /home/sapientech/Dev/guix/guix_wip/tests/store.scm:374source:+ (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+ `(("foo" unquote (random-text)))+ #:inputs+ `((,b) (,s)))))+ (and (build-derivations %store (list d))+ (file-exists?+ (pk (log-file %store (derivation-file-name d)))))))@ build-started /home/sapientech/Dev/guix/guix_wip/test-tmp/store/rhr8cv3lsaggxr61wc87j2gji63fg5dg-the-thing.drv - x86_64-linux /home/sapientech/Dev/guix/guix_wip/test-tmp/var/log/guix/drvs/rh//r8cv3lsaggxr61wc87j2gji63fg5dg-the-thing.drv.bz2@ build-succeeded /home/sapientech/Dev/guix/guix_wip/test-tmp/store/rhr8cv3lsaggxr61wc87j2gji63fg5dg-the-thing.drv -
;;; ("/home/sapientech/Dev/guix/guix_wip/test-tmp/var/log/guix/drvs/rh/r8cv3lsaggxr61wc87j2gji63fg5dg-the-thing.drv.bz2")actual-value: #tresult: PASS
test-name: log-file, output file namelocation: /home/sapientech/Dev/guix/guix_wip/tests/store.scm:386source:+ (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=?+ (log-file %store (derivation-file-name d))+ (log-file %store o)))))@ build-started /home/sapientech/Dev/guix/guix_wip/test-tmp/store/fraav0ksxx6cj46x708wp3vqfr6n81p3-the-thing.drv - x86_64-linux /home/sapientech/Dev/guix/guix_wip/test-tmp/var/log/guix/drvs/fr//aav0ksxx6cj46x708wp3vqfr6n81p3-the-thing.drv.bz2@ build-succeeded /home/sapientech/Dev/guix/guix_wip/test-tmp/store/fraav0ksxx6cj46x708wp3vqfr6n81p3-the-thing.drv -
;;; ("/home/sapientech/Dev/guix/guix_wip/test-tmp/var/log/guix/drvs/fr/aav0ksxx6cj46x708wp3vqfr6n81p3-the-thing.drv.bz2")actual-value: #tresult: PASS
test-name: no substituteslocation: /home/sapientech/Dev/guix/guix_wip/tests/store.scm:401source:+ (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: #tresult: PASS
test-name: build-things with output pathlocation: /home/sapientech/Dev/guix/guix_wip/tests/store.scm:412source:+ (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: #tresult: PASS
test-name: substitute querylocation: /home/sapientech/Dev/guix/guix_wip/tests/store.scm:432source:+ (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)))+ (((? substitutable? s))+ (and (string=?+ (substitutable-deriver s)+ (derivation-file-name d))+ (null? (substitutable-references s))+ (equal? (substitutable-nar-size s) 1234)))))))))substitute: warning: authentication and authorization of substitutes disabled!substitute: guix substitute: warning: ACL for archive imports seems to be uninitialized, substitutes may be unavailable
;;; (spi (#<<substitutable> path: "/home/sapientech/Dev/guix/guix_wip/test-tmp/store/0vxgvlx03qscrds88s65hrs70n5jkw2g-guile-bootstrap-2.0" deriver: "/home/sapientech/Dev/guix/guix_wip/test-tmp/store/bjihchailclirz3310dqypibjg0happm-guile-bootstrap-2.0.drv" refs: () dl-size: 0 nar-size: 1234>))actual-value: #tresult: PASS
test-name: substitute query, alternating URLslocation: /home/sapientech/Dev/guix/guix_wip/tests/store.scm:456source:+ (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)))))))substitute: warning: authentication and authorization of substitutes disabled!substitute: guix substitute: warning: ACL for archive imports seems to be uninitialized, substitutes may be unavailablesubstitute: warning: authentication and authorization of substitutes disabled!substitute: guix substitute: warning: ACL for archive imports seems to be uninitialized, substitutes may be unavailablesubstitute: Backtrace:substitute: In ice-9/boot-9.scm:substitute: 157: 9 [catch #t #<catch-closure 1c08740> ...]substitute: In unknown file:substitute: ?: 8 [apply-smob/1 #<catch-closure 1c08740>]substitute: In ice-9/boot-9.scm:substitute: 63: 7 [call-with-prompt prompt0 ...]substitute: In ice-9/eval.scm:substitute: 432: 6 [eval # #]substitute: In ice-9/boot-9.scm:substitute: 2401: 5 [save-module-excursion #<procedure 1c26940 at ice-9/boot-9.scm:4045:3 ()>]substitute: 4050: 4 [#<procedure 1c26940 at ice-9/boot-9.scm:4045:3 ()>]substitute: 1724: 3 [%start-stack load-stack ...]substitute: 1729: 2 [#<procedure 1c3dea0 ()>]substitute: In unknown file:substitute: ?: 1 [primitive-load "/home/sapientech/Dev/guix/guix_wip/scripts/guix"]substitute: In guix/ui.scm:substitute: 1209: 0 [run-guix-command substitute "--query"]substitute: substitute: guix/ui.scm:1209:6: In procedure run-guix-command:substitute: guix/ui.scm:1209:6: unmatched line "<html><head><meta http-equiv=\"refresh\" content=\"0;url=http://www.dnsrsearch.com/index.php?origURL=http://does-not-exist/nix-cache-info&bc=\"/ /head body script type=\"text/javascript\" window.location=\"http://www.dnsrsearch.com/index.php?origURL=\"+escape(window.location)+\"&r=\"+escape(document.referrer)+\"&bc=\"; /script /body /html "actual-value: #factual-error:+ (srfi-34+ #<condition &nix-protocol-error [message: "substituter `substitute' died unexpectedly" status: 1] 3e10540>)result: FAIL
test-name: substitutelocation: /home/sapientech/Dev/guix/guix_wip/tests/store.scm:488source:+ (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)))))))substitute: warning: authentication and authorization of substitutes disabled!substitute: guix substitute: warning: ACL for archive imports seems to be uninitialized, substitutes may be unavailable@ substituter-started /home/sapientech/Dev/guix/guix_wip/test-tmp/store/9m7hnf6014kkxv5s5blpc2vj1q02i5iw-substitute-me /home/sapientech/Dev/guix/guix_wip/nix/scripts/substitutewarning: authentication and authorization of substitutes disabled!guix substitute: warning: ACL for archive imports seems to be uninitialized, substitutes may be unavailableDownloading /home/sapientech/Dev/guix/guix_wip/test-tmp/store/9m7hnf6014kkxv5s5blpc2vj1q02i5iw-substitute-me (1KiB installed)...
 example.nar 176B 0B/s 00:00 [####################] 100.0%@ substituter-succeeded /home/sapientech/Dev/guix/guix_wip/test-tmp/store/9m7hnf6014kkxv5s5blpc2vj1q02i5iw-substitute-meactual-value: #tresult: PASS
test-name: substitute + build-things with output pathlocation: /home/sapientech/Dev/guix/guix_wip/tests/store.scm:507source:+ (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)))+ (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)))))))substitute: warning: authentication and authorization of substitutes disabled!substitute: guix substitute: warning: ACL for archive imports seems to be uninitialized, substitutes may be unavailable@ substituter-started /home/sapientech/Dev/guix/guix_wip/test-tmp/store/np2fa5ssidgms7n82jiz1rdnpsarvi8m-substitute-me /home/sapientech/Dev/guix/guix_wip/nix/scripts/substitutewarning: authentication and authorization of substitutes disabled!guix substitute: warning: ACL for archive imports seems to be uninitialized, substitutes may be unavailableDownloading /home/sapientech/Dev/guix/guix_wip/test-tmp/store/np2fa5ssidgms7n82jiz1rdnpsarvi8m-substitute-me (1KiB installed)...
 example.nar 176B 0B/s 00:00 [####################] 100.0%@ substituter-succeeded /home/sapientech/Dev/guix/guix_wip/test-tmp/store/np2fa5ssidgms7n82jiz1rdnpsarvi8m-substitute-meactual-value: #tresult: PASS
test-name: substitute, corrupt output hashlocation: /home/sapientech/Dev/guix/guix_wip/tests/store.scm:527source:+ (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 => (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))))))substitute: warning: authentication and authorization of substitutes disabled!substitute: guix substitute: warning: ACL for archive imports seems to be uninitialized, substitutes may be unavailable@ substituter-started /home/sapientech/Dev/guix/guix_wip/test-tmp/store/bmdlmicms7mw571siq7gsjip4as64586-corrupt-substitute /home/sapientech/Dev/guix/guix_wip/nix/scripts/substitutewarning: authentication and authorization of substitutes disabled!guix substitute: warning: ACL for archive imports seems to be uninitialized, substitutes may be unavailableDownloading /home/sapientech/Dev/guix/guix_wip/test-tmp/store/bmdlmicms7mw571siq7gsjip4as64586-corrupt-substitute (1KiB installed)...
 example.nar 128B 0B/s 00:00 [####################] 100.0%@ substituter-failed /home/sapientech/Dev/guix/guix_wip/test-tmp/store/bmdlmicms7mw571siq7gsjip4as64586-corrupt-substitute 0 hash mismatch in downloaded path `/home/sapientech/Dev/guix/guix_wip/test-tmp/store/bmdlmicms7mw571siq7gsjip4as64586-corrupt-substitute': expected 0000000000000000000000000000000000000000000000000000000000000000, got b8f73a6eb280e63169b1de2a5b5e154676fe1ada685f1e5c7183cbb2c1dcd535
;;; (corrupt #<condition &nix-protocol-error [message: "some substitutes for the outputs of derivation `/home/sapientech/Dev/guix/guix_wip/test-tmp/store/yp3pfg2510b5dm7ilsl1nrry1j5q3ww3-corrupt-substitute.drv' failed (usually happens due to networking issues); try `--fallback' to build derivation from source " status: 1] 2f87840>)actual-value: #tresult: PASS
test-name: substitute --fallbacklocation: /home/sapientech/Dev/guix/guix_wip/tests/store.scm:557source:+ (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))))))substitute: warning: authentication and authorization of substitutes disabled!substitute: guix substitute: warning: ACL for archive imports seems to be uninitialized, substitutes may be unavailable@ substituter-started /home/sapientech/Dev/guix/guix_wip/test-tmp/store/mkppidiyv2nwgq5d7gywffzd3l7zvk02-substitute-me-not /home/sapientech/Dev/guix/guix_wip/nix/scripts/substitutewarning: authentication and authorization of substitutes disabled!guix substitute: warning: ACL for archive imports seems to be uninitialized, substitutes may be unavailableDownloading /home/sapientech/Dev/guix/guix_wip/test-tmp/store/mkppidiyv2nwgq5d7gywffzd3l7zvk02-substitute-me-not (1KiB installed)...guix substitute: error: open-file: No such file or directory: "/home/sapientech/Dev/guix/guix_wip/test-tmp/var/11072/substituter-data/example.nar"@ substituter-failed /home/sapientech/Dev/guix/guix_wip/test-tmp/store/mkppidiyv2nwgq5d7gywffzd3l7zvk02-substitute-me-not 256 fetching path `/home/sapientech/Dev/guix/guix_wip/test-tmp/store/mkppidiyv2nwgq5d7gywffzd3l7zvk02-substitute-me-not' failed with exit code 1@ substituter-started /home/sapientech/Dev/guix/guix_wip/test-tmp/store/mkppidiyv2nwgq5d7gywffzd3l7zvk02-substitute-me-not /home/sapientech/Dev/guix/guix_wip/nix/scripts/substitutewarning: authentication and authorization of substitutes disabled!guix substitute: warning: ACL for archive imports seems to be uninitialized, substitutes may be unavailableDownloading /home/sapientech/Dev/guix/guix_wip/test-tmp/store/mkppidiyv2nwgq5d7gywffzd3l7zvk02-substitute-me-not (1KiB installed)...guix substitute: error: open-file: No such file or directory: "/home/sapientech/Dev/guix/guix_wip/test-tmp/var/11072/substituter-data/example.nar"@ substituter-failed /home/sapientech/Dev/guix/guix_wip/test-tmp/store/mkppidiyv2nwgq5d7gywffzd3l7zvk02-substitute-me-not 256 fetching path `/home/sapientech/Dev/guix/guix_wip/test-tmp/store/mkppidiyv2nwgq5d7gywffzd3l7zvk02-substitute-me-not' failed with exit code 1@ build-started /home/sapientech/Dev/guix/guix_wip/test-tmp/store/5gni6qwzkn84rzf3zyg83pwgnh1y26mr-substitute-me-not.drv - x86_64-linux /home/sapientech/Dev/guix/guix_wip/test-tmp/var/log/guix/drvs/5g//ni6qwzkn84rzf3zyg83pwgnh1y26mr-substitute-me-not.drv.bz2@ build-succeeded /home/sapientech/Dev/guix/guix_wip/test-tmp/store/5gni6qwzkn84rzf3zyg83pwgnh1y26mr-substitute-me-not.drv -actual-value: #tresult: PASS
test-name: export/import several pathslocation: /home/sapientech/Dev/guix/guix_wip/tests/store.scm:589source:+ (test-assert+ "export/import several paths"+ (let* ((texts (unfold+ (cut >= <> 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 <>))))+ (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)))))))finding garbage collector roots...deleting unused links...actual-value: #tresult: PASS
test-name: export/import paths, ensure topological orderlocation: /home/sapientech/Dev/guix/guix_wip/tests/store.scm:609source:+ (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=? 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)))))))finding garbage collector roots...deleting unused links...actual-value: #tresult: PASS
test-name: export/import incompletelocation: /home/sapientech/Dev/guix/guix_wip/tests/store.scm:631source:+ (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)))))finding garbage collector roots...deleting unused links...actual-value: 97result: PASS
test-name: export/import recursivelocation: /home/sapientech/Dev/guix/guix_wip/tests/store.scm:648source:+ (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))+ (equal? (list file0) (references %store file1))+ (equal? (list file1) (references %store file2))))))finding garbage collector roots...deleting unused links...actual-value: #tresult: PASS
test-name: write-file & export-path yield the same resultlocation: /home/sapientech/Dev/guix/guix_wip/tests/store.scm:664source:+ (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 >= <> 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)))+ (>>= (item-info item)+ (lambda (info)+ (return+ (and result+ (bytevector=?+ (path-info-hash info)+ ref-hash))))))+ #t+ (list out1 out2))))+ #:guile-for-build+ (%guile-for-build)))@ build-started /home/sapientech/Dev/guix/guix_wip/test-tmp/store/dfxcp3x2qxk908lrmd58zgwalqapacnr-bunch.drv - x86_64-linux /home/sapientech/Dev/guix/guix_wip/test-tmp/var/log/guix/drvs/df//xcp3x2qxk908lrmd58zgwalqapacnr-bunch.drv.bz2@ build-succeeded /home/sapientech/Dev/guix/guix_wip/test-tmp/store/dfxcp3x2qxk908lrmd58zgwalqapacnr-bunch.drv -actual-value: #tresult: PASS
test-name: import corrupt pathlocation: /home/sapientech/Dev/guix/guix_wip/tests/store.scm:730source:+ (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 (quotient (bytevector-length dump) 4))+ (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)))))finding garbage collector roots...deleting unused links...
;;; (c #<condition &nix-protocol-error [message: "signed hash doesn't match actual contents of imported archive; archive could be corrupt, or someone is trying to import a Trojan horse" status: 1] 3550660>)actual-value: 80result: PASS
test-name: register-pathlocation: /home/sapientech/Dev/guix/guix_wip/tests/store.scm:753source:+ (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))))))finding garbage collector roots...deleting unused links...actual-value: #tresult: PASS
test-name: verify-storelocation: /home/sapientech/Dev/guix/guix_wip/tests/store.scm:773source:+ (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))))))reading the Nix store...
;;; (verify1 #t)reading the Nix store...path `/home/sapientech/Dev/guix/guix_wip/test-tmp/store/b2x6jn5drxda6ym1kbwyqfjhdn3qr4xc-foo' disappeared, but it still has valid referrers!
;;; (verify2 #f)reading the Nix store...
;;; (verify3 #t)actual-value: #tresult: PASS
test-name: verify-store + check-contentslocation: /home/sapientech/Dev/guix/guix_wip/tests/store.scm:790source:+ (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)))))))substitute: warning: authentication and authorization of substitutes disabled!substitute: guix substitute: warning: ACL for archive imports seems to be uninitialized, substitutes may be unavailablefetching path `/home/sapientech/Dev/guix/guix_wip/test-tmp/store/1x27y6gc0pxd2z6731c3nlfmnkpsnjlz-corrupt'...warning: authentication and authorization of substitutes disabled!guix substitute: warning: ACL for archive imports seems to be uninitialized, substitutes may be unavailableDownloading /home/sapientech/Dev/guix/guix_wip/test-tmp/store/1x27y6gc0pxd2z6731c3nlfmnkpsnjlz-corrupt (1KiB installed)...
 example.nar 176B 0B/s 00:00 [####################] 100.0%reading the Nix store...checking path existence...checking hashes...reading the Nix store...checking path existence...checking hashes...path `/home/sapientech/Dev/guix/guix_wip/test-tmp/store/1x27y6gc0pxd2z6731c3nlfmnkpsnjlz-corrupt' was modified! expected hash `03b9a1aa33de49627f23936e1d4298f852a8b2df398441ffcef3a1e9a0dbda19', got `e09c480e2e93336cd3c45aa129f81a0d7ba56c410b849d7779a8136074413b3d'finding garbage collector roots...removing stale temporary roots file `/home/sapientech/Dev/guix/guix_wip/test-tmp/var/11072/temproots/11405'deleting `/home/sapientech/Dev/guix/guix_wip/test-tmp/store/1x27y6gc0pxd2z6731c3nlfmnkpsnjlz-corrupt'deleting `/home/sapientech/Dev/guix/guix_wip/test-tmp/store/trash'deleting unused links...note: currently hard linking saves 26.30 MiBactual-value: (/home/sapientech/Dev/guix/guix_wip/test-tmp/store/1x27y6gc0pxd2z6731c3nlfmnkpsnjlz-corrupt)result: PASS
test-name: build-things, check modelocation: /home/sapientech/Dev/guix/guix_wip/tests/store.scm:827source:+ (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+ (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))))))))substitute: warning: authentication and authorization of substitutes disabled!substitute: guix substitute: warning: ACL for archive imports seems to be uninitialized, substitutes may be unavailablebuilding path(s) `/home/sapientech/Dev/guix/guix_wip/test-tmp/store/3k339gx6rl9lsa74p4il7yvfi1jiv8xh-non-deterministic'checking path(s) `/home/sapientech/Dev/guix/guix_wip/test-tmp/store/3k339gx6rl9lsa74p4il7yvfi1jiv8xh-non-deterministic'warning: rewriting hashes in `/home/sapientech/Dev/guix/guix_wip/test-tmp/store/3k339gx6rl9lsa74p4il7yvfi1jiv8xh-non-deterministic'; cross fingers
;;; (determinism-exception #<condition &nix-protocol-error [message: "derivation `/home/sapientech/Dev/guix/guix_wip/test-tmp/store/xdxb5hy9syb2y0r65bj5fz7yg8bn80g9-non-deterministic.drv' may not be deterministic: output `/home/sapientech/Dev/guix/guix_wip/test-tmp/store/3k339gx6rl9lsa74p4il7yvfi1jiv8xh-non-deterministic' differs" status: 1] 47cf450>)actual-value: 99result: PASS
test-name: build multiple timeslocation: /home/sapientech/Dev/guix/guix_wip/tests/store.scm:864source:+ (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))))))@ build-started /home/sapientech/Dev/guix/guix_wip/test-tmp/store/yvsdm01vn5yzikz2lpz5hyrxq6av9mdx-non-deterministic.drv - x86_64-linux /home/sapientech/Dev/guix/guix_wip/test-tmp/var/log/guix/drvs/yv//sdm01vn5yzikz2lpz5hyrxq6av9mdx-non-deterministic.drv.bz2@ build-started /home/sapientech/Dev/guix/guix_wip/test-tmp/store/yvsdm01vn5yzikz2lpz5hyrxq6av9mdx-non-deterministic.drv - x86_64-linux /home/sapientech/Dev/guix/guix_wip/test-tmp/var/log/guix/drvs/yv//sdm01vn5yzikz2lpz5hyrxq6av9mdx-non-deterministic.drv.bz2output ?/home/sapientech/Dev/guix/guix_wip/test-tmp/store/8l03iryrwim00ydbifhfja8cgi8fyc8c-non-deterministic? of ?/home/sapientech/Dev/guix/guix_wip/test-tmp/store/yvsdm01vn5yzikz2lpz5hyrxq6av9mdx-non-deterministic.drv? differs from previous round@ build-failed /home/sapientech/Dev/guix/guix_wip/test-tmp/store/yvsdm01vn5yzikz2lpz5hyrxq6av9mdx-non-deterministic.drv - 1 output ?/home/sapientech/Dev/guix/guix_wip/test-tmp/store/8l03iryrwim00ydbifhfja8cgi8fyc8c-non-deterministic? of ?/home/sapientech/Dev/guix/guix_wip/test-tmp/store/yvsdm01vn5yzikz2lpz5hyrxq6av9mdx-non-deterministic.drv? differs from previous round
;;; (multiple-build #<condition &nix-protocol-error [message: "build of `/home/sapientech/Dev/guix/guix_wip/test-tmp/store/yvsdm01vn5yzikz2lpz5hyrxq6av9mdx-non-deterministic.drv' failed" status: 1] 4526f30>)actual-value: 97result: PASS
test-name: store-lowerlocation: /home/sapientech/Dev/guix/guix_wip/tests/store.scm:902source:+ (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-systemlocation: /home/sapientech/Dev/guix/guix_wip/tests/store.scm:908source:+ (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: baractual-value: barresult: PASS
test-name: query-path-infolocation: /home/sapientech/Dev/guix/guix_wip/tests/store.scm:917source:+ (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: #tresult: PASS
test-name: path-info-deriverlocation: /home/sapientech/Dev/guix/guix_wip/tests/store.scm:927source:+ (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=?+ (derivation-file-name d)+ (path-info-deriver (query-path-info %store o))))))@ build-started /home/sapientech/Dev/guix/guix_wip/test-tmp/store/9n78vph0n1dn1fwxfnkn7apqv6afpff7-the-thing.drv - x86_64-linux /home/sapientech/Dev/guix/guix_wip/test-tmp/var/log/guix/drvs/9n//78vph0n1dn1fwxfnkn7apqv6afpff7-the-thing.drv.bz2@ build-succeeded /home/sapientech/Dev/guix/guix_wip/test-tmp/store/9n78vph0n1dn1fwxfnkn7apqv6afpff7-the-thing.drv -actual-value: #tresult: PASS

SKIP: tests/gexp================
test-name: no refslocation: /home/sapientech/Dev/guix/guix_wip/tests/gexp.scm:71source:+ (test-equal+ "no refs"+ '(display "hello!")+ (let ((exp (gexp (display "hello!"))))+ (and (gexp? exp)+ (null? (gexp-inputs exp))+ (gexp->sexp* exp))))expected-value: (display hello!)actual-value: (display hello!)result: PASS
test-name: unquotelocation: /home/sapientech/Dev/guix/guix_wip/tests/gexp.scm:78source:+ (test-equal+ "unquote"+ '(display `(foo ,(+ 2 3)))+ (let ((exp (gexp (display `(foo ,(+ 2 3))))))+ (and (gexp? exp)+ (null? (gexp-inputs exp))+ (gexp->sexp* exp))))expected-value: (display (quasiquote (foo (unquote (+ 2 3)))))actual-value: (display (quasiquote (foo (unquote (+ 2 3)))))result: PASS
test-name: one input packagelocation: /home/sapientech/Dev/guix/guix_wip/tests/gexp.scm:85source:+ (test-assert+ "one input package"+ (let ((exp (gexp (display (ungexp coreutils)))))+ (and (gexp? exp)+ (match (gexp-inputs exp)+ (((p "out")) (eq? p coreutils)))+ (equal?+ `(display+ ,(derivation->output-path+ (package-derivation %store coreutils)))+ (gexp->sexp* exp)))))actual-value: #tresult: PASS
test-name: one input originlocation: /home/sapientech/Dev/guix/guix_wip/tests/gexp.scm:95source:+ (test-assert+ "one input origin"+ (let ((exp (gexp (display (ungexp (package-source coreutils))))))+ (and (gexp? exp)+ (match (gexp-inputs exp)+ (((o "out")) (eq? o (package-source coreutils))))+ (equal?+ `(display+ ,(derivation->output-path+ (package-source-derivation+ %store+ (package-source coreutils))))+ (gexp->sexp* exp)))))actual-value: #tresult: PASS
test-name: one local filelocation: /home/sapientech/Dev/guix/guix_wip/tests/gexp.scm:106source:+ (test-assert+ "one local file"+ (let* ((file (search-path %load-path "guix.scm"))+ (local (local-file file))+ (exp (gexp (display (ungexp local))))+ (intd (add-to-store+ %store+ (basename file)+ #f+ "sha256"+ file)))+ (and (gexp? exp)+ (match (gexp-inputs exp)+ (((x "out")) (eq? x local)))+ (equal? `(display ,intd) (gexp->sexp* exp)))))actual-value: #tresult: PASS
test-name: one local file, symlinklocation: /home/sapientech/Dev/guix/guix_wip/tests/gexp.scm:118source:+ (test-assert+ "one local file, symlink"+ (let ((file (search-path %load-path "guix.scm"))+ (link (tmpnam)))+ (dynamic-wind+ (const #t)+ (lambda ()+ (symlink (canonicalize-path file) link)+ (let* ((local (local-file link "my-file" #:recursive? #f))+ (exp (gexp (display (ungexp local))))+ (intd (add-to-store %store "my-file" #f "sha256" file)))+ (and (gexp? exp)+ (match (gexp-inputs exp)+ (((x "out")) (eq? x local)))+ (equal? `(display ,intd) (gexp->sexp* exp)))))+ (lambda ()+ (false-if-exception (delete-file link))))))actual-value: #tresult: PASS
test-name: local-file, relative file namelocation: /home/sapientech/Dev/guix/guix_wip/tests/gexp.scm:137source:+ (test-equal+ "local-file, relative file name"+ (canonicalize-path+ (search-path %load-path "guix/base32.scm"))+ (let ((directory+ (dirname+ (search-path+ %load-path+ "guix/build-system/gnu.scm"))))+ (with-directory-excursion+ directory+ (let ((file (local-file "../guix/base32.scm")))+ (local-file-absolute-file-name file)))))expected-value: /home/sapientech/Dev/guix/guix_wip/guix/base32.scmactual-value: /home/sapientech/Dev/guix/guix_wip/guix/base32.scmresult: PASS
test-name: local-file, #:select?location: /home/sapientech/Dev/guix/guix_wip/tests/gexp.scm:145source:+ (test-assert+ "local-file, #:select?"+ (run-with-store+ %store+ (mlet* %store-monad+ ((select?+ ->+ (lambda (file stat)+ (member+ (basename file)+ '("guix.scm" "tests" "gexp.scm"))))+ (file ->+ (local-file+ ".."+ "directory"+ #:recursive?+ #t+ #:select?+ select?))+ (dir (lower-object file)))+ (return+ (and (store-path? dir)+ (equal?+ (scandir dir)+ '("." ".." "guix.scm" "tests"))+ (equal?+ (scandir (string-append dir "/tests"))+ '("." ".." "gexp.scm")))))+ #:guile-for-build+ (%guile-for-build)))actual-value: #tresult: PASS
test-name: one plain filelocation: /home/sapientech/Dev/guix/guix_wip/tests/gexp.scm:160source:+ (test-assert+ "one plain file"+ (let* ((file (plain-file "hi" "Hello, world!"))+ (exp (gexp (display (ungexp file))))+ (expected+ (add-text-to-store %store "hi" "Hello, world!")))+ (and (gexp? exp)+ (match (gexp-inputs exp)+ (((x "out")) (eq? x file)))+ (equal? `(display ,expected) (gexp->sexp* exp)))))actual-value: #tresult: PASS
test-name: same input twicelocation: /home/sapientech/Dev/guix/guix_wip/tests/gexp.scm:170source:+ (test-assert+ "same input twice"+ (let ((exp (gexp (begin+ (display (ungexp coreutils))+ (display (ungexp coreutils))))))+ (and (gexp? exp)+ (match (gexp-inputs exp)+ (((p "out")) (eq? p coreutils)))+ (let ((e `(display+ ,(derivation->output-path+ (package-derivation %store coreutils)))))+ (equal? `(begin ,e ,e) (gexp->sexp* exp))))))actual-value: #tresult: PASS
test-name: two input packages, one derivation, one filelocation: /home/sapientech/Dev/guix/guix_wip/tests/gexp.scm:182source:+ (test-assert+ "two input packages, one derivation, one file"+ (let* ((drv (build-expression->derivation+ %store+ "foo"+ 'bar+ #:guile-for-build+ (package-derivation %store %bootstrap-guile)))+ (txt (add-text-to-store %store "foo" "Hello, world!"))+ (exp (gexp (begin+ (display (ungexp coreutils))+ (display (ungexp %bootstrap-guile))+ (display (ungexp drv))+ (display (ungexp txt))))))+ (define (match-input thing)+ (match-lambda+ ((drv-or-pkg _ ...) (eq? thing drv-or-pkg))))+ (and (gexp? exp)+ (= 4 (length (gexp-inputs exp)))+ (every (lambda (input)+ (find (match-input input) (gexp-inputs exp)))+ (list drv coreutils %bootstrap-guile txt))+ (let ((e0 `(display+ ,(derivation->output-path+ (package-derivation %store coreutils))))+ (e1 `(display+ ,(derivation->output-path+ (package-derivation %store %bootstrap-guile))))+ (e2 `(display ,(derivation->output-path drv)))+ (e3 `(display ,txt)))+ (equal?+ `(begin ,e0 ,e1 ,e2 ,e3)+ (gexp->sexp* exp))))))actual-value: #tresult: PASS
test-name: ungexp + ungexp-nativelocation: /home/sapientech/Dev/guix/guix_wip/tests/gexp.scm:210source:+ (test-assert+ "ungexp + ungexp-native"+ (let* ((exp (gexp (list (ungexp-native %bootstrap-guile)+ (ungexp coreutils)+ (ungexp-native glibc)+ (ungexp binutils))))+ (target "mips64el-linux")+ (guile (derivation->output-path+ (package-derivation %store %bootstrap-guile)))+ (cu (derivation->output-path+ (package-cross-derivation+ %store+ coreutils+ target)))+ (libc (derivation->output-path+ (package-derivation %store glibc)))+ (bu (derivation->output-path+ (package-cross-derivation %store binutils target))))+ (and (lset= equal?+ `((,%bootstrap-guile "out") (,glibc "out"))+ (gexp-native-inputs exp))+ (lset= equal?+ `((,coreutils "out") (,binutils "out"))+ (gexp-inputs exp))+ (equal?+ `(list ,guile ,cu ,libc ,bu)+ (gexp->sexp* exp target)))))actual-value: #tresult: PASS
test-name: ungexp + ungexp-native, nestedlocation: /home/sapientech/Dev/guix/guix_wip/tests/gexp.scm:233source:+ (test-equal+ "ungexp + ungexp-native, nested"+ (list `((,%bootstrap-guile "out"))+ '<>+ `((,coreutils "out")))+ (let* ((exp (gexp (list (ungexp-native (gexp (ungexp coreutils)))+ (ungexp %bootstrap-guile)))))+ (list (gexp-inputs exp)+ '<>+ (gexp-native-inputs exp))))expected-value: (((#<package guile-bootstrap@2.0 gnu/packages/bootstrap.scm:277 1eab0c0> out)) <> ((#<package coreutils@8.24 gnu/packages/base.scm:244 2f1cf00> out)))actual-value: (((#<package guile-bootstrap@2.0 gnu/packages/bootstrap.scm:277 1eab0c0> out)) <> ((#<package coreutils@8.24 gnu/packages/base.scm:244 2f1cf00> out)))result: PASS
test-name: input listlocation: /home/sapientech/Dev/guix/guix_wip/tests/gexp.scm:239source:+ (test-assert+ "input list"+ (let ((exp (gexp (display+ '(ungexp (list %bootstrap-guile coreutils)))))+ (guile (derivation->output-path+ (package-derivation %store %bootstrap-guile)))+ (cu (derivation->output-path+ (package-derivation %store coreutils))))+ (and (lset= equal?+ `((,%bootstrap-guile "out") (,coreutils "out"))+ (gexp-inputs exp))+ (equal?+ `(display '(,guile ,cu))+ (gexp->sexp* exp)))))actual-value: #tresult: PASS
test-name: input list + ungexp-nativelocation: /home/sapientech/Dev/guix/guix_wip/tests/gexp.scm:252source:+ (test-assert+ "input list + ungexp-native"+ (let* ((target "mips64el-linux")+ (exp (gexp (display+ (cons '(ungexp-native+ (list %bootstrap-guile coreutils))+ '(ungexp (list glibc binutils))))))+ (guile (derivation->output-path+ (package-derivation %store %bootstrap-guile)))+ (cu (derivation->output-path+ (package-derivation %store coreutils)))+ (xlibc (derivation->output-path+ (package-cross-derivation %store glibc target)))+ (xbu (derivation->output-path+ (package-cross-derivation %store binutils target))))+ (and (lset= equal?+ `((,%bootstrap-guile "out") (,coreutils "out"))+ (gexp-native-inputs exp))+ (lset= equal?+ `((,glibc "out") (,binutils "out"))+ (gexp-inputs exp))+ (equal?+ `(display (cons '(,guile ,cu) '(,xlibc ,xbu)))+ (gexp->sexp* exp target)))))actual-value: #tresult: PASS
test-name: input list splicinglocation: /home/sapientech/Dev/guix/guix_wip/tests/gexp.scm:274source:+ (test-assert+ "input list splicing"+ (let* ((inputs+ (list (gexp-input glibc "debug")+ %bootstrap-guile))+ (outputs+ (list (derivation->output-path+ (package-derivation %store glibc)+ "debug")+ (derivation->output-path+ (package-derivation %store %bootstrap-guile))))+ (exp (gexp (list (ungexp-splicing (cons (+ 2 3) inputs))))))+ (and (lset= equal?+ `((,glibc "debug") (,%bootstrap-guile "out"))+ (gexp-inputs exp))+ (equal?+ (gexp->sexp* exp)+ `(list ,@(cons 5 outputs))))))actual-value: #tresult: PASS
test-name: input list splicing + ungexp-native-splicinglocation: /home/sapientech/Dev/guix/guix_wip/tests/gexp.scm:288source:+ (test-assert+ "input list splicing + ungexp-native-splicing"+ (let* ((inputs+ (list (gexp-input glibc "debug")+ %bootstrap-guile))+ (exp (gexp (list (ungexp-native-splicing (cons (+ 2 3) inputs))))))+ (and (lset= equal?+ `((,glibc "debug") (,%bootstrap-guile "out"))+ (gexp-native-inputs exp))+ (null? (gexp-inputs exp))+ (equal?+ (gexp->sexp* exp)+ (gexp->sexp* exp "mips64el-linux")))))actual-value: #tresult: PASS
test-name: output listlocation: /home/sapientech/Dev/guix/guix_wip/tests/gexp.scm:298source:+ (test-equal+ "output list"+ 2+ (let ((exp (gexp (begin+ (mkdir (ungexp output))+ (mkdir (ungexp output "bar"))))))+ (length (gexp-outputs exp))))expected-value: 2actual-value: 2result: PASS
test-name: output list, combined gexpslocation: /home/sapientech/Dev/guix/guix_wip/tests/gexp.scm:304source:+ (test-assert+ "output list, combined gexps"+ (let* ((exp0 (gexp (mkdir (ungexp output))))+ (exp1 (gexp (mkdir (ungexp output "foo"))))+ (exp2 (gexp (begin+ (display "hi!")+ (ungexp exp0)+ (ungexp exp1)))))+ (and (lset= equal?+ (append (gexp-outputs exp0) (gexp-outputs exp1))+ (gexp-outputs exp2))+ (= 2 (length (gexp-outputs exp2))))))actual-value: #tresult: PASS
test-name: output list, combined gexps, duplicate outputlocation: /home/sapientech/Dev/guix/guix_wip/tests/gexp.scm:313source:+ (test-equal+ "output list, combined gexps, duplicate output"+ 1+ (let* ((exp0 (gexp (mkdir (ungexp output))))+ (exp1 (gexp (begin (mkdir (ungexp output)) (ungexp exp0))))+ (exp2 (gexp (begin (mkdir (ungexp output)) (ungexp exp1)))))+ (length (gexp-outputs exp2))))expected-value: 1actual-value: 1result: PASS
test-name: output list + ungexp-splicing list, combined gexpslocation: /home/sapientech/Dev/guix/guix_wip/tests/gexp.scm:320source:+ (test-assert+ "output list + ungexp-splicing list, combined gexps"+ (let* ((exp0 (gexp (mkdir (ungexp output))))+ (exp1 (gexp (mkdir (ungexp output "foo"))))+ (exp2 (gexp (begin+ (display "hi!")+ (ungexp-splicing (list exp0 exp1))))))+ (and (lset= equal?+ (append (gexp-outputs exp0) (gexp-outputs exp1))+ (gexp-outputs exp2))+ (= 2 (length (gexp-outputs exp2))))))actual-value: #tresult: PASS
test-name: gexp->filelocation: /home/sapientech/Dev/guix/guix_wip/tests/gexp.scm:330source:+ (test-assert+ "gexp->file"+ (run-with-store+ %store+ (mlet* %store-monad+ ((exp ->+ (gexp (display (ungexp %bootstrap-guile))))+ (guile (package-file %bootstrap-guile))+ (sexp (gexp->sexp exp))+ (drv (gexp->file "foo" exp))+ (out -> (derivation->output-path drv))+ (done (built-derivations (list drv)))+ (refs ((store-lift references) out)))+ (return+ (and (equal? sexp (call-with-input-file out read))+ (equal? (list guile) refs))))+ #:guile-for-build+ (%guile-for-build)))random seed for tests: 1469938558@ build-started /home/sapientech/Dev/guix/guix_wip/test-tmp/store/br6cmbmw2d0y578fhk2041nmjya1xbn3-foo.drv - x86_64-linux /home/sapientech/Dev/guix/guix_wip/test-tmp/var/log/guix/drvs/br//6cmbmw2d0y578fhk2041nmjya1xbn3-foo.drv.bz2@ build-succeeded /home/sapientech/Dev/guix/guix_wip/test-tmp/store/br6cmbmw2d0y578fhk2041nmjya1xbn3-foo.drv -actual-value: #tresult: PASS
test-name: gexp->derivationlocation: /home/sapientech/Dev/guix/guix_wip/tests/gexp.scm:341source:+ (test-assert+ "gexp->derivation"+ (run-with-store+ %store+ (mlet* %store-monad+ ((file (text-file "foo" "Hello, world!"))+ (exp ->+ (gexp (begin+ (mkdir (ungexp output))+ (chdir (ungexp output))+ (symlink+ (string-append+ (ungexp %bootstrap-guile)+ "/bin/guile")+ "foo")+ (symlink (ungexp file) (ungexp output "2nd")))))+ (drv (gexp->derivation "foo" exp))+ (out -> (derivation->output-path drv))+ (out2 -> (derivation->output-path drv "2nd"))+ (done (built-derivations (list drv)))+ (refs ((store-lift references) out))+ (refs2 ((store-lift references) out2))+ (guile (package-file %bootstrap-guile "bin/guile")))+ (return+ (and (string=?+ (readlink (string-append out "/foo"))+ guile)+ (string=? (readlink out2) file)+ (equal? refs (list (dirname (dirname guile))))+ (equal? refs2 (list file)))))+ #:guile-for-build+ (%guile-for-build)))@ build-started /home/sapientech/Dev/guix/guix_wip/test-tmp/store/zmhmw968wgivsjlvw5qw3l2xlq5icaz6-foo.drv - x86_64-linux /home/sapientech/Dev/guix/guix_wip/test-tmp/var/log/guix/drvs/zm//hmw968wgivsjlvw5qw3l2xlq5icaz6-foo.drv.bz2warning: rewriting hashes in `/home/sapientech/Dev/guix/guix_wip/test-tmp/store/pysmjhfk9v7lfq97asqxzn1fxk5rqykr-foo'; cross fingers@ build-succeeded /home/sapientech/Dev/guix/guix_wip/test-tmp/store/zmhmw968wgivsjlvw5qw3l2xlq5icaz6-foo.drv -actual-value: #tresult: PASS
test-name: gexp->derivation vs. graftslocation: /home/sapientech/Dev/guix/guix_wip/tests/gexp.scm:365source:+ (test-assert+ "gexp->derivation vs. grafts"+ (run-with-store+ %store+ (mlet* %store-monad+ ((graft? (set-grafting #f))+ (p0 ->+ (dummy-package+ "dummy"+ (arguments '(#:implicit-inputs? #f))))+ (r -> (package (inherit p0) (name "DuMMY")))+ (p1 -> (package (inherit p0) (replacement r)))+ (exp0 ->+ (gexp (frob (ungexp p0) (ungexp output))))+ (exp1 ->+ (gexp (frob (ungexp p1) (ungexp output))))+ (void (set-guile-for-build %bootstrap-guile))+ (drv0 (gexp->derivation "t" exp0 #:graft? #t))+ (drv1 (gexp->derivation "t" exp1 #:graft? #t))+ (drv1* (gexp->derivation "t" exp1 #:graft? #f))+ (_ (set-grafting graft?)))+ (return+ (and (not (string=?+ (derivation->output-path drv0)+ (derivation->output-path drv1)))+ (string=?+ (derivation->output-path drv0)+ (derivation->output-path drv1*)))))+ #:guile-for-build+ (%guile-for-build)))actual-value: #tresult: PASS
test-name: gexp->derivation, composed gexpslocation: /home/sapientech/Dev/guix/guix_wip/tests/gexp.scm:384source:+ (test-assert+ "gexp->derivation, composed gexps"+ (run-with-store+ %store+ (mlet* %store-monad+ ((exp0 ->+ (gexp (begin+ (mkdir (ungexp output))+ (chdir (ungexp output)))))+ (exp1 ->+ (gexp (symlink+ (string-append+ (ungexp %bootstrap-guile)+ "/bin/guile")+ "foo")))+ (exp ->+ (gexp (begin (ungexp exp0) (ungexp exp1))))+ (drv (gexp->derivation "foo" exp))+ (out -> (derivation->output-path drv))+ (done (built-derivations (list drv)))+ (guile (package-file %bootstrap-guile "bin/guile")))+ (return+ (string=?+ (readlink (string-append out "/foo"))+ guile)))+ #:guile-for-build+ (%guile-for-build)))@ build-started /home/sapientech/Dev/guix/guix_wip/test-tmp/store/d7a8qlyp2svnz3ayq1g38bx4lcymb4h6-foo.drv - x86_64-linux /home/sapientech/Dev/guix/guix_wip/test-tmp/var/log/guix/drvs/d7//a8qlyp2svnz3ayq1g38bx4lcymb4h6-foo.drv.bz2@ build-succeeded /home/sapientech/Dev/guix/guix_wip/test-tmp/store/d7a8qlyp2svnz3ayq1g38bx4lcymb4h6-foo.drv -actual-value: #tresult: PASS
test-name: gexp->derivation, default systemlocation: /home/sapientech/Dev/guix/guix_wip/tests/gexp.scm:400source:+ (test-assert+ "gexp->derivation, default system"+ (run-with-store+ %store+ (let ((system (%current-system))+ (mdrv (parameterize+ ((%current-system "foobar64-linux"))+ (gexp->derivation+ "foo"+ (gexp (mkdir (ungexp output)))))))+ (mlet %store-monad+ ((drv mdrv))+ (return+ (string=? system (derivation-system drv)))))+ #:guile-for-build+ (%guile-for-build)))actual-value: #tresult: PASS
test-name: gexp->derivation, local-filelocation: /home/sapientech/Dev/guix/guix_wip/tests/gexp.scm:411source:+ (test-assert+ "gexp->derivation, local-file"+ (run-with-store+ %store+ (mlet* %store-monad+ ((file -> (search-path %load-path "guix.scm"))+ (intd (interned-file file #:recursive? #f))+ (local -> (local-file file))+ (exp ->+ (gexp (begin+ (stat (ungexp local))+ (symlink (ungexp local) (ungexp output)))))+ (drv (gexp->derivation "local-file" exp)))+ (mbegin+ %store-monad+ (built-derivations (list drv))+ (return+ (string=?+ (readlink (derivation->output-path drv))+ intd))))+ #:guile-for-build+ (%guile-for-build)))actual-value: #tresult: PASS
test-name: gexp->derivation, cross-compilationlocation: /home/sapientech/Dev/guix/guix_wip/tests/gexp.scm:425source:+ (test-assert+ "gexp->derivation, cross-compilation"+ (run-with-store+ %store+ (mlet* %store-monad+ ((target -> "mips64el-linux")+ (exp ->+ (gexp (list (ungexp coreutils) (ungexp output))))+ (xdrv (gexp->derivation "foo" exp #:target target))+ (refs ((store-lift references)+ (derivation-file-name xdrv)))+ (xcu (package->cross-derivation coreutils target))+ (cu (package->derivation coreutils)))+ (return+ (and (member (derivation-file-name xcu) refs)+ (not (member (derivation-file-name cu) refs)))))+ #:guile-for-build+ (%guile-for-build)))actual-value: #tresult: PASS
test-name: gexp->derivation, ungexp-nativelocation: /home/sapientech/Dev/guix/guix_wip/tests/gexp.scm:439source:+ (test-assert+ "gexp->derivation, ungexp-native"+ (run-with-store+ %store+ (mlet* %store-monad+ ((target -> "mips64el-linux")+ (exp ->+ (gexp (list (ungexp-native coreutils) (ungexp output))))+ (xdrv (gexp->derivation "foo" exp #:target target))+ (drv (gexp->derivation "foo" exp)))+ (return+ (string=?+ (derivation-file-name drv)+ (derivation-file-name xdrv))))+ #:guile-for-build+ (%guile-for-build)))actual-value: #tresult: PASS
test-name: gexp->derivation, ungexp + ungexp-nativelocation: /home/sapientech/Dev/guix/guix_wip/tests/gexp.scm:449source:+ (test-assert+ "gexp->derivation, ungexp + ungexp-native"+ (run-with-store+ %store+ (mlet* %store-monad+ ((target -> "mips64el-linux")+ (exp ->+ (gexp (list (ungexp-native coreutils)+ (ungexp glibc)+ (ungexp output))))+ (xdrv (gexp->derivation "foo" exp #:target target))+ (refs ((store-lift references)+ (derivation-file-name xdrv)))+ (xglibc (package->cross-derivation glibc target))+ (cu (package->derivation coreutils)))+ (return+ (and (member (derivation-file-name cu) refs)+ (member (derivation-file-name xglibc) refs))))+ #:guile-for-build+ (%guile-for-build)))actual-value: (/home/sapientech/Dev/guix/guix_wip/test-tmp/store/izq9lrpv4z9xaaslk79ayidcv5lisn90-glibc-2.22.drv /home/sapientech/Dev/guix/guix_wip/test-tmp/store/sajnfz79nhdi4l8a464c9hhv4vf0gay2-coreutils-8.24.drv)result: PASS
test-name: gexp->derivation, ungexp-native + composed gexpslocation: /home/sapientech/Dev/guix/guix_wip/tests/gexp.scm:463source:+ (test-assert+ "gexp->derivation, ungexp-native + composed gexps"+ (run-with-store+ %store+ (mlet* %store-monad+ ((target -> "mips64el-linux")+ (exp0 -> (gexp (list 1 2 (ungexp coreutils))))+ (exp -> (gexp (list 0 (ungexp-native exp0))))+ (xdrv (gexp->derivation "foo" exp #:target target))+ (drv (gexp->derivation "foo" exp)))+ (return+ (string=?+ (derivation-file-name drv)+ (derivation-file-name xdrv))))+ #:guile-for-build+ (%guile-for-build)))actual-value: #tresult: PASS
test-name: gexp->derivation, store copylocation: /home/sapientech/Dev/guix/guix_wip/tests/gexp.scm:474source:+ (test-assert+ "gexp->derivation, store copy"+ (run-with-store+ %store+ (let ((build-one+ (gexp (call-with-output-file+ (ungexp output)+ (lambda (port) (display "This is the one." port)))))+ (build-two+ (lambda (one)+ (gexp (begin+ (mkdir (ungexp output))+ (symlink+ (ungexp one)+ (string-append (ungexp output) "/one"))+ (call-with-output-file+ (string-append (ungexp output) "/two")+ (lambda (port)+ (display "This is the second one." port)))))))+ (build-drv+ (gexp (begin+ (use-modules (guix build store-copy))+ (mkdir (ungexp output))+ (populate-store '("graph") (ungexp output))))))+ (mlet* %store-monad+ ((one (gexp->derivation "one" build-one))+ (two (gexp->derivation "two" (build-two one)))+ (drv (gexp->derivation+ "store-copy"+ build-drv+ #:references-graphs+ `(("graph" ,two))+ #:modules+ '((guix build store-copy) (guix build utils))))+ (ok? (built-derivations (list drv)))+ (out -> (derivation->output-path drv)))+ (let ((one (derivation->output-path one))+ (two (derivation->output-path two)))+ (return+ (and ok?+ (file-exists? (string-append out "/" one))+ (file-exists? (string-append out "/" two))+ (file-exists? (string-append out "/" two "/two"))+ (string=?+ (readlink (string-append out "/" two "/one"))+ one))))))+ #:guile-for-build+ (%guile-for-build)))actual-value: #tresult: PASS
test-name: imported-fileslocation: /home/sapientech/Dev/guix/guix_wip/tests/gexp.scm:509source:+ (test-assert+ "imported-files"+ (run-with-store+ %store+ (mlet* %store-monad+ ((files ->+ `(("x"+ unquote+ (search-path %load-path "ice-9/q.scm"))+ ("a/b/c"+ unquote+ (search-path %load-path "guix/derivations.scm"))+ ("p/q"+ unquote+ (search-path %load-path "guix.scm"))+ ("p/z"+ unquote+ (search-path %load-path "guix/store.scm"))))+ (drv (imported-files files)))+ (mbegin+ %store-monad+ (built-derivations (list drv))+ (let ((dir (derivation->output-path drv)))+ (return+ (every (match-lambda+ ((path . source)+ (equal?+ (call-with-input-file+ (string-append dir "/" path)+ get-bytevector-all)+ (call-with-input-file+ source+ get-bytevector-all))))+ files)))))+ #:guile-for-build+ (%guile-for-build)))actual-value: #tresult: PASS
test-name: gexp-modules & ungexplocation: /home/sapientech/Dev/guix/guix_wip/tests/gexp.scm:529source:+ (test-equal+ "gexp-modules & ungexp"+ '((bar) (foo))+ ((@@ (guix gexp) gexp-modules)+ (gexp (foo (ungexp+ (with-imported-modules '((foo)) (gexp +)))+ (ungexp-native+ (with-imported-modules '((bar)) (gexp -)))))))expected-value: ((bar) (foo))actual-value: ((bar) (foo))result: PASS
test-name: gexp-modules & ungexp-splicinglocation: /home/sapientech/Dev/guix/guix_wip/tests/gexp.scm:535source:+ (test-equal+ "gexp-modules & ungexp-splicing"+ '((foo) (bar))+ ((@@ (guix gexp) gexp-modules)+ (gexp (foo (ungexp-splicing+ (list (with-imported-modules '((foo)) (gexp +))+ (with-imported-modules '((bar)) (gexp -))))))))expected-value: ((foo) (bar))actual-value: ((foo) (bar))result: PASS
test-name: gexp->derivation #:moduleslocation: /home/sapientech/Dev/guix/guix_wip/tests/gexp.scm:541source:+ (test-assert+ "gexp->derivation #:modules"+ (run-with-store+ %store+ (mlet* %store-monad+ ((build ->+ (gexp (begin+ (use-modules (guix build utils))+ (mkdir-p+ (string-append+ (ungexp output)+ "/guile/guix/nix"))+ #t)))+ (drv (gexp->derivation+ "test-with-modules"+ build+ #:modules+ '((guix build utils)))))+ (mbegin+ %store-monad+ (built-derivations (list drv))+ (let* ((p (derivation->output-path drv))+ (s (stat (string-append p "/guile/guix/nix"))))+ (return (eq? (stat:type s) 'directory)))))+ #:guile-for-build+ (%guile-for-build)))actual-value: #tresult: PASS
test-name: gexp->derivation & with-imported-moduleslocation: /home/sapientech/Dev/guix/guix_wip/tests/gexp.scm:555source:+ (test-assert+ "gexp->derivation & with-imported-modules"+ (run-with-store+ %store+ (mlet* %store-monad+ ((build ->+ (with-imported-modules+ '((guix build utils))+ (gexp (begin+ (use-modules (guix build utils))+ (mkdir-p+ (string-append+ (ungexp output)+ "/guile/guix/nix"))+ #t))))+ (drv (gexp->derivation "test-with-modules" build)))+ (mbegin+ %store-monad+ (built-derivations (list drv))+ (let* ((p (derivation->output-path drv))+ (s (stat (string-append p "/guile/guix/nix"))))+ (return (eq? (stat:type s) 'directory)))))+ #:guile-for-build+ (%guile-for-build)))actual-value: #tresult: PASS
test-name: gexp->derivation & nested with-imported-moduleslocation: /home/sapientech/Dev/guix/guix_wip/tests/gexp.scm:570source:+ (test-assert+ "gexp->derivation & nested with-imported-modules"+ (run-with-store+ %store+ (mlet* %store-monad+ ((build1+ ->+ (with-imported-modules+ '((guix build utils))+ (gexp (begin+ (use-modules (guix build utils))+ (mkdir-p+ (string-append (ungexp output) "/guile/guix/nix"))+ #t))))+ (build2+ ->+ (with-imported-modules+ '((guix build bournish))+ (gexp (begin+ (use-modules+ (guix build bournish)+ (system base compile))+ (ungexp-native build1)+ (call-with-output-file+ (string-append (ungexp output) "/b")+ (lambda (port)+ (write (read-and-compile+ (open-input-string "cd /foo")+ #:from+ %bournish-language+ #:to+ 'scheme)+ port)))))))+ (drv (gexp->derivation "test-with-modules" build2)))+ (mbegin+ %store-monad+ (built-derivations (list drv))+ (let* ((p (derivation->output-path drv))+ (s (stat (string-append p "/guile/guix/nix")))+ (b (string-append p "/b")))+ (return+ (and (eq? (stat:type s) 'directory)+ (equal?+ '(chdir "/foo")+ (call-with-input-file b read)))))))+ #:guile-for-build+ (%guile-for-build)))actual-value: #tresult: PASS
test-name: gexp->derivation #:references-graphslocation: /home/sapientech/Dev/guix/guix_wip/tests/gexp.scm:599source:+ (test-assert+ "gexp->derivation #:references-graphs"+ (run-with-store+ %store+ (mlet* %store-monad+ ((one (text-file "one" (random-text)))+ (two (gexp->derivation+ "two"+ (gexp (symlink (ungexp one) (ungexp output "chbouib")))))+ (build ->+ (with-imported-modules+ '((guix build store-copy) (guix build utils))+ (gexp (begin+ (use-modules (guix build store-copy))+ (with-output-to-file+ (ungexp output)+ (lambda ()+ (write (call-with-input-file+ "guile"+ read-reference-graph))))+ (with-output-to-file+ (ungexp output "one")+ (lambda ()+ (write (call-with-input-file+ "one"+ read-reference-graph))))+ (with-output-to-file+ (ungexp output "two")+ (lambda ()+ (write (call-with-input-file+ "two"+ read-reference-graph))))))))+ (drv (gexp->derivation+ "ref-graphs"+ build+ #:references-graphs+ `(("one" ,one)+ ("two" ,two "chbouib")+ ("guile" ,%bootstrap-guile))))+ (ok? (built-derivations (list drv)))+ (guile-drv+ (package->derivation %bootstrap-guile))+ (bash (interned-file+ (search-bootstrap-binary+ "bash"+ (%current-system))+ "bash"+ #:recursive?+ #t))+ (g-one -> (derivation->output-path drv "one"))+ (g-two -> (derivation->output-path drv "two"))+ (g-guile -> (derivation->output-path drv)))+ (return+ (and ok?+ (equal?+ (call-with-input-file g-one read)+ (list one))+ (lset= string=?+ (call-with-input-file g-two read)+ (list one+ (derivation->output-path two "chbouib")))+ (lset= string=?+ (call-with-input-file g-guile read)+ (list (derivation->output-path guile-drv) bash)))))+ #:guile-for-build+ (%guile-for-build)))@ build-started /home/sapientech/Dev/guix/guix_wip/test-tmp/store/gnc6nwd3yi5vdbldw4xvb21hyqypj2qk-two.drv - x86_64-linux /home/sapientech/Dev/guix/guix_wip/test-tmp/var/log/guix/drvs/gn//c6nwd3yi5vdbldw4xvb21hyqypj2qk-two.drv.bz2@ build-succeeded /home/sapientech/Dev/guix/guix_wip/test-tmp/store/gnc6nwd3yi5vdbldw4xvb21hyqypj2qk-two.drv -@ build-started /home/sapientech/Dev/guix/guix_wip/test-tmp/store/drinqd82fbs5xmay5xii7lgivxl6bb1a-ref-graphs.drv - x86_64-linux /home/sapientech/Dev/guix/guix_wip/test-tmp/var/log/guix/drvs/dr//inqd82fbs5xmay5xii7lgivxl6bb1a-ref-graphs.drv.bz2@ build-succeeded /home/sapientech/Dev/guix/guix_wip/test-tmp/store/drinqd82fbs5xmay5xii7lgivxl6bb1a-ref-graphs.drv -actual-value: #tresult: PASS
test-name: gexp->derivation #:allowed-referenceslocation: /home/sapientech/Dev/guix/guix_wip/tests/gexp.scm:643source:+ (test-assert+ "gexp->derivation #:allowed-references"+ (run-with-store+ %store+ (mlet %store-monad+ ((drv (gexp->derivation+ "allowed-refs"+ (gexp (begin+ (mkdir (ungexp output))+ (chdir (ungexp output))+ (symlink (ungexp output) "self")+ (symlink (ungexp %bootstrap-guile) "guile")))+ #:allowed-references+ (list "out" %bootstrap-guile))))+ (built-derivations (list drv)))+ #:guile-for-build+ (%guile-for-build)))@ build-started /home/sapientech/Dev/guix/guix_wip/test-tmp/store/qr3plan0zxv637d52f8kg7picirmdmmc-allowed-refs.drv - x86_64-linux /home/sapientech/Dev/guix/guix_wip/test-tmp/var/log/guix/drvs/qr//3plan0zxv637d52f8kg7picirmdmmc-allowed-refs.drv.bz2@ build-succeeded /home/sapientech/Dev/guix/guix_wip/test-tmp/store/qr3plan0zxv637d52f8kg7picirmdmmc-allowed-refs.drv -actual-value: #tresult: PASS
test-name: gexp->derivation #:allowed-references, specific outputlocation: /home/sapientech/Dev/guix/guix_wip/tests/gexp.scm:655source:+ (test-assert+ "gexp->derivation #:allowed-references, specific output"+ (run-with-store+ %store+ (mlet* %store-monad+ ((in (gexp->derivation+ "thing"+ (gexp (begin+ (mkdir (ungexp output "ok"))+ (mkdir (ungexp output "not-ok"))))))+ (drv (gexp->derivation+ "allowed-refs"+ (gexp (begin+ (pk (ungexp in "not-ok"))+ (mkdir (ungexp output))+ (chdir (ungexp output))+ (symlink (ungexp output) "self")+ (symlink (ungexp in "ok") "ok")))+ #:allowed-references+ (list "out" (gexp-input in "ok")))))+ (built-derivations (list drv)))+ #:guile-for-build+ (%guile-for-build)))actual-value: #tresult: PASS
test-name: gexp->derivation #:allowed-references, disallowedlocation: /home/sapientech/Dev/guix/guix_wip/tests/gexp.scm:672source:+ (test-assert+ "gexp->derivation #:allowed-references, disallowed"+ (let ((drv (run-with-store+ %store+ (gexp->derivation+ "allowed-refs"+ (gexp (begin+ (mkdir (ungexp output))+ (chdir (ungexp output))+ (symlink (ungexp %bootstrap-guile) "guile")))+ #:allowed-references+ '()))))+ (guard (c ((nix-protocol-error? c) #t))+ (build-derivations %store (list drv))+ #f)))@ build-started /home/sapientech/Dev/guix/guix_wip/test-tmp/store/f2wbs6skpgnmljv4cddzx05gcx26b6n5-allowed-refs.drv - x86_64-linux /home/sapientech/Dev/guix/guix_wip/test-tmp/var/log/guix/drvs/f2//wbs6skpgnmljv4cddzx05gcx26b6n5-allowed-refs.drv.bz2output (`/home/sapientech/Dev/guix/guix_wip/test-tmp/store/ilzqy6rrlwdwsa939k1z5maipa1g202i-allowed-refs') is not allowed to refer to path `/home/sapientech/Dev/guix/guix_wip/test-tmp/store/0vxgvlx03qscrds88s65hrs70n5jkw2g-guile-bootstrap-2.0'@ build-failed /home/sapientech/Dev/guix/guix_wip/test-tmp/store/f2wbs6skpgnmljv4cddzx05gcx26b6n5-allowed-refs.drv - 1 output (`/home/sapientech/Dev/guix/guix_wip/test-tmp/store/ilzqy6rrlwdwsa939k1z5maipa1g202i-allowed-refs') is not allowed to refer to path `/home/sapientech/Dev/guix/guix_wip/test-tmp/store/0vxgvlx03qscrds88s65hrs70n5jkw2g-guile-bootstrap-2.0'actual-value: #tresult: PASS
test-name: gexp->derivation #:disallowed-references, allowedlocation: /home/sapientech/Dev/guix/guix_wip/tests/gexp.scm:684source:+ (test-assert+ "gexp->derivation #:disallowed-references, allowed"+ (run-with-store+ %store+ (mlet %store-monad+ ((drv (gexp->derivation+ "disallowed-refs"+ (gexp (begin+ (mkdir (ungexp output))+ (chdir (ungexp output))+ (symlink (ungexp output) "self")+ (symlink (ungexp %bootstrap-guile) "guile")))+ #:disallowed-references+ '())))+ (built-derivations (list drv)))+ #:guile-for-build+ (%guile-for-build)))@ build-started /home/sapientech/Dev/guix/guix_wip/test-tmp/store/n3hhcjzignj7czh53scbwjm7mcxa27yk-disallowed-refs.drv - x86_64-linux /home/sapientech/Dev/guix/guix_wip/test-tmp/var/log/guix/drvs/n3//hhcjzignj7czh53scbwjm7mcxa27yk-disallowed-refs.drv.bz2@ build-succeeded /home/sapientech/Dev/guix/guix_wip/test-tmp/store/n3hhcjzignj7czh53scbwjm7mcxa27yk-disallowed-refs.drv -actual-value: #tresult: PASS
test-name: gexp->derivation #:disallowed-referenceslocation: /home/sapientech/Dev/guix/guix_wip/tests/gexp.scm:696source:+ (test-assert+ "gexp->derivation #:disallowed-references"+ (let ((drv (run-with-store+ %store+ (gexp->derivation+ "disallowed-refs"+ (gexp (begin+ (mkdir (ungexp output))+ (chdir (ungexp output))+ (symlink (ungexp %bootstrap-guile) "guile")))+ #:disallowed-references+ (list %bootstrap-guile)))))+ (guard (c ((nix-protocol-error? c) #t))+ (build-derivations %store (list drv))+ #f)))@ build-started /home/sapientech/Dev/guix/guix_wip/test-tmp/store/y6h6i2d0vb4whn8bfvyl5vff17h9rs19-disallowed-refs.drv - x86_64-linux /home/sapientech/Dev/guix/guix_wip/test-tmp/var/log/guix/drvs/y6//h6i2d0vb4whn8bfvyl5vff17h9rs19-disallowed-refs.drv.bz2output (`/home/sapientech/Dev/guix/guix_wip/test-tmp/store/jz1q32n6qxyvi6dkywl028y6fvdfsi1k-disallowed-refs') is not allowed to refer to path `/home/sapientech/Dev/guix/guix_wip/test-tmp/store/0vxgvlx03qscrds88s65hrs70n5jkw2g-guile-bootstrap-2.0'@ build-failed /home/sapientech/Dev/guix/guix_wip/test-tmp/store/y6h6i2d0vb4whn8bfvyl5vff17h9rs19-disallowed-refs.drv - 1 output (`/home/sapientech/Dev/guix/guix_wip/test-tmp/store/jz1q32n6qxyvi6dkywl028y6fvdfsi1k-disallowed-refs') is not allowed to refer to path `/home/sapientech/Dev/guix/guix_wip/test-tmp/store/0vxgvlx03qscrds88s65hrs70n5jkw2g-guile-bootstrap-2.0'actual-value: #tresult: PASS
test-name: gexp->scriptlocation: /home/sapientech/Dev/guix/guix_wip/tests/gexp.scm:716source:+ (test-assert+ "gexp->script"+ (run-with-store+ %store+ (mlet* %store-monad+ ((n -> (random (expt 2 50)))+ (exp ->+ (gexp (system*+ (string-append+ (ungexp %bootstrap-guile)+ "/bin/guile")+ "-c"+ (object->string '(display (expt (ungexp n) 2))))))+ (drv (gexp->script+ "guile-thing"+ exp+ #:guile+ %bootstrap-guile))+ (out -> (derivation->output-path drv))+ (done (built-derivations (list drv))))+ (let* ((pipe (open-input-pipe out))+ (str (get-string-all pipe)))+ (return+ (and (zero? (close-pipe pipe))+ (= (expt n 2) (string->number str))))))+ #:guile-for-build+ (%guile-for-build)))result: SKIP
test-name: program-filelocation: /home/sapientech/Dev/guix/guix_wip/tests/gexp.scm:733source:+ (test-assert+ "program-file"+ (run-with-store+ %store+ (let* ((n (random (expt 2 50)))+ (exp (with-imported-modules+ '((guix build utils))+ (gexp (begin+ (use-modules (guix build utils))+ (display (ungexp n))))))+ (file (program-file+ "program"+ exp+ #:guile+ %bootstrap-guile)))+ (mlet* %store-monad+ ((drv (lower-object file))+ (out -> (derivation->output-path drv)))+ (mbegin+ %store-monad+ (built-derivations (list drv))+ (let* ((pipe (open-input-pipe out))+ (str (get-string-all pipe)))+ (return+ (and (zero? (close-pipe pipe))+ (= n (string->number str))))))))+ #:guile-for-build+ (%guile-for-build)))result: SKIP
test-name: scheme-filelocation: /home/sapientech/Dev/guix/guix_wip/tests/gexp.scm:750source:+ (test-assert+ "scheme-file"+ (run-with-store+ %store+ (let* ((text (plain-file "foo" "Hello, world!"))+ (scheme+ (scheme-file+ "bar"+ (gexp (list "foo" (ungexp text))))))+ (mlet* %store-monad+ ((drv (lower-object scheme))+ (text (lower-object text))+ (out -> (derivation->output-path drv)))+ (mbegin+ %store-monad+ (built-derivations (list drv))+ (mlet %store-monad+ ((refs ((store-lift references) out)))+ (return+ (and (equal? refs (list text))+ (equal?+ `(list "foo" ,text)+ (call-with-input-file out read))))))))+ #:guile-for-build+ (%guile-for-build)))actual-value: #tresult: PASS
test-name: text-file*location: /home/sapientech/Dev/guix/guix_wip/tests/gexp.scm:763source:+ (test-assert+ "text-file*"+ (let ((references (store-lift references)))+ (run-with-store+ %store+ (mlet* %store-monad+ ((drv (package->derivation %bootstrap-guile))+ (guile -> (derivation->output-path drv))+ (file (text-file "bar" "This is bar."))+ (text (text-file*+ "foo"+ %bootstrap-guile+ "/bin/guile "+ (gexp-input %bootstrap-guile "out")+ "/bin/guile "+ drv+ "/bin/guile "+ file))+ (done (built-derivations (list text)))+ (out -> (derivation->output-path text))+ (refs (references out)))+ (return+ (and (lset= string=? refs (list guile file))+ (equal?+ (call-with-input-file out get-string-all)+ (string-append+ guile+ "/bin/guile "+ guile+ "/bin/guile "+ guile+ "/bin/guile "+ file)))))+ #:guile-for-build+ (package-derivation %store %bootstrap-guile))))@ build-started /home/sapientech/Dev/guix/guix_wip/test-tmp/store/hkndxm5i5l1zczbiavqbk84qrdmilz6g-foo.drv - x86_64-linux /home/sapientech/Dev/guix/guix_wip/test-tmp/var/log/guix/drvs/hk//ndxm5i5l1zczbiavqbk84qrdmilz6g-foo.drv.bz2@ build-succeeded /home/sapientech/Dev/guix/guix_wip/test-tmp/store/hkndxm5i5l1zczbiavqbk84qrdmilz6g-foo.drv -actual-value: #tresult: PASS
test-name: mixed-text-filelocation: /home/sapientech/Dev/guix/guix_wip/tests/gexp.scm:787source:+ (test-assert+ "mixed-text-file"+ (run-with-store+ %store+ (mlet* %store-monad+ ((file ->+ (mixed-text-file+ "mixed"+ "export PATH="+ %bootstrap-guile+ "/bin"))+ (drv (lower-object file))+ (out -> (derivation->output-path drv))+ (guile-drv+ (package->derivation %bootstrap-guile))+ (guile -> (derivation->output-path guile-drv)))+ (mbegin+ %store-monad+ (built-derivations (list drv))+ (mlet %store-monad+ ((refs ((store-lift references) out)))+ (return+ (and (string=?+ (string-append "export PATH=" guile "/bin")+ (call-with-input-file out get-string-all))+ (equal? refs (list guile)))))))+ #:guile-for-build+ (%guile-for-build)))@ build-started /home/sapientech/Dev/guix/guix_wip/test-tmp/store/h3cn1cfdzpsbzn9cyfg47jbs8744gmwf-mixed.drv - x86_64-linux /home/sapientech/Dev/guix/guix_wip/test-tmp/var/log/guix/drvs/h3//cn1cfdzpsbzn9cyfg47jbs8744gmwf-mixed.drv.bz2@ build-succeeded /home/sapientech/Dev/guix/guix_wip/test-tmp/store/h3cn1cfdzpsbzn9cyfg47jbs8744gmwf-mixed.drv -actual-value: #tresult: PASS
test-name: gexp->derivation vs. %current-target-systemlocation: /home/sapientech/Dev/guix/guix_wip/tests/gexp.scm:802source:+ (test-assert+ "gexp->derivation vs. %current-target-system"+ (let ((mval (gexp->derivation+ "foo"+ (gexp (begin+ (mkdir (ungexp output))+ (foo (ungexp-native gnu-make))))+ #:target+ #f)))+ (parameterize+ ((%current-target-system "fooooo"))+ (derivation? (run-with-store %store mval)))))actual-value: #tresult: PASS
test-name: lower-objectlocation: /home/sapientech/Dev/guix/guix_wip/tests/gexp.scm:813source:+ (test-assert+ "lower-object"+ (run-with-store+ %store+ (mlet %store-monad+ ((drv1 (lower-object %bootstrap-guile))+ (drv2 (lower-object (package-source coreutils)))+ (item (lower-object (plain-file "foo" "Hello!"))))+ (return+ (and (derivation? drv1)+ (derivation? drv2)+ (store-path? item))))+ #:guile-for-build+ (%guile-for-build)))actual-value: #tresult: PASS
test-name: lower-object, computed-filelocation: /home/sapientech/Dev/guix/guix_wip/tests/gexp.scm:820source:+ (test-assert+ "lower-object, computed-file"+ (run-with-store+ %store+ (let* ((text (plain-file "foo" "Hello!"))+ (exp (gexp (begin+ (mkdir (ungexp output))+ (symlink+ (ungexp %bootstrap-guile)+ (string-append (ungexp output) "/guile"))+ (symlink+ (ungexp text)+ (string-append (ungexp output) "/text")))))+ (computed (computed-file "computed" exp)))+ (mlet* %store-monad+ ((text (lower-object text))+ (guile-drv (lower-object %bootstrap-guile))+ (comp-drv (lower-object computed))+ (comp -> (derivation->output-path comp-drv)))+ (mbegin+ %store-monad+ (built-derivations (list comp-drv))+ (return+ (and (string=?+ (readlink (string-append comp "/guile"))+ (derivation->output-path guile-drv))+ (string=?+ (readlink (string-append comp "/text"))+ text))))))+ #:guile-for-build+ (%guile-for-build)))@ build-started /home/sapientech/Dev/guix/guix_wip/test-tmp/store/fdhli6nzdk7643skliaca0flzvrf2xx8-computed.drv - x86_64-linux /home/sapientech/Dev/guix/guix_wip/test-tmp/var/log/guix/drvs/fd//hli6nzdk7643skliaca0flzvrf2xx8-computed.drv.bz2@ build-succeeded /home/sapientech/Dev/guix/guix_wip/test-tmp/store/fdhli6nzdk7643skliaca0flzvrf2xx8-computed.drv -actual-value: #tresult: PASS
test-name: printerlocation: /home/sapientech/Dev/guix/guix_wip/tests/gexp.scm:839source:+ (test-assert+ "printer"+ (string-match+ "^#<gexp \\(string-append .*#<package coreutils.* \"/bin/uname\"\\) [[:xdigit:]]+>$"+ (with-output-to-string+ (lambda ()+ (write (gexp (string-append (ungexp coreutils) "/bin/uname")))))))actual-value: #(#<gexp (string-append #<gexp-input #<package coreutils@8.24 gnu/packages/base.scm:244 2f1cf00>:out> "/bin/uname") 5c2f630> (0 . 122))result: PASS
test-name: printer vs. ungexp-splicinglocation: /home/sapientech/Dev/guix/guix_wip/tests/gexp.scm:848source:+ (test-assert+ "printer vs. ungexp-splicing"+ (string-match+ "^#<gexp .* [[:xdigit:]]+>$"+ (with-output-to-string+ (lambda ()+ (write (gexp (begin (ungexp-splicing (gexp ())))))))))actual-value: #(#<gexp 58dc150> (0 . 16))result: PASS
test-name: sugarlocation: /home/sapientech/Dev/guix/guix_wip/tests/gexp.scm:856source:+ (test-equal+ "sugar"+ '(gexp (foo (ungexp bar)+ (ungexp baz "out")+ (ungexp (chbouib 42))+ (ungexp-splicing (list x y z))+ (ungexp-native foo)+ (ungexp-native foo "out")+ (ungexp-native (chbouib 42))+ (ungexp-native-splicing (list x y z))))+ '(gexp (foo (ungexp bar)+ (ungexp baz "out")+ (ungexp (chbouib 42))+ (ungexp-splicing (list x y z))+ (ungexp-native foo)+ (ungexp-native foo "out")+ (ungexp-native (chbouib 42))+ (ungexp-native-splicing (list x y z)))))expected-value: (gexp (foo (ungexp bar) (ungexp baz out) (ungexp (chbouib 42)) (ungexp-splicing (list x y z)) (ungexp-native foo) (ungexp-native foo out) (ungexp-native (chbouib 42)) (ungexp-native-splicing (list x y z))))actual-value: (gexp (foo (ungexp bar) (ungexp baz out) (ungexp (chbouib 42)) (ungexp-splicing (list x y z)) (ungexp-native foo) (ungexp-native foo out) (ungexp-native (chbouib 42)) (ungexp-native-splicing (list x y z))))result: PASS

SKIP: tests/syscalls====================
test-name: mount, ENOENTlocation: /home/sapientech/Dev/guix/guix_wip/tests/syscalls.scm:38source:+ (test-equal+ "mount, ENOENT"+ ENOENT+ (catch 'system-error+ (lambda ()+ (mount "/dev/null" "/does-not-exist" "ext2")+ #f)+ (compose system-error-errno list)))expected-value: 2actual-value: 2result: PASS
test-name: umount, ENOENT/EPERMlocation: /home/sapientech/Dev/guix/guix_wip/tests/syscalls.scm:46source:+ (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-pointslocation: /home/sapientech/Dev/guix/guix_wip/tests/syscalls.scm:55source:+ (test-assert+ "mount-points"+ (any (cute member <> (mount-points))+ '("/" "/proc" "/sys" "/dev")))actual-value: (/ /sys/kernel/security /dev/shm /dev/pts /sys/fs/cgroup /sys/fs/cgroup/systemd /sys/fs/pstore /sys/fs/cgroup/freezer /sys/fs/cgroup/cpuset /sys/fs/cgroup/cpu,cpuacct /sys/fs/cgroup/blkio /sys/fs/cgroup/memory /sys/fs/cgroup/net_cls /sys/fs/cgroup/pids /sys/fs/cgroup/devices /proc/sys/fs/binfmt_misc /dev/mqueue /sys/kernel/debug /dev/hugepages /sys/kernel/config /tmp /run/user/1000)result: PASS
test-name: swapon, ENOENT/EPERMlocation: /home/sapientech/Dev/guix/guix_wip/tests/syscalls.scm:61source:+ (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/EPERMlocation: /home/sapientech/Dev/guix/guix_wip/tests/syscalls.scm:69source:+ (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: /home/sapientech/Dev/guix/guix_wip/tests/syscalls.scm:77source:+ (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: #tresult: PASS
test-name: statfs, ENOENTlocation: /home/sapientech/Dev/guix/guix_wip/tests/syscalls.scm:85source:+ (test-equal+ "statfs, ENOENT"+ ENOENT+ (catch 'system-error+ (lambda () (statfs "/does-not-exist"))+ (compose system-error-errno list)))expected-value: 2actual-value: 2result: PASS
test-name: statfslocation: /home/sapientech/Dev/guix/guix_wip/tests/syscalls.scm:92source:+ (test-assert+ "statfs"+ (let ((fs (statfs "/")))+ (and (file-system? fs)+ (> (file-system-block-size fs) 0)+ (>= (file-system-blocks-available fs) 0)+ (>= (file-system-blocks-free fs)+ (file-system-blocks-available fs)))))actual-value: #tresult: PASS
test-name: clonelocation: /home/sapientech/Dev/guix/guix_wip/tests/syscalls.scm:109source:+ (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) (= 42 (status:exit-val status))))))))result: SKIP
test-name: setnslocation: /home/sapientech/Dev/guix/guix_wip/tests/syscalls.scm:122source:+ (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-rootlocation: /home/sapientech/Dev/guix/guix_wip/tests/syscalls.scm:151source:+ (test-assert+ "pivot-root"+ (match (pipe)+ ((in . out)+ (match (clone (logior CLONE_NEWUSER CLONE_NEWNS SIGCHLD))+ (0+ (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))))+ (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 waitlocation: /home/sapientech/Dev/guix/guix_wip/tests/syscalls.scm:180source:+ (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: 42actual-value: 42result: PASS
test-name: fcntl-flock non-blockinglocation: /home/sapientech/Dev/guix/guix_wip/tests/syscalls.scm:219source:+ (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)expected-value: 11actual-value: 11result: PASS
test-name: all-network-interface-nameslocation: /home/sapientech/Dev/guix/guix_wip/tests/syscalls.scm:261source:+ (test-assert+ "all-network-interface-names"+ (match (all-network-interface-names)+ (((? string? names) ..1) (member "lo" names))))actual-value: (lo enp0s25 wlp2s0)result: PASS
test-name: network-interface-nameslocation: /home/sapientech/Dev/guix/guix_wip/tests/syscalls.scm:266source:+ (test-assert+ "network-interface-names"+ (match (network-interface-names)+ (((? string? names) ..1)+ (lset<=+ string=?+ names+ (all-network-interface-names)))))actual-value: #tresult: PASS
test-name: network-interface-flagslocation: /home/sapientech/Dev/guix/guix_wip/tests/syscalls.scm:271source:+ (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: #tresult: PASS
test-name: loopback-network-interface?location: /home/sapientech/Dev/guix/guix_wip/tests/syscalls.scm:278source:+ (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: 19actual-value: 19result: PASS
test-name: set-network-interface-flagslocation: /home/sapientech/Dev/guix/guix_wip/tests/syscalls.scm:289source:+ (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 lolocation: /home/sapientech/Dev/guix/guix_wip/tests/syscalls.scm:299source:+ (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-addresslocation: /home/sapientech/Dev/guix/guix_wip/tests/syscalls.scm:307source:+ (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-interfaces returns one or more interfaceslocation: /home/sapientech/Dev/guix/guix_wip/tests/syscalls.scm:321source:+ (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: /home/sapientech/Dev/guix/guix_wip/tests/syscalls.scm:333source:+ (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=? "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)+ (= 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: tcgetattr ENOTTYlocation: /home/sapientech/Dev/guix/guix_wip/tests/syscalls.scm:348source:+ (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: 25actual-value: 25result: PASS
test-name: tcgetattrlocation: /home/sapientech/Dev/guix/guix_wip/tests/syscalls.scm:362source:+ (test-assert+ "tcgetattr"+ (let ((termios (tcgetattr 0)))+ (and (termios? termios)+ (> (termios-input-speed termios) 0)+ (> (termios-output-speed termios) 0))))actual-value: #tresult: PASS
test-name: tcsetattrlocation: /home/sapientech/Dev/guix/guix_wip/tests/syscalls.scm:368source:+ (test-assert+ "tcsetattr"+ (let ((first (tcgetattr 0)))+ (tcsetattr 0 (tcsetattr-action TCSANOW) first)+ (equal? first (tcgetattr 0))))actual-value: #tresult: PASS
test-name: terminal-window-size ENOTTYlocation: /home/sapientech/Dev/guix/guix_wip/tests/syscalls.scm:373source:+ (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-columnslocation: /home/sapientech/Dev/guix/guix_wip/tests/syscalls.scm:384source:+ (test-assert+ "terminal-columns"+ (> (terminal-columns) 0))actual-value: #tresult: PASS
test-name: terminal-columns non-file portlocation: /home/sapientech/Dev/guix/guix_wip/tests/syscalls.scm:387source:+ (test-assert+ "terminal-columns non-file port"+ (> (terminal-columns+ (open-input-string+ "Join us now, share the software!"))+ 0))actual-value: #tresult: PASS

SKIP: tests/gremlin===================
test-name: elf-dynamic-info-needed, executablelocation: /home/sapientech/Dev/guix/guix_wip/tests/gremlin.scm:44source:+ (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<=+ string=?+ (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-originlocation: /home/sapientech/Dev/guix/guix_wip/tests/gremlin.scm:55source:+ (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

FAIL: tests/lint================
test-name: description: not a stringlocation: /home/sapientech/Dev/guix/guix_wip/tests/lint.scm:145source:+ (test-assert+ "description: not a string"+ (->bool+ (string-contains+ (with-warnings+ (let ((pkg (dummy-package "x" (description 'foobar))))+ (check-description-style pkg)))+ "invalid description")))actual-value: #tresult: PASS
test-name: description: not emptylocation: /home/sapientech/Dev/guix/guix_wip/tests/lint.scm:153source:+ (test-assert+ "description: not empty"+ (->bool+ (string-contains+ (with-warnings+ (let ((pkg (dummy-package "x" (description ""))))+ (check-description-style pkg)))+ "description should not be empty")))actual-value: #tresult: PASS
test-name: description: valid Texinfo markuplocation: /home/sapientech/Dev/guix/guix_wip/tests/lint.scm:161source:+ (test-assert+ "description: valid Texinfo markup"+ (->bool+ (string-contains+ (with-warnings+ (check-description-style+ (dummy-package "x" (description "f{oo}b@r"))))+ "Texinfo markup in description is invalid")))actual-value: #tresult: PASS
test-name: description: does not start with an upper-case letterlocation: /home/sapientech/Dev/guix/guix_wip/tests/lint.scm:168source:+ (test-assert+ "description: does not start with an upper-case letter"+ (->bool+ (string-contains+ (with-warnings+ (let ((pkg (dummy-package+ "x"+ (description "bad description."))))+ (check-description-style pkg)))+ "description should start with an upper-case letter")))actual-value: #tresult: PASS
test-name: description: may start with a digitlocation: /home/sapientech/Dev/guix/guix_wip/tests/lint.scm:176source:+ (test-assert+ "description: may start with a digit"+ (string-null?+ (with-warnings+ (let ((pkg (dummy-package+ "x"+ (description "2-component library."))))+ (check-description-style pkg)))))actual-value: #tresult: PASS
test-name: description: may start with lower-case package namelocation: /home/sapientech/Dev/guix/guix_wip/tests/lint.scm:183source:+ (test-assert+ "description: may start with lower-case package name"+ (string-null?+ (with-warnings+ (let ((pkg (dummy-package+ "x"+ (description "x is a dummy package."))))+ (check-description-style pkg)))))actual-value: #tresult: PASS
test-name: description: two spaces after end of sentencelocation: /home/sapientech/Dev/guix/guix_wip/tests/lint.scm:190source:+ (test-assert+ "description: two spaces after end of sentence"+ (->bool+ (string-contains+ (with-warnings+ (let ((pkg (dummy-package+ "x"+ (description "Bad. Quite bad."))))+ (check-description-style pkg)))+ "sentences in description should be followed by two spaces")))actual-value: #tresult: PASS
test-name: description: end-of-sentence detection with abbreviationslocation: /home/sapientech/Dev/guix/guix_wip/tests/lint.scm:198source:+ (test-assert+ "description: end-of-sentence detection with abbreviations"+ (string-null?+ (with-warnings+ (let ((pkg (dummy-package+ "x"+ (description+ "E.g. Foo, i.e. Bar resp. Baz (a.k.a. DVD)."))))+ (check-description-style pkg)))))actual-value: #tresult: PASS
test-name: synopsis: not a stringlocation: /home/sapientech/Dev/guix/guix_wip/tests/lint.scm:206source:+ (test-assert+ "synopsis: not a string"+ (->bool+ (string-contains+ (with-warnings+ (let ((pkg (dummy-package "x" (synopsis #f))))+ (check-synopsis-style pkg)))+ "invalid synopsis")))actual-value: #tresult: PASS
test-name: synopsis: not emptylocation: /home/sapientech/Dev/guix/guix_wip/tests/lint.scm:214source:+ (test-assert+ "synopsis: not empty"+ (->bool+ (string-contains+ (with-warnings+ (let ((pkg (dummy-package "x" (synopsis ""))))+ (check-synopsis-style pkg)))+ "synopsis should not be empty")))actual-value: #tresult: PASS
test-name: synopsis: does not start with an upper-case letterlocation: /home/sapientech/Dev/guix/guix_wip/tests/lint.scm:222source:+ (test-assert+ "synopsis: does not start with an upper-case letter"+ (->bool+ (string-contains+ (with-warnings+ (let ((pkg (dummy-package "x" (synopsis "bad synopsis."))))+ (check-synopsis-style pkg)))+ "synopsis should start with an upper-case letter")))actual-value: #tresult: PASS
test-name: synopsis: may start with a digitlocation: /home/sapientech/Dev/guix/guix_wip/tests/lint.scm:230source:+ (test-assert+ "synopsis: may start with a digit"+ (string-null?+ (with-warnings+ (let ((pkg (dummy-package+ "x"+ (synopsis "5-dimensional frobnicator"))))+ (check-synopsis-style pkg)))))actual-value: #tresult: PASS
test-name: synopsis: ends with a periodlocation: /home/sapientech/Dev/guix/guix_wip/tests/lint.scm:237source:+ (test-assert+ "synopsis: ends with a period"+ (->bool+ (string-contains+ (with-warnings+ (let ((pkg (dummy-package "x" (synopsis "Bad synopsis."))))+ (check-synopsis-style pkg)))+ "no period allowed at the end of the synopsis")))actual-value: #tresult: PASS
test-name: synopsis: ends with 'etc.'location: /home/sapientech/Dev/guix/guix_wip/tests/lint.scm:245source:+ (test-assert+ "synopsis: ends with 'etc.'"+ (string-null?+ (with-warnings+ (let ((pkg (dummy-package "x" (synopsis "Foo, bar, etc."))))+ (check-synopsis-style pkg)))))actual-value: #tresult: PASS
test-name: synopsis: starts with 'A'location: /home/sapientech/Dev/guix/guix_wip/tests/lint.scm:251source:+ (test-assert+ "synopsis: starts with 'A'"+ (->bool+ (string-contains+ (with-warnings+ (let ((pkg (dummy-package+ "x"+ (synopsis "A bad synop\u015dis"))))+ (check-synopsis-style pkg)))+ "no article allowed at the beginning of the synopsis")))actual-value: #tresult: PASS
test-name: synopsis: starts with 'An'location: /home/sapientech/Dev/guix/guix_wip/tests/lint.scm:259source:+ (test-assert+ "synopsis: starts with 'An'"+ (->bool+ (string-contains+ (with-warnings+ (let ((pkg (dummy-package+ "x"+ (synopsis "An awful synopsis"))))+ (check-synopsis-style pkg)))+ "no article allowed at the beginning of the synopsis")))actual-value: #tresult: PASS
test-name: synopsis: starts with 'a'location: /home/sapientech/Dev/guix/guix_wip/tests/lint.scm:267source:+ (test-assert+ "synopsis: starts with 'a'"+ (->bool+ (string-contains+ (with-warnings+ (let ((pkg (dummy-package "x" (synopsis "a bad synopsis"))))+ (check-synopsis-style pkg)))+ "no article allowed at the beginning of the synopsis")))actual-value: #tresult: PASS
test-name: synopsis: starts with 'an'location: /home/sapientech/Dev/guix/guix_wip/tests/lint.scm:275source:+ (test-assert+ "synopsis: starts with 'an'"+ (->bool+ (string-contains+ (with-warnings+ (let ((pkg (dummy-package+ "x"+ (synopsis "an awful synopsis"))))+ (check-synopsis-style pkg)))+ "no article allowed at the beginning of the synopsis")))actual-value: #tresult: PASS
test-name: synopsis: too longlocation: /home/sapientech/Dev/guix/guix_wip/tests/lint.scm:283source:+ (test-assert+ "synopsis: too long"+ (->bool+ (string-contains+ (with-warnings+ (let ((pkg (dummy-package+ "x"+ (synopsis (make-string 80 #\x)))))+ (check-synopsis-style pkg)))+ "synopsis should be less than 80 characters long")))actual-value: #tresult: PASS
test-name: synopsis: start with package namelocation: /home/sapientech/Dev/guix/guix_wip/tests/lint.scm:291source:+ (test-assert+ "synopsis: start with package name"+ (->bool+ (string-contains+ (with-warnings+ (let ((pkg (dummy-package+ "x"+ (name "foo")+ (synopsis "foo, a nice package"))))+ (check-synopsis-style pkg)))+ "synopsis should not start with the package name")))actual-value: #tresult: PASS
test-name: synopsis: start with package name prefixlocation: /home/sapientech/Dev/guix/guix_wip/tests/lint.scm:300source:+ (test-assert+ "synopsis: start with package name prefix"+ (string-null?+ (with-warnings+ (let ((pkg (dummy-package+ "arb"+ (synopsis "Arbitrary precision"))))+ (check-synopsis-style pkg)))))actual-value: #tresult: PASS
test-name: synopsis: start with abbreviationlocation: /home/sapientech/Dev/guix/guix_wip/tests/lint.scm:307source:+ (test-assert+ "synopsis: start with abbreviation"+ (string-null?+ (with-warnings+ (let ((pkg (dummy-package+ "uucp"+ (synopsis "UUCP implementation")+ (description "Imagine this is Taylor UUCP."))))+ (check-synopsis-style pkg)))))actual-value: #tresult: PASS
test-name: inputs: pkg-config is probably a native inputlocation: /home/sapientech/Dev/guix/guix_wip/tests/lint.scm:316source:+ (test-assert+ "inputs: pkg-config is probably a native input"+ (->bool+ (string-contains+ (with-warnings+ (let ((pkg (dummy-package+ "x"+ (inputs `(("pkg-config" ,pkg-config))))))+ (check-inputs-should-be-native pkg)))+ "'pkg-config' should probably be a native input")))actual-value: #tresult: PASS
test-name: inputs: glib:bin is probably a native inputlocation: /home/sapientech/Dev/guix/guix_wip/tests/lint.scm:325source:+ (test-assert+ "inputs: glib:bin is probably a native input"+ (->bool+ (string-contains+ (with-warnings+ (let ((pkg (dummy-package+ "x"+ (inputs `(("glib" ,glib "bin"))))))+ (check-inputs-should-be-native pkg)))+ "'glib:bin' should probably be a native input")))actual-value: #tresult: PASS
test-name: patches: file nameslocation: /home/sapientech/Dev/guix/guix_wip/tests/lint.scm:334source:+ (test-assert+ "patches: file names"+ (->bool+ (string-contains+ (with-warnings+ (let ((pkg (dummy-package+ "x"+ (source+ (dummy-origin+ (patches (list "/path/to/y.patch")))))))+ (check-patch-file-names pkg)))+ "file names of patches should start with the package name")))actual-value: #tresult: PASS
test-name: patches: not foundlocation: /home/sapientech/Dev/guix/guix_wip/tests/lint.scm:345source:+ (test-assert+ "patches: not found"+ (->bool+ (string-contains+ (with-warnings+ (let ((pkg (dummy-package+ "x"+ (source+ (dummy-origin+ (patches+ (list (search-patch+ "this-patch-does-not-exist!"))))))))+ (check-patch-file-names pkg)))+ "patch not found")))actual-value: #tresult: PASS
test-name: derivation: invalid argumentslocation: /home/sapientech/Dev/guix/guix_wip/tests/lint.scm:357source:+ (test-assert+ "derivation: invalid arguments"+ (->bool+ (string-contains+ (with-warnings+ (let ((pkg (dummy-package+ "x"+ (arguments+ '(#:imported-modules (invalid-module))))))+ (check-derivation pkg)))+ "failed to create derivation")))actual-value: #tresult: PASS
test-name: license: invalid licenselocation: /home/sapientech/Dev/guix/guix_wip/tests/lint.scm:367source:+ (test-assert+ "license: invalid license"+ (string-contains+ (with-warnings+ (check-license (dummy-package "x" (license #f))))+ "invalid license"))actual-value: 63result: PASS
test-name: home-page: wrong home-pagelocation: /home/sapientech/Dev/guix/guix_wip/tests/lint.scm:373source:+ (test-assert+ "home-page: wrong home-page"+ (->bool+ (string-contains+ (with-warnings+ (let ((pkg (package+ (inherit (dummy-package "x"))+ (home-page #f))))+ (check-home-page pkg)))+ "invalid")))actual-value: #tresult: PASS
test-name: home-page: invalid URIlocation: /home/sapientech/Dev/guix/guix_wip/tests/lint.scm:383source:+ (test-assert+ "home-page: invalid URI"+ (->bool+ (string-contains+ (with-warnings+ (let ((pkg (package+ (inherit (dummy-package "x"))+ (home-page "foobar"))))+ (check-home-page pkg)))+ "invalid home page URL")))actual-value: #tresult: PASS
test-name: home-page: host not foundlocation: /home/sapientech/Dev/guix/guix_wip/tests/lint.scm:393source:+ (test-assert+ "home-page: host not found"+ (->bool+ (string-contains+ (with-warnings+ (let ((pkg (package+ (inherit (dummy-package "x"))+ (home-page "http://does-not-exist"))))+ (check-home-page pkg)))+ "domain not found")))actual-value: #fresult: FAIL
test-name: home-page: Connection refusedlocation: /home/sapientech/Dev/guix/guix_wip/tests/lint.scm:404source:+ (test-assert+ "home-page: Connection refused"+ (->bool+ (string-contains+ (with-warnings+ (let ((pkg (package+ (inherit (dummy-package "x"))+ (home-page %local-url))))+ (check-home-page pkg)))+ "Connection refused")))actual-value: #tresult: PASS
test-name: home-page: 200location: /home/sapientech/Dev/guix/guix_wip/tests/lint.scm:415source:+ (test-equal+ "home-page: 200"+ ""+ (with-warnings+ (with-http-server+ 200+ %long-string+ (let ((pkg (package+ (inherit (dummy-package "x"))+ (home-page %local-url))))+ (check-home-page pkg)))))expected-value: actual-value: result: PASS
test-name: home-page: 200 but short lengthlocation: /home/sapientech/Dev/guix/guix_wip/tests/lint.scm:425source:+ (test-assert+ "home-page: 200 but short length"+ (->bool+ (string-contains+ (with-warnings+ (with-http-server+ 200+ "This is too small."+ (let ((pkg (package+ (inherit (dummy-package "x"))+ (home-page %local-url))))+ (check-home-page pkg))))+ "suspiciously small")))actual-value: #tresult: PASS
test-name: home-page: 404location: /home/sapientech/Dev/guix/guix_wip/tests/lint.scm:437source:+ (test-assert+ "home-page: 404"+ (->bool+ (string-contains+ (with-warnings+ (with-http-server+ 404+ %long-string+ (let ((pkg (package+ (inherit (dummy-package "x"))+ (home-page %local-url))))+ (check-home-page pkg))))+ "not reachable: 404")))actual-value: #tresult: PASS
test-name: source-file-namelocation: /home/sapientech/Dev/guix/guix_wip/tests/lint.scm:448source:+ (test-assert+ "source-file-name"+ (->bool+ (string-contains+ (with-warnings+ (let ((pkg (dummy-package+ "x"+ (version "3.2.1")+ (source+ (origin+ (method url-fetch)+ (uri "http://www.example.com/3.2.1.tar.gz")+ (sha256 %null-sha256))))))+ (check-source-file-name pkg)))+ "file name should contain the package name")))actual-value: #tresult: PASS
test-name: source-file-name: v prefixlocation: /home/sapientech/Dev/guix/guix_wip/tests/lint.scm:462source:+ (test-assert+ "source-file-name: v prefix"+ (->bool+ (string-contains+ (with-warnings+ (let ((pkg (dummy-package+ "x"+ (version "3.2.1")+ (source+ (origin+ (method url-fetch)+ (uri "http://www.example.com/v3.2.1.tar.gz")+ (sha256 %null-sha256))))))+ (check-source-file-name pkg)))+ "file name should contain the package name")))actual-value: #tresult: PASS
test-name: source-file-name: bad checkoutlocation: /home/sapientech/Dev/guix/guix_wip/tests/lint.scm:476source:+ (test-assert+ "source-file-name: bad checkout"+ (->bool+ (string-contains+ (with-warnings+ (let ((pkg (dummy-package+ "x"+ (version "3.2.1")+ (source+ (origin+ (method git-fetch)+ (uri (git-reference+ (url "http://www.example.com/x.git")+ (commit "0")))+ (sha256 %null-sha256))))))+ (check-source-file-name pkg)))+ "file name should contain the package name")))actual-value: #tresult: PASS
test-name: source-file-name: good checkoutlocation: /home/sapientech/Dev/guix/guix_wip/tests/lint.scm:492source:+ (test-assert+ "source-file-name: good checkout"+ (not (->bool+ (string-contains+ (with-warnings+ (let ((pkg (dummy-package+ "x"+ (version "3.2.1")+ (source+ (origin+ (method git-fetch)+ (uri (git-reference+ (url "http://git.example.com/x.git")+ (commit "0")))+ (file-name (string-append "x-" version))+ (sha256 %null-sha256))))))+ (check-source-file-name pkg)))+ "file name should contain the package name"))))actual-value: #tresult: PASS
test-name: source-file-name: validlocation: /home/sapientech/Dev/guix/guix_wip/tests/lint.scm:510source:+ (test-assert+ "source-file-name: valid"+ (not (->bool+ (string-contains+ (with-warnings+ (let ((pkg (dummy-package+ "x"+ (version "3.2.1")+ (source+ (origin+ (method url-fetch)+ (uri "http://www.example.com/x-3.2.1.tar.gz")+ (sha256 %null-sha256))))))+ (check-source-file-name pkg)))+ "file name should contain the package name"))))actual-value: #tresult: PASS
test-name: source: 200location: /home/sapientech/Dev/guix/guix_wip/tests/lint.scm:526source:+ (test-equal+ "source: 200"+ ""+ (with-warnings+ (with-http-server+ 200+ %long-string+ (let ((pkg (package+ (inherit (dummy-package "x"))+ (source+ (origin+ (method url-fetch)+ (uri %local-url)+ (sha256 %null-sha256))))))+ (check-source pkg)))))expected-value: actual-value: result: PASS
test-name: source: 200 but short lengthlocation: /home/sapientech/Dev/guix/guix_wip/tests/lint.scm:539source:+ (test-assert+ "source: 200 but short length"+ (->bool+ (string-contains+ (with-warnings+ (with-http-server+ 200+ "This is too small."+ (let ((pkg (package+ (inherit (dummy-package "x"))+ (source+ (origin+ (method url-fetch)+ (uri %local-url)+ (sha256 %null-sha256))))))+ (check-source pkg))))+ "suspiciously small")))actual-value: #tresult: PASS
test-name: source: 404location: /home/sapientech/Dev/guix/guix_wip/tests/lint.scm:554source:+ (test-assert+ "source: 404"+ (->bool+ (string-contains+ (with-warnings+ (with-http-server+ 404+ %long-string+ (let ((pkg (package+ (inherit (dummy-package "x"))+ (source+ (origin+ (method url-fetch)+ (uri %local-url)+ (sha256 %null-sha256))))))+ (check-source pkg))))+ "not reachable: 404")))actual-value: #tresult: PASS
test-name: cvelocation: /home/sapientech/Dev/guix/guix_wip/tests/lint.scm:568source:+ (test-assert+ "cve"+ (mock ((guix scripts lint)+ package-vulnerabilities+ (const '()))+ (string-null?+ (with-warnings+ (check-vulnerabilities (dummy-package "x"))))))actual-value: #tresult: PASS
test-name: cve: one vulnerabilitylocation: /home/sapientech/Dev/guix/guix_wip/tests/lint.scm:573source:+ (test-assert+ "cve: one vulnerability"+ (mock ((guix scripts lint)+ package-vulnerabilities+ (lambda (package)+ (list (make-struct+ (@@ (guix cve) <vulnerability>)+ 0+ "CVE-2015-1234"+ (list (cons (package-name package)+ (package-version package)))))))+ (string-contains+ (with-warnings+ (check-vulnerabilities+ (dummy-package "pi" (version "3.14"))))+ "vulnerable to CVE-2015-1234")))actual-value: 76result: PASS
test-name: cve: one patched vulnerabilitylocation: /home/sapientech/Dev/guix/guix_wip/tests/lint.scm:585source:+ (test-assert+ "cve: one patched vulnerability"+ (mock ((guix scripts lint)+ package-vulnerabilities+ (lambda (package)+ (list (make-struct+ (@@ (guix cve) <vulnerability>)+ 0+ "CVE-2015-1234"+ (list (cons (package-name package)+ (package-version package)))))))+ (string-null?+ (with-warnings+ (check-vulnerabilities+ (dummy-package+ "pi"+ (version "3.14")+ (source+ (dummy-origin+ (patches (list "/a/b/pi-CVE-2015-1234.patch"))))))))))actual-value: #tresult: PASS
test-name: cve: patched vulnerability in replacementlocation: /home/sapientech/Dev/guix/guix_wip/tests/lint.scm:602source:+ (test-assert+ "cve: patched vulnerability in replacement"+ (mock ((guix scripts lint)+ package-vulnerabilities+ (lambda (package)+ (list (make-struct+ (@@ (guix cve) <vulnerability>)+ 0+ "CVE-2015-1234"+ (list (cons (package-name package)+ (package-version package)))))))+ (string-null?+ (with-warnings+ (check-vulnerabilities+ (dummy-package+ "pi"+ (version "3.14")+ (source (dummy-origin))+ (replacement+ (dummy-package+ "pi"+ (version "3.14")+ (source+ (dummy-origin+ (patches+ (list "/a/b/pi-CVE-2015-1234.patch"))))))))))))actual-value: #tresult: PASS
test-name: formatting: lonely parentheseslocation: /home/sapientech/Dev/guix/guix_wip/tests/lint.scm:621source:+ (test-assert+ "formatting: lonely parentheses"+ (string-contains+ (with-warnings+ (check-formatting+ (dummy-package "ugly as hell!")))+ "lonely"))actual-value: 101result: PASS
test-name: formatting: tabulationlocation: /home/sapientech/Dev/guix/guix_wip/tests/lint.scm:631source:+ (test-assert+ "formatting: tabulation"+ (string-contains+ (with-warnings+ (check-formatting+ (dummy-package "leave the tab here:\t")))+ "tabulation"))actual-value: 82result: PASS
test-name: formatting: trailing white spacelocation: /home/sapientech/Dev/guix/guix_wip/tests/lint.scm:637source:+ (test-assert+ "formatting: trailing white space"+ (string-contains+ (with-warnings+ (check-formatting (dummy-package "x")))+ "trailing white space"))actual-value: 63result: PASS
test-name: formatting: long linelocation: /home/sapientech/Dev/guix/guix_wip/tests/lint.scm:644source:+ (test-assert+ "formatting: long line"+ (string-contains+ (with-warnings+ (check-formatting (dummy-package "x")))+ "too long"))actual-value: 78result: PASS
test-name: formatting: alrightlocation: /home/sapientech/Dev/guix/guix_wip/tests/lint.scm:652source:+ (test-assert+ "formatting: alright"+ (string-null?+ (with-warnings+ (check-formatting (dummy-package "x")))))actual-value: #tresult: PASS
random seed for tests: 1469937910
SKIP: tests/containers======================
test-name: call-with-container, exit with 0 when there is no errorlocation: /home/sapientech/Dev/guix/guix_wip/tests/containers.scm:40source:+ (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 namespacelocation: /home/sapientech/Dev/guix/guix_wip/tests/containers.scm:45source:+ (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 namespacelocation: /home/sapientech/Dev/guix/guix_wip/tests/containers.scm:54source:+ (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 namespacelocation: /home/sapientech/Dev/guix/guix_wip/tests/containers.scm:65source:+ (test-assert+ "call-with-container, pid namespace"+ (zero? (call-with-container+ '()+ (lambda ()+ (match (primitive-fork)+ (0 (assert-exit (= 2 (getpid))))+ (pid (primitive-exit+ (match (waitpid pid)+ ((_ . status)+ (status:exit-val status)))))))+ #:namespaces+ '(user pid))))result: SKIP
test-name: call-with-container, mnt namespacelocation: /home/sapientech/Dev/guix/guix_wip/tests/containers.scm:81source:+ (test-assert+ "call-with-container, mnt namespace"+ (zero? (call-with-container+ '(("none" device "/testing" "tmpfs" () #f #f))+ (lambda ()+ (assert-exit (file-exists? "/testing")))+ #:namespaces+ '(user mnt))))result: SKIP
test-name: call-with-container, mnt namespace, wrong bind mountlocation: /home/sapientech/Dev/guix/guix_wip/tests/containers.scm:89source:+ (test-equal+ "call-with-container, mnt namespace, wrong bind mount"+ `(system-error ,ENOENT)+ (catch 'system-error+ (lambda ()+ (call-with-container+ '(("/does-not-exist"+ device+ "/foo"+ "none"+ (bind-mount)+ #f+ #f))+ (const #t)+ #:namespaces+ '(user mnt)))+ (lambda args+ (list 'system-error (system-error-errno args)))))result: SKIP
test-name: call-with-container, all namespaceslocation: /home/sapientech/Dev/guix/guix_wip/tests/containers.scm:102source:+ (test-assert+ "call-with-container, all namespaces"+ (zero? (call-with-container+ '()+ (lambda () (primitive-exit 0)))))result: SKIP
test-name: container-excursionlocation: /home/sapientech/Dev/guix/guix_wip/tests/containers.scm:109source:+ (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

SKIP: tests/pypi================
test-name: guix-package->pypi-name, old URL stylelocation: /home/sapientech/Dev/guix/guix_wip/tests/pypi.scm:76source:+ (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: psutilactual-value: psutilresult: PASS
test-name: guix-package->pypi-name, new URL stylelocation: /home/sapientech/Dev/guix/guix_wip/tests/pypi.scm:84source:+ (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/4756e6a0ceb14e084042a2a65c615d68d25621c6fd446d0fc10d14c4ce7d/certbot-0.8.1.tar.gz"))))))expected-value: certbotactual-value: certbotresult: PASS
test-name: pypi->guix-packagelocation: /home/sapientech/Dev/guix/guix_wip/tests/pypi.scm:92source:+ (test-assert+ "pypi->guix-package"+ (mock ((guix import utils)+ url-fetch+ (lambda (url file-name)+ (match url+ ("https://pypi.python.org/pypi/foo/json"+ (with-output-to-file+ file-name+ (lambda () (display test-json))))+ ("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)))))+ (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)+ ('inputs+ ('quasiquote+ (("python-bar" ('unquote 'python-bar))+ ("python-baz" ('unquote 'python-baz))+ ("python-setuptools"+ ('unquote 'python-setuptools)))))+ ('home-page "http://example.com")+ ('synopsis "summary")+ ('description "summary")+ ('license 'lgpl2.0))+ (string=?+ (bytevector->nix-base32-string test-source-hash)+ hash))+ (x (pk 'fail x #f)))))foo-1.0.0/foo-1.0.0/requirements.txtactual-value: #tresult: PASS
test-name: pypi->guix-package, wheelslocation: /home/sapientech/Dev/guix/guix_wip/tests/pypi.scm:141source:+ (test-assert+ "pypi->guix-package, wheels"+ (mock ((guix import utils)+ url-fetch+ (lambda (url file-name)+ (match url+ ("https://pypi.python.org/pypi/foo/json"+ (with-output-to-file+ file-name+ (lambda () (display test-json))))+ ("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)))))+ (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)+ ('inputs+ ('quasiquote+ (("python-bar" ('unquote 'python-bar))+ ("python-baz" ('unquote 'python-baz))+ ("python-setuptools"+ ('unquote 'python-setuptools)))))+ ('home-page "http://example.com")+ ('synopsis "summary")+ ('description "summary")+ ('license 'lgpl2.0))+ (string=?+ (bytevector->nix-base32-string test-source-hash)+ hash))+ (x (pk 'fail x #f)))))result: SKIP
random seed for tests: 1469933106
FAIL: tests/guix-download=========================
+ guix download --versionguix download (GNU Guix) 0.10.0Copyright (C) 2016 the Guix authorsLicense GPLv3+: GNU GPL version 3 or later http://gnu.org/licenses/gpl.htmlThis is free software: you are free to change and redistribute it.There is NO WARRANTY, to the extent permitted by law.+ guix download http://does.not/existaccepted connection from pid 13292, user sapientech
Starting download of /tmp/guix-file.zUVDhlFrom http://does.not/exist...
 exist 0B/s 00:00 | 0B transferred exist 320KiB/s 00:00 | 319B transferred/home/sapientech/Dev/guix/guix_wip/test-tmp/store/hi5hmfl117bri5c79i96fb7ymip4cb43-exist1ipmbjjgif1f6a77j91s2y989y6sgk3fh4jiycbqqs6v2i827l7s+ false./test-env: line 1: 13275 Terminated "/home/sapientech/Dev/guix/guix_wip/pre-inst-env" "/home/sapientech/Dev/guix/guix_wip/guix-daemon" --disable-chroot --substitute-urls="$GUIX_BINARY_SUBSTITUTE_URL"FAIL tests/guix-download.sh (exit status: 1)
SKIP: tests/guix-environment-container======================================
+ set -e+ guix environment --versionguix environment (GNU Guix) 0.10.0Copyright (C) 2016 the Guix authorsLicense GPLv3+: GNU GPL version 3 or later http://gnu.org/licenses/gpl.htmlThis is free software: you are free to change and redistribute it.There is NO WARRANTY, to the extent permitted by law.+ guile -c '((@@ (guix scripts environment) assert-container-features))'error: cannot create container: user namespaces unavailableerror: is your kernel version < 3.10?+ exit 77./test-env: line 1: 15698 Terminated "/home/sapientech/Dev/guix/guix_wip/pre-inst-env" "/home/sapientech/Dev/guix/guix_wip/guix-daemon" --disable-chroot --substitute-urls="$GUIX_BINARY_SUBSTITUTE_URL"SKIP tests/guix-environment-container.sh (exit status: 77)
L
L
Ludovic Courtès wrote on 31 Jul 2016 12:53
(name . Dylan Jeffers)(address . sapientech@openmailbox.org)(address . 24108@debbugs.gnu.org)
87d1lu84ex.fsf@gnu.org
Hello,
Dylan Jeffers <sapientech@openmailbox.org> skribis:
[...]
Toggle quote (16 lines)> > > These tests are skipped when user namespaces are not supported, as> > > per this condition:> > > > > > (define perform-container-tests?> > > (and (user-namespace-supported?)> > > (unprivileged-user-namespace-supported?)))> > > > > > … which is true iff (1) /proc/self/ns/user exists, and (2)> > > /proc/sys/kernel/unprivileged_userns_clone does not exist, or it> > > exists and contains “1”.> > > > > > Do these files exist on this system? >>>> (1) /proc/self/ns/user exists, and>> (2) /proc/sys/kernel/unpriviledged_userns_clone D.N.E
They do not exist now with the new ‘test-suite.log’ that you posted, butthey did exist before (with the Grsec kernel), otherwise the usernamespaces tests would have been skipped.
Toggle quote (19 lines)>> Ideas on the best approach to allow the build to succeed?>> >> I also have had issues with qemu, so it makes sense that vm/container>> stuff both have issues. I have a feeling its due to the>> grsec kernel.>> https://wiki.archlinux.org/index.php/Grsecurity_Patchset talks a>> bit about userspace/namespace hardening + issues with xen and>> virtbox. Going to reboot with an lts kernel and try again. Will post>> update...>> >> Best,>> Dylan>> >> Best,>> Dylan>> After changing kernel, and stopping paxd.service, build still> failed :(
[...]
Toggle quote (14 lines)> test-name: clone> location: /home/sapientech/Dev/guix/guix_wip/tests/syscalls.scm:109> 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) (= 42 (status:exit-val status))))))))> result: SKIP
This and other container-related tests are now properly skipped.
Toggle quote (16 lines)> test-name: home-page: host not found> location: /home/sapientech/Dev/guix/guix_wip/tests/lint.scm:393> source:> + (test-assert> + "home-page: host not found"> + (->bool> + (string-contains> + (with-warnings> + (let ((pkg (package> + (inherit (dummy-package "x"))> + (home-page "http://does-not-exist"))))> + (check-home-page pkg)))> + "domain not found")))> actual-value: #f> result: FAIL
This and the remaining failures are due to DNS hijacking, so nothing wecan do about it. You’d have to use a well-behaved DNS server (e.g.,“echo nameserver 8.8.8.8 > /etc/resolv.conf” to use Google’s nameserver) to work around that.
Thanks,Ludo’.
L
L
Ludovic Courtès wrote on 31 Jul 2016 12:54
retitle
(address . request@debbugs.gnu.org)
878twi84cm.fsf@gnu.org
retitle 24108 CLONE_NEWUSER tests fail with EPERM instead of being skipped on Grsecurity kernelsthanks
L
L
Ludovic Courtès wrote on 9 Jul 2020 15:58
control message for bug #24108
(address . control@debbugs.gnu.org)
877dvcbxj0.fsf@gnu.org
tags 24108 notabugclose 24108quit
?