package opam-monorepo

  1. Overview
  2. Docs
Assemble and manage fully vendored Dune repositories

Install

dune-project
 Dependency

Authors

Maintainers

Sources

opam-monorepo-0.5.0.tbz
sha256=4307e05c4b90fa52614af0b605dd2861eeca91986a552456dfe9d3355b74b671
sha512=3cf9451a00705bdfacb22763c071485cde9056f79c26716425b10acce16d432e403043f711b0cf176cca7f1dd3ea3b40c96a278302fe3f0e21d2bbed837f4a7c

doc/concepts.html

Concepts

An opam-monorepo project uses 3 components in the source tree:

  • a set of opam files containing specifications about the dependencies (for example, a dependency on lwt >= 4.0.0)
  • a lock file (with extension .opam.locked) containing references to exact dependencies (for example, lwt = 4.2.1) and how to get them (URLs, hashes, etc.). It also contains information about transitive dependencies, not just the ones mentioned in opam files.
  • a duniverse folder containing the sources for all the packages mentioned in the lock file

The two important commands are:

  • opam monorepo lock, which will read the opam file and compute a solution using the opam repository and the opam solver. It will create or update the lock file with this solution.
  • opam monorepo pull will read the lock file, download the dependencies, and unpack them into the duniverse/ folder.