GNU bug report logs - #21803
Guitarix builds non-deterministically

Previous Next

Package: guix;

Reported by: ludo <at> gnu.org (Ludovic Courtès)

Date: Sun, 1 Nov 2015 10:32:02 UTC

Severity: normal

Done: Maxim Cournoyer <maxim.cournoyer <at> gmail.com>

Bug is archived. No further changes may be made.

Full log


View this message in rfc822 format

From: Ludovic Courtès <ludo <at> gnu.org>
To: zimoun <zimon.toutoune <at> gmail.com>
Cc: 21803 <at> debbugs.gnu.org
Subject: bug#21803: guitarix non-reproducible hard to reproduce
Date: Sat, 16 Nov 2019 17:12:18 +0100
Hello!

zimoun <zimon.toutoune <at> gmail.com> skribis:

> My intuition is: the non-determinism comes from the WAF configuration
> files (./waf or wscript or wafadmin/).
>
> The process conditionally enters in functions such as "do_install" or
> "symlink_as", so maybe something is hidden by Python module "os" or
> similar. Moreover, note that wscript:l.990 "add_group()" is used after
> "add_subdirs('libgxw/gxw')".

My intuition :-) is that waf traverses files using directly
opendir/readdir, which returns files in an order that’s file
system-dependent.  That, in turn, leads it to make .so a symlink or not
in a non-deterministic fashion.

So I would suggest looking for uses of ‘readdir’ (or anything equivalent
in Python).

It would also be worth checking what others involved in the Reproducible
Builds effort have done (Debian, openSuSE, etc.).

Thanks,
Ludo’.




This bug report was last modified 4 years and 312 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.