Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

racket package is different for every build #1979

Open
bmwiedemann opened this issue Mar 8, 2018 · 3 comments
Open

racket package is different for every build #1979

bmwiedemann opened this issue Mar 8, 2018 · 3 comments

Comments

@bmwiedemann
Copy link

Originally filed a bug at http://bugs.racket-lang.org/query/?cmd=view&pr=15439 but cannot read that now.

While working on the reproducible builds effort, I found that
when building the racket package for openSUSE Linux, there were many differences between each build.

See https://reproducible-builds.org/ for why this matters.

A full diff is at
http://rb.zq1.de/compare.factory-20180228/racket-compare.out

e.g. it includes

/usr/bin/racket
/usr/lib64/libracket3m-6.11.so
/usr/share/doc/packages/racket/2d/stamp.sxref
/usr/share/doc/packages/racket/db/query-api.html
/usr/share/doc/packages/racket/docindex.sqlite
/usr/share/doc/packages/racket/math/pict_24.png
/usr/share/doc/packages/racket/math/pict_25.png
/usr/share/doc/packages/racket/math/pict_28.png
/usr/share/racket/pkgs/drracket/scribblings/drracket/compiled/extending_scrbl.dep
/usr/share/racket/pkgs/web-server-lib/web-server/formlets/compiled/stateless_rkt.dep
/usr/share/racket/pkgs/web-server-lib/web-server/formlets/compiled/stateless_rkt.zo
/usr/share/doc/packages/racket/teachpack/pict.svg

and some statistics:

grep -o "^-/[^ ]*" racket-compare.out | grep -o '[^./]*$'|sort|uniq -c|sort -rn
   2390 dep
    276 zo
    205 svg
    158 sxref
     27 html
      9 png
      1 sqlite
      1 so
      1 racket
@SuzanneSoy
Copy link
Contributor

This issue has popped up for the NixOS package too.

See a short IRC discussion between me and @henrytill at https://botbot.me/freenode/nixos/2016-01-26/?msg=58715198&page=7 about this:

henrytill       georges-duperon: there's some seeming non-determinism in the doc building step
                georges-duperon: which meant that hydra routinely failed the build when under load
                georges-duperon: which is why we ultimately disabled them
georges-duperon henrytill: Oh, so you mean the hash isn't constant ?
henrytill       georges-duperon: no even deeper
                georges-duperon: there were random SQL failures

In the history for the NixOS racket package, we can see that building the docs was disabled in September 2, 2015, and was re-enabled in November 12, 2017.

@gebner Do you remember what made it possible to re-enable the Racket docs by default in the NixOS package ?

I don't see much in the diff between the two commits mentioned above: aside from version changes and dependencies, the most noticeable change is that the environment variable for ar was unset.

@gebner
Copy link
Contributor

gebner commented May 23, 2018

The NixOS change is explained in this PR: NixOS/nixpkgs#31556
As far as I could tell, this commit in racket fixed the issue.

@SuzanneSoy
Copy link
Contributor

@gebner Thanks a lot for the feedback!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants