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

Add Reproducible Builds page #89

Merged
merged 2 commits into from
Oct 28, 2020
Merged

Add Reproducible Builds page #89

merged 2 commits into from
Oct 28, 2020

Conversation

jholdstock
Copy link
Member

Closes #62

Requesting review from @jrick. Is there anything else I have missed in the decred/release source which is worth mentioning?

@jholdstock jholdstock requested a review from jrick September 30, 2020 10:45
different conditions, and always yield the same result when given the same
input.
The output of a truly deterministic build will be identical down to every
individual bit, such that equality can be measured using MD5/SHA1 hashes.
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

these are bad examples of a cryptographic hash in 2020. let's say SHA256 since that is what the manifest currently commits to.

- `-trimpath` is used to remove all file system paths from compiled executables
- The `buildid` added by the linker is hard-coded to empty string
- Local `GOFLAGS` are overwritten to empty string
- The `netgo` build tag is used to ensure statically linked binaries
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

this and disabling cgo does not strictly result in static binaries for all platforms and it would be better to remove that. Currently, the Darwin executables use dynamic linking, and this should be the case for OpenBSD as well shortly.

What is true is that these settings result in the same build as a cross compile for the target from a different target, even when locally building from the same target.

@jholdstock
Copy link
Member Author

Thanks jrick. A new commit addresses both of your comments

@dajohi dajohi requested a review from jrick October 1, 2020 12:39
@dajohi dajohi merged commit 75e5496 into decred:master Oct 28, 2020
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

Successfully merging this pull request may close these issues.

Reproducible builds
3 participants