v27.2 guix build fails with hash mismatch #31266

issue Sjors openend this issue on November 10, 2024
  1. Sjors commented at 11:54 pm on November 10, 2024: member

    Is there an existing issue for this?

    • I have searched the existing issues

    Current behaviour

    0git checkout v27.2
    1./contrib/guix/guix-build
    2...
    

    This fails for gnutls-3.8.1.tar.xz.drv, so I run that one specifically:

     0$ guix build --cores=1 /gnu/store/b0cvv1d3kz4ilf14iz5b9iq4dafxcv4a-gnutls-3.8.1.tar.xz.drv
     1The following derivation will be built:
     2  /gnu/store/b0cvv1d3kz4ilf14iz5b9iq4dafxcv4a-gnutls-3.8.1.tar.xz.drv
     3building /gnu/store/b0cvv1d3kz4ilf14iz5b9iq4dafxcv4a-gnutls-3.8.1.tar.xz.drv...
     4
     5Starting download of /gnu/store/rfq2b86kacgk0aslndpawk8gq912n9xj-gnutls-3.8.1.tar.xz
     6From http://artfiles.org/gnupg.org/gnutls/v3.8/gnutls-3.8.1.tar.xz...
     7download failed "http://artfiles.org/gnupg.org/gnutls/v3.8/gnutls-3.8.1.tar.xz" 404 "Not Found"
     8
     9Starting download of /gnu/store/rfq2b86kacgk0aslndpawk8gq912n9xj-gnutls-3.8.1.tar.xz
    10From http://www.crysys.hu/gnutls/v3.8/gnutls-3.8.1.tar.xz...
    11following redirection to `https://www.crysys.hu/gnutls/v3.8/gnutls-3.8.1.tar.xz'...
    12downloading from http://www.crysys.hu/gnutls/v3.8/gnutls-3.8.1.tar.xz ...
    13 gnutls-3.8.1.tar.xz  2KiB                                                                                        5.7MiB/s 00:00 ▕██████████████████▏ 100.0%
    14sha256 hash mismatch for /gnu/store/rfq2b86kacgk0aslndpawk8gq912n9xj-gnutls-3.8.1.tar.xz:
    15  expected hash: 1742jiigwsfhx7nj5rz7dwqr8d46npsph6b68j7siar0mqarx2xs
    16  actual hash:   1jp7wmciqz9cmxvcqfn8lf2c0p8w6xp9xjrvk1z9lq0faswk2102
    17hash mismatch for store item '/gnu/store/rfq2b86kacgk0aslndpawk8gq912n9xj-gnutls-3.8.1.tar.xz'
    18build of /gnu/store/b0cvv1d3kz4ilf14iz5b9iq4dafxcv4a-gnutls-3.8.1.tar.xz.drv failed
    19View build log at '/var/log/guix/drvs/b0/cvv1d3kz4ilf14iz5b9iq4dafxcv4a-gnutls-3.8.1.tar.xz.drv.gz'.
    20guix build: error: build of `/gnu/store/b0cvv1d3kz4ilf14iz5b9iq4dafxcv4a-gnutls-3.8.1.tar.xz.drv' failed
    

    Strange since there are quite a few v27.2 signatures: https://github.com/bitcoin-core/guix.sigs/tree/main/27.2

    So if it’s an upstream issue, it must be very recent.

    I have substitutes disabled.

    Expected behaviour

    Guix build to succeed.

    Steps to reproduce

    Relevant log output

    No response

    How did you obtain Bitcoin Core

    Compiled from source

    What version of Bitcoin Core are you using?

    v27.2

    Operating system and version

    Ubuntu 24.10 (x86_64)

    Machine specifications

    No response

  2. maflcko added the label Upstream on Nov 11, 2024
  3. maflcko added the label Build system on Nov 11, 2024
  4. maflcko commented at 7:12 am on November 11, 2024: member

    sha256 hash mismatch for /gnu/store/rfq2b86kacgk0aslndpawk8gq912n9xj-gnutls-3.8.1.tar.xz: expected hash: 1742jiigwsfhx7nj5rz7dwqr8d46npsph6b68j7siar0mqarx2xs actual hash: 1jp7wmciqz9cmxvcqfn8lf2c0p8w6xp9xjrvk1z9lq0faswk2102

    I’d say this is an upstream issue (of guix and gnutls). It would be good to notify either, or both. Also, it would be good to preserve the file, and compare it with the previous one.

  5. fanquake commented at 12:23 pm on November 11, 2024: member

    gnutls-3.8.1.tar.xz 2KiB

    I’m guessing you got redirected to a bad mirror (or one what has since removed this file etc), and have downloaded a 404 page. The actual tarball should be 6mb. What happens if you retry until you hit a different mirror?

    Strange since there are quite a few v27.2 signatures: https://github.com/bitcoin-core/guix.sigs/tree/main/27.2

    Those builders could have had this package built & saved on disk from when 27.0 was released in April.

  6. Sjors commented at 11:30 am on November 12, 2024: member

    I ended up working around the issue by downloading the file elsewhere:

    0guix download https://www.gnupg.org/ftp/gcrypt/gnutls/v3.8/gnutls-3.8.1.tar.xz
    

    After that guix build is happy.

    My guess is that .xy files have been purged from the internet left and right. Not sure if this is worth filing an upstream issue.

  7. Sjors commented at 5:04 pm on November 12, 2024: member
    I was able to do a complete guix build for v27.2: https://github.com/bitcoin-core/guix.sigs/pull/1433
  8. Sjors closed this on Nov 12, 2024

  9. Sjors commented at 5:38 pm on November 19, 2024: member

    Noticed while setting up an new guix environment for #31323 that I needed a few more (starting at 1.4.0 installed on Ubuntu in a VM):

    0guix download https://www.gnupg.org/ftp/gcrypt/gnutls/v3.7/gnutls-3.7.2.tar.xz
    1guix download https://gnupg.org/ftp/gcrypt/libgcrypt/libgcrypt-1.8.8.tar.bz2
    2guix download https://gnupg.org/ftp/gcrypt/libgpg-error/libgpg-error-1.42.tar.bz2
    

    (will add more here if needed, still building)

  10. Sjors commented at 5:52 pm on November 19, 2024: member

    This could be a problem… I can’t find net-tools-1.60-0.479bb4a.zip.drv anywhere on the internet, so I had to copy it from my other guix machine instead.

    So the problem may not be limited to backport releases like v27.2

  11. Sjors commented at 9:57 pm on April 8, 2025: member

    I broke my guix (virtual) machine, so did another fresh install, in order to build master @ bb92bb36f211b88e4c1aa031a4364795cbd24767. The host is an M4 MacBook Pro running Ubuntu 24.10 via UTM (qemu). Guix 1.4.0 was installed via apt.

    I then manually pulled the current commit we’re using:

    0guix pull --commit=53396a22afc04536ddf75d8f82ad2eafa5082725 --no-substitutes
    

    As above I had to download gnutls-3.7.2.tar.xz (I also downloaded the other two packages there, but didn’t check if they were used).

    We should probably document the download workaround.

  12. Sjors reopened this on Apr 8, 2025

  13. Sjors commented at 9:59 pm on April 11, 2025: member

    I nuked Guix again and did a pull to see which exact packages need to be downloaded:

    0guix download https://www.gnupg.org/ftp/gcrypt/gnutls/v3.7/gnutls-3.7.2.tar.xz
    1guix download https://www.gnupg.org/ftp/gcrypt/gnutls/v3.7/gnutls-3.7.7.tar.xz
    2guix download https://www.gnupg.org/ftp/gcrypt/gnutls/v3.8/gnutls-3.8.3.tar.xz
    3guix download https://gnupg.org/ftp/gcrypt/libgcrypt/libgcrypt-1.8.8.tar.bz2
    4guix download https://gnupg.org/ftp/gcrypt/libgcrypt/libgcrypt-1.10.1.tar.bz2
    5guix download https://gnupg.org/ftp/gcrypt/libgpg-error/libgpg-error-1.42.tar.bz2
    6guix download https://gnupg.org/ftp/gcrypt/libgpg-error/libgpg-error-1.45.tar.bz2
    7guix download https://deac-riga.dl.sourceforge.net/project/boost/boost/1.80.0/boost_1_80_0.tar.bz2
    

    I also still needed the (already documented) openssl-1.1.1l test date workaround.

    The following packages failed the first time, but were fine after a manual restart (with --cores=1):

    0guix build /gnu/store/fslpy0jb96rhi6vxbzb54jijan2m1nrv-gettext-minimal-0.21.drv --cores=1 --no-substitutes
    1guix build /gnu/store/q07c1iji9pn3hwgbzc09812y2i6zgakp-gettext-minimal-0.21.drv --cores=1 --no-substitutes
    2guix build /gnu/store/2hhv8ri2vqjjf5rqq3vhg2niayz3l61x-gcc-toolchain-11.3.0.drv --cores=1 --no-substitutes
    3guix build /gnu/store/rhrx4qax94pbv94aqpx4sqn3470byz16-guile-gcrypt-0.4.0.drv  --cores=1 --no-substitutes
    4guix build /gnu/store/n48jvh0f3xpwkf7m7lycqx12g6qhb6zd-guile-bytestructures-1.0.10.drv --cores=1 --no-substitutes
    5guix build /gnu/store/24raacjxgf0m9yvwr5fv5a1vvrcyzhs9-automake-1.16.5.drv --cores=1 --no-substitutes
    6guix build /gnu/store/lv6f18a1ai6s8fm3gia50c8br1f6mrxz-tcl-8.6.12.drv --cores=1 --no-substitutes
    7...
    8/gnu/store/cwi6r9wjml8wwsr86ma1b3cgdal8l2y8-graphviz-minimal-7.0.1.drv
    

    For automake I ran into the same “FAIL t/subobj.sh” issue as here https://github.com/monero-project/monero/issues/9900. IIUC there was a proposal to skip them: https://lists.nongnu.org/archive/html/guix-commits/2025-01/msg03539.html (unclear to me if it got merged)

    And then for the Bitcoin Core build, I just needed the app armor fix here.


github-metadata-mirror

This is a metadata mirror of the GitHub repository bitcoin/bitcoin. This site is not affiliated with GitHub. Content is generated from a GitHub metadata backup.
generated: 2025-05-08 15:12 UTC

This site is hosted by @0xB10C
More mirrored repositories can be found on mirror.b10c.me