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
RFC: make package build reproducible #20629
Conversation
without this patch, spack-0.16.0/lib/spack/docs/_build/texinfo/Spack.texi varied in @deffn {Data} spack.config.config_defaults = @{'config': @{'build_jobs': 4, 'build_stage': '$tempdir/spack@w{-}stage', 'checksum': True, 'concretizer': 'original', 'connect_timeout': 10, 'debug': False, 'dirty': False, 'verify_ssl': True@}@} that caused resulting Spack.info and spack.1 files to differ as well. It would probably be more appropriate to drop the `build_jobs` default value when generating the .texi file but this code was hard to locate.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I don't think this change is something that we want, as it changes the default parallelism for all users on all systems.
|
Maybe you know how/where the |
|
It looks like this file is generated when you run: $ cd spack-0.16.0/lib/spack/docs
$ make texinfoI'm not familiar with OpenSUSE's Reproducible Builds effort, maybe you can give me more info on what its goal is. When you say "package build", do you mean installation of Spack, or the usage of Spack as a package manager to install other software? Building the documentation certainly isn't necessary for running Spack, so if you could remove that then that would be an easy way to resolve the unreproducible problem. |
|
We 'build' the spack sources into an openSUSE rpm package. |
|
Thanks for the explanation!
This 1-line-patch completely breaks Spack's ability to adapt to different platforms. While my laptop has 4 cores, my supercomputer may have 64 or 128 cores, and I would like to take advantage of them when building software. @becker33 @alalazo @scheibelp I recall some talk of removing this variable and instead relying on the config files to avoid config duplication. Another option would be to make this a hidden variable so it doesn't end up in the documentation. Thoughts on this? |
|
Closing as stale. Feel free to reopen if you want to continue the discussion on this. |
without this patch,
spack-0.16.0/lib/spack/docs/_build/texinfo/Spack.texivaried in
that caused resulting
Spack.infoandspack.1files to differ as well.It would probably be more appropriate to drop the
build_jobsdefault value when generating the
Spack.texifilebut this code was hard to locate.
This PR was done while working on reproducible builds for openSUSE.