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
Provide reproducible software environment deployment with GNU Guix #1
base: full-replication
Are you sure you want to change the base?
Conversation
These two files are all it takes to set up a known-good test environment with: guix time-machine -C channels.scm -- shell -m manifest.scm
9df5224
to
a1678dc
Compare
a1678dc
to
ea79a29
Compare
Not sure what could be the reason. Did you try to contact authors? |
;; | ||
;; to enter the environment built from this very Guix revision. | ||
|
||
(list (channel |
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.
out of curiosity, shouldn't channel inferiors (that provide packages versions which are as close as possible to the minimal version constraints in requirements.txt
) be defined?
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.
That is more of a philosophical than a technical question. It depends on the criteria that the authors applied to define those minimal version constraints, and that is hardly ever documented. In practice, judging from my own experience, version constraints are rarely useful for reproducibility. The fundamental assumption that "x.x or higher" yields the same results is simply wrong. Only strict version equality (same commit ID) has practical value.
"Konrad Hinsen" ***@***.***> writes:
That is more of a philosophical than a technical question.
It was intended as a practical question. While this is a PR on a project
that's replicating some research, I, perhaps incorrectly, thought the
intent here was to make said replication reproducible (as opposed to
modifying the replication such that it's reproducible).
It depends on the criteria that the authors applied to define those
minimal version constraints, and that is hardly ever documented.
True.
In practice, judging from my own experience, version constraints are
rarely useful for reproducibility. The fundamental assumption that
"x.x or higher" yields the same results is simply wrong.
True. Thank you for elaborating.
Only strict version equality (same commit ID) has practical value.
Okay, agreed.
…--
Suhail
|
Hello!
As part of a Reproducible Research hackathon, we're looking into taking advantage of Guix to support reproducible deployment for submissions to ReScience C.
This pulls requests adds two files that let us deploy the software environment of this computational experiment in a reproducible fashion. I tested it on a local cluster at my research institute that runs Slurm 22.05; apart from Slurm itself, all the packages are provided by Guix. I also added a GitHub action to build the software environment upon push.
The figures I obtain all look similar to those in the published article, with one exception: Figure 2.A ("attractors"), as shown below.
I haven't tried to analyze the reason of this discrepancy (I'm not an expert in this field). Any ideas?
Cc: @rougier @khinsen