make check fails for Guix 0.13.0

  • Done
  • quality assurance status badge
Details
3 participants
  • Ludovic Courtès
  • ng0
  • William
Owner
unassigned
Submitted by
William
Severity
normal
W
W
William wrote on 23 May 2017 00:51
(address . bug-guix@gnu.org)
CAPCYgVfCSG00xOgF+1W6ruUhTDxa2_bJCh24j8weiLGAJ9VeAA@mail.gmail.com
Hi,

I am trying to do a fresh install of GuixSD 0.13.0 (using UEFI if it's
important), after running "guix system init /mnt/etc/config.scm /mnt"
the "make check" stage of guix fails.

It fails in "tests/store.scm", specifically the "test-name: dead path
can be explicitly collected" test.

I have attached the test-suite.log file (can also be found at

Another user on IRC also had and issue that sounds similar: (but on a

Thanks
Attachment: test-suite.log
N
(name . 27032)(address . 27032@debbugs.gnu.org)
E1dD9kj-0007IY-64@rmmprod05.runbox
I can confirm this error on my end, using UEFI aswell and having
a partition mounted in /mnt/boot/efi formated with fat 32 (going by Gentoo Handbook).
L
L
Ludovic Courtès wrote on 24 May 2017 13:44
(name . William)(address . sign@vieta.uk)(address . 27032@debbugs.gnu.org)
87shju32eu.fsf@gnu.org
Hi William,

William <sign@vieta.uk> skribis:

Toggle quote (4 lines)
> I am trying to do a fresh install of GuixSD 0.13.0 (using UEFI if it's
> important), after running "guix system init /mnt/etc/config.scm /mnt"
> the "make check" stage of guix fails.

There was one problem, which is that substitutes for the ‘guix’ package
itself were missing. This is now fixed, meaning that if you install
GuixSD 0.13.0 now, you won’t have to build ‘guix’.

Could you try again?

Toggle quote (18 lines)
> test-name: dead path can be explicitly collected
> location: /tmp/guix-build-guix-0.13.0.drv-0/source/tests/store.scm:178
> source:
> + (test-assert
> + "dead path can be explicitly collected"
> + (let ((p (add-text-to-store
> + %store
> + "random-text"
> + (random-text)
> + '())))
> + (let-values
> + (((paths freed) (delete-paths %store (list p))))
> + (and (equal? paths (list p))
> + (> freed 0)
> + (not (file-exists? p))))))
> actual-value: #f
> result: FAIL

[...]

Toggle quote (41 lines)
> test-name: verify-store + check-contents
> location: /tmp/guix-build-guix-0.13.0.drv-0/source/tests/store.scm:815
> source:
> + (test-assert
> + "verify-store + check-contents"
> + (with-store
> + s
> + (let* ((text (random-text))
> + (drv (build-expression->derivation
> + s
> + "corrupt"
> + `(let ((out (assoc-ref %outputs "out")))
> + (call-with-output-file
> + out
> + (lambda (port) (display ,text port)))
> + #t)
> + #:guile-for-build
> + (package-derivation
> + s
> + %bootstrap-guile
> + (%current-system))))
> + (file (derivation->output-path drv)))
> + (with-derivation-substitute
> + drv
> + text
> + (and (build-derivations s (list drv))
> + (verify-store s #:check-contents? #t)
> + (begin
> + (chmod file 420)
> + (call-with-output-file
> + file
> + (lambda (port) (display "corrupt!" port)))
> + #t)
> + (not (verify-store s #:check-contents? #t))
> + (delete-paths s (list file)))))))
> actual-value: #f
> actual-error:
> + (srfi-34
> + #<condition &nix-protocol-error [message: "path `dtmp/guix-tests/store/462z3fnl7bs44vp9s97jyg1z74nsfvly-tar' is not in the Nix store" status: 1] e171e0>)
> result: FAIL

I’m surprised by the “dtmp” prefix here. It should be
“/tmp/guix-tests”. Was the log altered in some way?

Apart from that it’s hard to draw any conclusions. We run these tests
very often without problems. The difference here is that the GuixSD
installation system uses unionfs-fuse for its root file system, and I
suspect that file system could have slightly different semantics that
bite here. We’ll have to investigate this.

Thanks for your report!

Ludo’.
L
L
Ludovic Courtès wrote on 27 Mar 2018 11:16
control message for bug #27032
(address . control@debbugs.gnu.org)
87bmf9yj3h.fsf@gnu.org
tags 27032 wontfix
close 27032
?