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

investigate and fix cpack tarball reproducibility #1715

Open
spoonincode opened this issue Oct 4, 2023 · 0 comments
Open

investigate and fix cpack tarball reproducibility #1715

spoonincode opened this issue Oct 4, 2023 · 0 comments
Labels
enhancement New feature or request 👍 lgtm

Comments

@spoonincode
Copy link
Member

spoonincode commented Oct 4, 2023

The AntelopeIO/leap development team wants the tarballs generated by cpack inside the reproducible.Dockerfile to be reproducible so that they can be provided as release assets and signed reliably.

Acceptance Criteria:

  1. The tarballs are generated in a reproducible order.
  2. Reproducibility is ensured across different filesystems and builds on the same filesystem.
  3. The tarballs can be provided as release assets.
  4. They can be signed with confidence.

Considerations:

  • It may be necessary to submit a patch upstream to address this issue.
  • Similar to the tweak-deb.sh process, a post-processing step may be employed to achieve reproducibility.

Additional Information:
The tarballs coming out of cpack inside of reproducible.Dockerfile are not reproducible. It appears cpack adds the files to the archive simply in the order readdir() returns them which isn't stable across different filesystems or potentially even different builds on the same filesystem.

We can almost certainly fix this locally via some sort of post-processing step (similar to tweak-deb.sh). It would be better to try and submit a patch upstream though.

I'd like to provide the tarballs as a release asset in addition to the .deb files. But we need them to be reproducible for us to sign them.

@enf-ci-bot enf-ci-bot moved this to Todo in Team Backlog Oct 4, 2023
@bhazzard bhazzard added enhancement New feature or request 👍 lgtm and removed triage labels Oct 5, 2023
@bhazzard bhazzard added this to the Leap v6.0.0 Cusp milestone Oct 26, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request 👍 lgtm
Projects
Archived in project
Development

No branches or pull requests

3 participants