Hi, Paul Garlick <pgarl...@tourbillion-technology.com> skribis:
> test-name: pivot-root > location: /data/paul/sourceCode/guix/tests/syscalls.scm:154 > source: > + (test-equal > + "pivot-root" > + #t > + (match (pipe) > + ((in . out) > + (match (clone (logior CLONE_NEWUSER CLONE_NEWNS SIGCHLD)) > + (0 > + (dynamic-wind > + (const #t) > + (lambda () > + (close in) > + (call-with-temporary-directory > + (lambda (root) > + (let ((put-old (string-append root "/real-root"))) > + (mount "none" root "tmpfs") > + (mkdir put-old) > + (call-with-output-file > + (string-append root "/test") > + (lambda (port) (display "testing\n" port))) > + (pivot-root root put-old) > + (write (file-exists? "/test") out) > + (close out))))) > + (lambda () (primitive-exit 0)))) > + (pid (close out) > + (let ((result (read in))) > + (close in) > + (and (zero? (match (waitpid pid) > + ((_ . status) > + (status:exit-val status)))) > + result))))))) > expected-value: #t > actual-value: #<eof> > result: FAIL That would mean the child process exited with 0, yet it didn’t write anything to stdout. Not sure how this can happen. > test-name: utmpx-entries > location: /data/paul/sourceCode/guix/tests/syscalls.scm:444 > source: > + (test-assert > + "utmpx-entries" > + (match (utmpx-entries) > + (((? utmpx? entries) ...) > + (every (lambda (entry) > + (match (utmpx-user entry) > + ((? string?) (> (utmpx-pid entry) 0)) > + (#f #t))) > + entries)))) > actual-value: #f > result: FAIL This one is unrelated. Could you try this: --8<---------------cut here---------------start------------->8--- $ ./pre-inst-env guile GNU Guile 2.0.13 Copyright (C) 1995-2016 Free Software Foundation, Inc. Guile comes with ABSOLUTELY NO WARRANTY; for details type `,show w'. This program is free software, and you are welcome to redistribute it under certain conditions; type `,show c' for details. Enter `,help' for help. scheme@(guile-user)> ,use(guix build syscalls) scheme@(guile-user)> (utmpx-entries) $1 = (#<<utmpx-entry> type: 6 …> …) scheme@(guile-user)> ,use(srfi srfi-1) scheme@(guile-user)> (find (lambda (entry) (and (string? (utmpx-user entry))(zero? (utmpx-pid entry)))) (utmpx-entries)) $2 = #f --8<---------------cut here---------------end--------------->8--- Most likely the assumption made in this test doesn’t hold on your system for some reason. Thank you, Ludo’.