A Nix toolbox for reproducible Coq environments, Continuous Integration and artifact reuse - Université Paris Cité Accéder directement au contenu
Document Associé À Des Manifestations Scientifiques Année : 2021

A Nix toolbox for reproducible Coq environments, Continuous Integration and artifact reuse

Résumé

When using or contributing to a Coq project (especially one with third party dependencies), it can be difficult and annoying to install the exact set of dependencies at the versions the maintainers recommend. It is more convenient when projects provide an easy way to set everything up to be ready to code, even more so if the dependencies can be quickly fetched in pre-compiled form. Nonetheless, it is also important to preserve the flexibility for project maintainers to test their projects against alternative versions (releases and development) of the dependencies, both while developing locally and in a distant Continuous Integration service (CI). Finally, being able to test that candidate changes do not break reverse dependencies (i.e., packages that depend on the project) is essential to bring confidence to project maintainers. We have designed the Coq Nix toolbox which relies on Nix [3] to allow for better sharing of configurations and pre-compiled packages across several projects. This toolbox makes it easy to setup a project and generates CI configurations to test multiple versions of the dependencies and compatibility with reverse dependencies. It enables the use of a single command nix-shell to get the same working environment for every developer. This also saves compilation time since developers and users may download packages that have already been compiled in CI.
Fichier principal
Vignette du fichier
main.pdf (184.28 Ko) Télécharger le fichier
Origine : Fichiers produits par l'(les) auteur(s)

Dates et versions

hal-03366644 , version 1 (05-10-2021)

Identifiants

  • HAL Id : hal-03366644 , version 1

Citer

Cyril Cohen, Théo Zimmermann. A Nix toolbox for reproducible Coq environments, Continuous Integration and artifact reuse. The Coq Workshop, Jul 2021, Virtual, France. ⟨hal-03366644⟩
80 Consultations
128 Téléchargements

Partager

Gmail Facebook X LinkedIn More