Subject: Re: bug#39575: guix time-machine fails when a tarball was modified in-place

From: Jan Nieuwenhuizen <[email-masked]>
Date: Fri, 14 Feb 2020 14:24:12 +0100

Ludovic Courtès writes:

> Hi,
>
> zimoun <[email-masked]> skribis:
>
>> On Thu, 13 Feb 2020 at 22:34, Ludovic Courtès <[email-masked]> wrote:
>>>
>>> Hi,
>>>
>>> Jan Nieuwenhuizen <[email-masked]> skribis:
>>>
>>> > building /gnu/store/cjim33x0q1bv1ppkv3qijvr1pvsn4y0q-harfbuzz-2.4.0.tar.bz2.drv...
>>> > downloading from https://www.freedesktop.org/software/harfbuzz/release/harfbuzz-2.4.0.tar.bz2...
>>> > |offloading build of /gnu/store/6fgg1irkcvqyb4f9f8n0nzi5gknyqhfn-gcc-mesboot1-4.7.4.drv to 'kluit.dezyne.org'
>>> > - 'build' phasesha256 hash mismatch for /gnu/store/b4cdp9sp44848348lrpzbfafhmjqf8nr-harfbuzz-2.4.0.tar.bz2:
>>> >   expected hash: 1mpah6kwqid1kxsj4rwqsniivqbrx231j65v51yncx6s0dch0dch
>>> >   actual hash:   0vrkvdlmihdg62a4c6h5kx27khc33xmb95l50zgnwnavvpwyyw5l
>>> > hash mismatch for store item '/gnu/store/b4cdp9sp44848348lrpzbfafhmjqf8nr-harfbuzz-2.4.0.tar.bz2'
>>>
>>> The file itself is still available on our machines though, and you can
>>> get it with:
>>>
>>>   guix download -o harfbuzz-2.4.0.tar.bz2 \
>>>   https://ci.guix.gnu.org/file/harfbuzz-2.4.0.tar.bz2/sha256/0vrkvdlmihdg62a4c6h5kx27khc33xmb95l50zgnwnavvpwyyw5l
>>
>> Maybe I miss a point, but the file we need is the old one, not the new
>> one, i.e., the one with the expected hash
>> 1mpah6kwqid1kxsj4rwqsniivqbrx231j65v51yncx6s0dch0dch.
>
> Oops, my bad.
>
>> And I should do wrong but ci.guix.gnu.org does not have this file --
>> otherwise it will find it because of substitutes mechanism.
>>
>>  $ guix download -o /tmp/harfbuzz-old.tar.bz2 \
>>  https://ci.guix.gnu.org/file/harfbuzz-2.4.0.tar.bz2/sha256/1mpah6kwqid1kxsj4rwqsniivqbrx231j65v51yncx6s0dch0dch
>
> I checked on a bunch of machines and couldn’t find it.
>
> Everyone, please check whether you have
> /gnu/store/b4cdp9sp44848348lrpzbfafhmjqf8nr-harfbuzz-2.4.0.tar.bz2 and
> so share!

What about

    https://snapshot.debian.org/archive/debian/20190406T212022Z/pool/main/h/harfbuzz/harfbuzz_2.4.0.orig.tar.bz2

(The strange thing being here, that snapshot.debian.org does not provide
a copy of the the in-place rewritten upstream tarball, either on
2019-05-06 or later.)

So, this now becomes the recipe

    wget -O harfbuzz-2.4.0.tar.bz2 https://snapshot.debian.org/archive/debian/20190406T212022Z/pool/main/h/harfbuzz/harfbuzz_2.4.0.orig.tar.bz2
    guix download $PWD/harfbuzz-2.4.0.tar.bz2
    guix time-machine --commit=56e95d54d209c2428f970d65d9b27ae4168449ad --no-offload -- help

that i'm trying now, and for now it looks fine (lots of stuff to build,
i'll report success or failure when it's done).

It seems, however, that for offload builds to work the guix download
needs to be repeated on the offload build farm machines too?

janneke

-- 
Jan Nieuwenhuizen <[email-masked]> | GNU LilyPond http://lilypond.org
Freelance IT http://JoyofSource.com | Avatar® http://AvatarAcademy.com