Subject: Re: bug#32245: Guix does not search sources locally by hash

From: Björn Höfling <[email-masked]>
Date: Mon, 23 Jul 2018 11:50:53 +0200

On Mon, 23 Jul 2018 10:41:14 +0200
[email-masked] (Ludovic Courtès) wrote:

> Hi,
> 
> Björn Höfling <[email-masked]> skribis:
> 
> > $> ./pre-inst-env  guix build java-eclipse
> > [..]
> > @
> > build-started /gnu/store/lqfw971srfifgql68ibdgh58vi4d8fq3-java-eclipse-oxygen-3a-linux-gtk-x86_64.tar.gz.drv
> > -
> > x86_64-linux /var/log/guix/drvs/lq//fw971srfifgql68ibdgh58vi4d8fq3-java-eclipse-oxygen-3a-linux-gtk-x86_64.tar.gz.drv.bz2
> 
> [...]
> 
> > But it does NOT search locally. Because I already have:
> >
> > guix
> > hash /gnu/store/56h6snwcawpzk6rhcwgk442wsx6k86q2-eclipse-java-oxygen-3a-linux-gtk-x86_64.tar.gz
> > 0m7y7jfm059w01x9j5b5qkinjjmhkyygpjabhjf19fg2smxmwcim
> 
> It does, but the file name matters.  In this case what you have is
> “eclipse-java-…” but you’re trying to build “java-eclipse-…”.
> 
> So you first need to add the file to the store under its expected
> name. You can do that for instance with:
> 
>   guix download file://…/java-eclipse-…
> 
> HTH!

Not sure yet. I havent't tried it yet, but I'm sure your solution
helps with the specific problem here. (Also updating the URL helps even
better :-))

What I feel strange here is:

* When the file is already on the local disk, it has to match a certain
file name criteria. Quite hard criteria.
* But when asking outside repositories over the network, we just "take
anything that has the hashsum".

Is that wanted behaviour? 

Björn