Subject: opam->guix-package test fails
From: Wiktor Żelazny <[email-masked]>
To: [email-masked]
Date: Sat, 7 Sep 2019 12:22:00 +0200
List-Id: <debbugs-submit.debbugs.gnu.org>

My first post here. I’m assuming the bug number is going to be added
automatically. My apologies in advance, if it’s not.

I’m under GNU Guix SD (a new user), preparing to contribute my first
package. While following [1], I’m getting FAIL for opam->guix-package
after invoking `make check` in the Guix source tree.

The relevant part of the test log:

   FAIL: tests/opam
   ================

   test-name: opam->guix-package
   location: /home/w/vurv/guix-git/tests/opam.scm:71
   source:
   + (test-assert
   +   "opam->guix-package"
   +   (mock ((guix import utils)
   +          url-fetch
   +          (lambda (url file-name)
   +            (match url
   +                   ("https://example.org/foo-1.0.0.tar.gz"
   +                    (begin
   +                      (mkdir-p "foo-1.0.0")
   +                      (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))))
   +                   (_ (error "Unexpected URL: " url)))))
   +         (let ((my-package
   +                 (string-append
   +                   test-repo
   +                   "/packages/foo/foo.1.0.0")))
   +           (mkdir-p my-package)
   +           (with-output-to-file
   +             (string-append my-package "/opam")
   +             (lambda _ (format #t "~a" test-opam-file))))
   +         (mock ((guix import opam)
   +                get-opam-repository
   +                (lambda _ test-repo))
   +               (match (opam->guix-package "foo")
   +                      (('package
   +                        ('name "ocaml-foo")
   +                        ('version "1.0.0")
   +                        ('source
   +                         ('origin
   +                          ('method 'url-fetch)
   +                          ('uri "https://example.org/foo-1.0.0.tar.gz")
   +                          ('sha256 ('base32 (? string? hash)))))
   +                        ('build-system 'ocaml-build-system)
   +                        ('inputs
   +                         ('quasiquote
   +                          (("ocaml-zarith" ('unquote 'ocaml-zarith)))))
   +                        ('native-inputs
   +                         ('quasiquote
   +                          (("ocaml-alcotest" ('unquote 'ocaml-alcotest))
   +                           ("ocamlbuild" ('unquote 'ocamlbuild)))))
   +                        ('home-page "https://example.org/")
   +                        ('synopsis "Some example package")
   +                        ('description "This package is just an example.")
   +                        ('license #f))
   +                       (string=?
   +                         (bytevector->nix-base32-string test-source-hash)
   +                         hash))
   +                      (x (pk 'fail x #f))))))
   foo-1.0.0/

   ;;; (fail (package (name "ocaml-foo") (version "1.0.0") (source (origin (method url-fetch) (uri "https://example.org/foo-1.0.0.tar.gz") (sha256 (base32 "1krpnm4j5f8xi2h6jaq3v97alv9dz7v2mdw53a8sycw4i97qxkaq")))) (build-system ocaml-build-system) (propagated-inputs (quasiquote (("ocaml-zarith" (unquote ocaml-zarith))))) (native-inputs (quasiquote (("ocaml-alcotest" (unquote ocaml-alcotest)) ("ocamlbuild" (unquote ocamlbuild))))) (home-page "https://example.org/") (synopsis "Some example package") (description "This package is just an example.") (license #f)) #f)
   actual-value: #f
   result: FAIL

Software versions:

   GNU Guix: 66d2133 for invoking `guix environment`, d550845 for the
   tested source tree
   GNU Guile: 2.2.4
   Guile-Gcrypt: 0.1.0
   GnuTLS: 3.6.5
   Guile-SQLite3: 0.1.0
   Guile-Git: 0.2.0
   Guile-JSON: 1.2.0
   zlib: 1.2.11
   GNU Make: 4.2.1

In the mailing list archives, I can see some recurring opam/ocaml
issues, but I’m not familiar with any of those, so I cannot judge what
the problem could be. I will appreciate any hints.

WŻ

[1]: https://guix.gnu.org/manual/en/html_node/Building-from-Git.html