package opam-repomin
All checked builds passInstall
dune-project
Dependency
Authors
Maintainers
Sources
sha256=d386aa90c5465b295d9d87de446b65da93bb0fa576fe925a4df48d60abc446b1
sha512=207d89cb7b9fc429ef172529f94d8a8f85a42f0107985f5e3fb23d2944f6b67722fb4dfc41e660e7db14b3135ab908ac1b29421de4b8917a939cbedc98b02489
Description
opam-repomin takes an opam repository overlay directory and a full opam-repository, uses the opam-0install solver to determine the minimum set of packages required to make the overlay standalone, and copies the relevant packages to an output directory.
Added to opam-repository:
README
opam-repomin
Minimize opam repository overlays using the 0install solver.
Overview
opam-repomin takes an opam repository overlay directory and a full opam-repository, uses the opam-0install solver to determine the minimum set of packages required to make the overlay standalone, and copies the relevant packages to an output directory.
Installation
opam install opam-repominUsage
opam-repomin --overlay <overlay-repo> --full <full-repo> --compiler <pkg.version> --output <output-dir>Options
--overlay- Path to the opam repository overlay directory--full- Path to the full opam-repository--compiler- Compiler package to use (e.g.,ocaml-base-compiler.5.2.0orocaml-variants.5.2.0+options)--output- Output directory for the minimized repository--dry-run- Print what would be copied without actually copying
Example
# Minimize an overlay using OCaml 5.2.0
opam-repomin \
--overlay ./my-overlay \
--full ~/.opam/repo/default \
--compiler ocaml-base-compiler.5.2.0 \
--output ./minimized-repoHow It Works
- Loads all packages from the overlay repository
- Loads the full opam-repository
- Uses the opam-0install solver to find the minimal set of dependencies needed to install all overlay packages with the specified compiler
- Copies only the required package versions from the full repository to the output directory (skipping packages already in the overlay)
License
ISC License. See LICENSE.md.
Dependencies (10)
-
fpath
>= "0.7.3" -
bos
>= "0.2.1" -
logs
>= "0.7.0" -
fmt
>= "0.9.0" -
cmdliner
>= "1.2.0" -
opam-state
>= "2.2" -
opam-format
>= "2.2" -
opam-0install
>= "0.5" -
ocaml
>= "5.2.0" -
dune
>= "3.18"
Optional Dependencies
None
Used by
None
Conflicts
None
Build status
Results of building opam-repomin with each compiler on check.ci.ocaml.org, run of against opam-repository 8a77e58. All results for this package.
Each result links to its build log. To keep crawlers from overloading the site, build logs require a GitHub sign-in (see ocurrent/opam-health-check). On your first log, GitHub asks you to “Authorize opam-health-check”, the OCurrent app that runs these checks; it sees only your public profile, not your repositories. The sign-in lasts 30 days.
| Version | OCaml 4.11 | OCaml 4.14 | OCaml 5.2 | OCaml 5.4 | OCaml 5.5 |
|---|---|---|---|---|---|
| 1.0.0 (this version) | n/a | n/a | good | good | good |
- good Package successfully built
- partial One of the dependencies failed to build
- bad Package failed to build
- n/a Package is not available in this environment
- internal Internal failure