-
Notifications
You must be signed in to change notification settings - Fork 2
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
Support reproducible builds #3
Comments
Reproducible builds are working. There are a few exemptions required, among the suite of tests that |
For the RANDSTRUCT issue, my current idea is we have a fixed seed stored (encrypted) in the infrastructure repo alongside the grsecurity credentials, that kernel builders export as an environment variable that the build script will dump into the correct file. Then we just need to ensure that it does not end up in the orig tarball that is distributed. Also note that in the linked documentation, the filename has changed, but that only happened in 5.19 (torvalds/linux@be2b34f) so we still need to use the old one for our 5.15. |
For reference, the format of the file is:
|
I injected a fixed random seed into the build process, ran two builds, and unfortunately it was not reproducible:
There's something else going on, the diffoscope output was mostly useless to me (it's all assembly and stuff). I'm going to stop working on this now since it appears to require more work than expected. |
See https://www.kernel.org/doc/html/latest/kbuild/reproducible-builds.html In order to support deterministic builds, set:
KBUILD_BUILD_TIMESTAMP
SOURCE_DATE_EPOCH
KBUILD_BUILD_USER
KBUILD_BUILD_HOST
Also of note:
The text was updated successfully, but these errors were encountered: