2018-03-30 08:59 EDT, Rasa Bočytė <rboc...@beeldengeluid.nl>:

> What I am most interested in is to know whether ReproZip could be used to:
> - document the original environment from which the files were acquired
> (web server, hardware, software)
> - record extra technical details and instructions that could be added
> manually
> - maintain dependencies between files and folders
> - capture metadata
>

Hello Rasa,

Thanks for your note! We have been looking specifically at packing dynamic
websites, so your email is timely. In short, ReproZip can do the bullet
points you’ve outlined in your email.

ReproZip stores the kernel version and distribution information (provided
by Python’s platform module
<https://docs.python.org/3/library/platform.html>). That is usually enough
to get a virtual machine (or base Docker image) to run the software. It
also stores the version numbers of all packages from which files are used
(on deb-based and rpm-based distributions for now).

For instructions, ReproZip stores the command-lines used to run the
software that is getting packaged. It can also record which files are
“input” or “output” of the process, which is useful when reproducing, to
allow the user to replace inputs and look at outputs easily. We try to
infer this information, but we rely on the user to check this, and provide
descriptive names for them (however this means editing the YAML
configuration file, so our experience is that not everyone takes the time).
They can also edit the command-lines/environment variables.

I am not entirely sure what you mean by “dependencies between files and
folders”. The path to files in the original environment is stored, so the
reproduction can happen with the exact same setup.

As for metadata, ReproZip can automatically capture technical and
administrative metadata in the config.yml file included in the ReproZip
package. The user (archivist, in your case!) will need to add descriptive
metadata to the package in something like a README, a finding aid, or by
archiving the ReproZip package in a repository and filling in the required
metadata form.

We have a few examples of ReproZip packing and preserving websites. We
packed a general blog made with Django (a small web application using a
SQLite3 database) -- you can view more information about that website and
the instructions for unpacking it here
<https://github.com/ViDA-NYU/reprozip-examples/tree/master/django-blog>.
We’ve also packed a data journalism app called Stacked Up, a dynamic web
application to explore the textbook inventory of Philadelphia public
schools (data is stored in a PostgreSQL database)-- you can view more
information about that website and the instructions for unpacking it here
<https://github.com/ViDA-NYU/reprozip-examples/tree/master/stacked-up>. You
can view all of our examples in our examples site
<https://examples.reprozip.org/>.

Best regards,
-- 
Rémi Rampin
ReproZip Developer
Center for Data Science, New York University
_______________________________________________
Reprozip-users mailing list
Reprozip-users@vgc.poly.edu
https://vgc.poly.edu/mailman/listinfo/reprozip-users

Reply via email to