Subject: bug#36777: Guix Inferiors: Curious incorrect derivation output bug

From: Ludovic Courtès <[email-masked]>
Date: Sat, 27 Jul 2019 23:30:04 +0200

Hi Carl,

Carl Dong <[email-masked]> skribis:

> I did some more digging, and have included a git-bisect log, the -info-dir.drv,
> and -info-dir-builder here:
>
> https://gist.github.com/dongcarl/0a305badf20c9b5cfae738147ca416af

For future reference, the bisect output is:

  # first bad commit: [5cf4b26d52bcea382d98fb4becce89be9ee37b55] derivations: <derivation-input> now aggregates a <derivation>.

and ‘info-dir.drv’ is attached below.

I looked at the offending commit.  I don’t doubt it has the potential to
introduce such a bug :-), but so far I haven’t seen anything fishy as I
inspected it with a fresh eye.

Could you come up with a reduced reproducer for this?  Ideally a small
manifest, the commit of the Guix you’re using (not just that of the
inferior), maybe a manifest that doesn’t even use inferiors, and so on.

Alternately, since the problem is that the output path of the derivation
is incorrectly computed, you could add ‘pk’ calls to print the value of
‘drv-masked’ in (guix derivations) or similar.  That’s not going to be
convenient, though.  :-/

Ludo’.

PS: I’ll be away from keyboard so I won’t be able to look into it until
    some time.