Bug 223662 - astro/astrometry: Makefile uname system call generates non-deterministic output and this causes port to not be reproducible
Summary: astro/astrometry: Makefile uname system call generates non-deterministic outp...
Status: Closed FIXED
Alias: None
Product: Ports & Packages
Classification: Unclassified
Component: Individual Port(s) (show other bugs)
Version: Latest
Hardware: Any Any
: --- Affects Many People
Assignee: Tobias Kortkamp
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2017-11-14 05:19 UTC by delete2
Modified: 2019-01-30 06:03 UTC (History)
0 users

See Also:


Attachments
Modifies makefile uname system call directive from '-a' to '-o' to allow for reproducible output (174 bytes, patch)
2017-11-14 05:19 UTC, delete2
no flags Details | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description delete2 2017-11-14 05:19:42 UTC
Created attachment 187987 [details]
Modifies makefile uname system call directive from '-a' to '-o' to allow for reproducible output

Hello, I am posting this report to further the agenda of reproducible builds (wiki.freebsd.org/ReproducibleBuilds)

In this particular port, a system call, 'uname -a' is generating non-deterministic output on some builds with differing timestamps and node names.

A remedy is attached, changing the directive from -all to --operating-system allows this port to build in a reproducible fashion.
Comment 1 commit-hook freebsd_committer 2019-01-30 06:02:06 UTC
A commit references this bug:

Author: tobik
Date: Wed Jan 30 06:01:21 UTC 2019
New revision: 491605
URL: https://svnweb.freebsd.org/changeset/ports/491605

Log:
  astro/astrometry: Remove a source of non-reproducibality

  uname -a generates non-deterministic output on some hosts.  It's
  used when generating report.txt which is just documentation, so
  just don't call it.

  PR:		223662
  Reported by:	Michael Kotlyar <mdk369@nyu.edu>

Changes:
  head/astro/astrometry/Makefile
  head/astro/astrometry/files/patch-Makefile
Comment 2 Tobias Kortkamp freebsd_committer 2019-01-30 06:03:19 UTC
uname -o is the same as uname -s and also not available on DragonFly, so
I've just removed uname -a instead.