Welcome to ReproZip’s documentation!
ReproZip is a tool aimed at simplifying the process of creating reproducible experiments from command-line executions. It tracks operating system calls and creates a package that contains all the binaries, files, and dependencies required to run a given command on the author’s computational environment. A reviewer can then extract the experiment in his own environment to reproduce the results, even if the environment has a different operating system from the original one.
Currently, ReproZip can only pack experiments that originally run on Linux.
Concretely, ReproZip has two main steps:
- The packing step happens in the original environment, and generates a compendium of the experiment, so as to make it reproducible. ReproZip tracks operating system calls while executing the experiment, and creates a .rpz file, which contains all the necessary information and components for the experiment.
- The unpacking step reproduces the experiment from the .rpz file. ReproZip offers different unpacking methods, from simply decompressing the files in a directory to starting a full virtual machine, and they can be used interchangeably from the same packed experiment. It is also possible to automatically replace input files and command-line arguments. Note that this step is also available on Windows and Mac OS X, since ReproZip can unpack the experiment in a virtual machine for further reproduction.
- Why ReproZip?
- Using reprozip
- Using reprounzip
- Frequently Asked Questions
- Why reprozip does not identify my input/output file?
- Why reprounzip cannot get my output files after reproducing an experiment?
- Why no files get packed when tracing a daemon?
- Can ReproZip pack a client-server scenario?
- Can ReproZip pack a database?
- Can ReproZip pack interactive tools?
- What if my experiment runs on a distributed environment?
- What if I need to pack multiple command lines?
- Why I am having issues with reprounzip-vagrant on Python 3?
- Why reprounzip shows DistributionNotFound errors?
- Why reprounzip shows running in chroot, ignoring request?
- Developer’s Guide