Installation

ReproZip is available as open source, released under the Revised BSD License. Please visit ReproZip’s website to find links to our PyPI packages or our GitHub repository.

Software Requirements

ReproZip is comprised of two components: reprozip (for the packing step) and reprounzip (for the unpack step). Additional plugins are also provided for reprounzip: reprounzip-vagrant, which unpacks the experiment in a Vagrant virtual machine, and reprounzip-docker, which unpacks the experiment in a Docker container (please see Additional Unpackers for more information). More plugins may be developed in the future (and of course, you are free to roll your own).

These are all standard Python packages that you can install using pip. However, reprozip only works on Linux and needs a C compiler recognized by distutils since it includes a C extension module that will be built during installation.

The operating system compatibility for the two ReproZip components is the following:

Component Linux Mac OS X Windows
reprozip Yes No No
reprounzip Yes Yes [1] Yes [1]

Python 2.7.3 or greater [2] is required to run ReproZip. Besides, depending on the component or plugin to be used, some additional software packages are also required, as described below:

Component / Plugin Required Software Packages
reprozip SQLite, a working C compiler
reprounzip None
reprounzip-vagrant Vagrant
reprounzip-docker Docker

Obtaining the Software

In ReproZip, the components must be installed separately as they fulfill different purposes (and typically, you will use them on different machines). First, you will need Python and pip. Then, to install a ReproZip component, simply run the following command:

$ pip install <name>

where <name> is the name of the component.

The additional plugins for reprounzip can also be installed using the same command. They depend on reprounzip, so it will be installed automatically if you simply install the plugin.

Footnotes

[1](1, 2) By using either reprounzip-vagrant or reprounzip-docker.
[2]This is because of Python bug 13676 related to sqlite3.