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

squashfsTools: apply reproducibility patches #40175

Merged
merged 2 commits into from May 9, 2018

Conversation

ruuda
Copy link
Contributor

@ruuda ruuda commented May 8, 2018

Motivation for this change

Currently, the output of mksquashfs is not reproducible. With these patches it is. See #40144 for the full details.

Things done
  • Tested using sandboxing (nix.useSandbox on NixOS, or option build-use-sandbox in nix.conf on non-NixOS)
  • Built on platform(s)
    • NixOS
    • macOS
    • other Linux distributions
  • Tested via one or more NixOS test(s) if existing and applicable for the change (look inside nixos/tests)
  • Tested compilation of all pkgs that depend on this change using nix-shell -p nox --run "nox-review wip"
  • Tested execution of all binary files (usually in ./result/bin/)
  • Fits CONTRIBUTING.md.

I tested this change using the reproduction steps from #40144. With this change, the squashfs image is reproducible without the override workaround.

This does affect the NixOS iso and netboot images, which depend on squashfsTools. Could there be any issues there? From the diffs of my own image, there were only a few bytes that differed in the non-reproducible version, but I haven’t diffed the reproducible version against one of the non-reproducible ones.

The contributing guidelines say to also set the maintainers field. I can volunteer to be a maintainer, but I’ve only used Nix seriously in the past 48 hours and I am not an expert on squashfs either, so if a more qualified person would like to be a maintainer please speak up.

Without these patches, the output of mksquashfs is not reproducible.
The patches are taken from https://github.com/squashfskit/squashfskit,
a fork of squashfs-tools, licensed under the GPL2 or later like
squashfs-tools itself.
@matthewbauer
Copy link
Member

The contributing guidelines say to also set the maintainers field. I can volunteer to be a maintainer, but I’ve only used Nix seriously in the past 48 hours and I am not an expert on squashfs either, so if a more qualified person would like to be a maintainer please speak up.

I think it would definitely be helpful for you to add yourself as maintainer. It's not as official as other distros, you will probably just be pinged on updates & stuff. If you could just keep track of these patches and updating them when newer versions of squashfs-tools comes out.

I am adding myself as maintainer here for lack of a better candidate,
but I am not experienced with Nix, and I am not a squashfs expert
either.
@ruuda
Copy link
Contributor Author

ruuda commented May 9, 2018

Okay, I added myself as a maintainer.

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

Successfully merging this pull request may close these issues.

None yet

4 participants