Subject: Re: bug#67594: Cannot reproduce hash calculation of erlang package

From: Simon Tournier <[email-masked]>
Date: Fri, 08 Dec 2023 18:19:35 +0100

Hi,

On Sat, 02 Dec 2023 at 20:55, Leo Famulari <[email-masked]> wrote:

>     (source (origin
>               (method git-fetch)
>               ;; The tarball from http://erlang.org/download contains many
>               ;; pre-compiled files, so we use this snapshot of the source
>               ;; repository.
>               (uri (git-reference
>                     (url "https://github.com/erlang/otp")
>                     (commit (string-append "OTP-" version))))
>               (file-name (git-file-name name version))
>               (sha256
>                (base32
>                 "092lym5a181gz89nscw7kqhw1wa6qvgcpkj80q4i9p79mxmsr1nj"))

> $ git clone https://github.com/erlang/otp                                                                                                 
> $ cd otp
> $ git checkout OTP-25.3.2                                                                                                                 
> HEAD is now at 0418c10ec3 Updated OTP version
> $ guix hash -x --serializer=nar .
> 05m2fixgfn2gcisz13zp002hy5i8580ayai3lqs77q8gwzdb22mz

> It's not the same hash as in the package definition.

Indeed, and I think the issue is coming from that:

     ./lib/dialyzer/test/options1_SUITE_data/my_include/CVS

It is another case of bug#65979 [1].  Because there is both .git and
CVS, the current implementation of vcs-file? is confused and so exclude
some folders when it should not.

This is fixed by <https://issues.guix.gnu.org/66961#7> that I will push
shortly the last revision v4. :-)

--8<---------------cut here---------------start------------->8---
$ ./pre-inst-env guix hash -x --serializer=nar /tmp/otp
092lym5a181gz89nscw7kqhw1wa6qvgcpkj80q4i9p79mxmsr1nj
--8<---------------cut here---------------end--------------->8---

1: https://issues.guix.gnu.org/issue/65979

Cheers,
simon