nixpkgs mirror (for testing)
github.com/NixOS/nixpkgs
nix
1{
2 lib,
3 buildDunePackage,
4 fetchFromGitHub,
5 _0install-solver,
6 alcotest,
7 cudf,
8}:
9
10buildDunePackage (finalAttrs: {
11 pname = "opam-0install-cudf";
12 version = "0.5.0";
13
14 src = fetchFromGitHub {
15 owner = "ocaml-opam";
16 repo = "opam-0install-cudf";
17 rev = "v${finalAttrs.version}";
18 hash = "sha256-TETfvR1Di4c8CylsKnMal/GfQcqMSr36o7511u1bYYs=";
19 };
20
21 propagatedBuildInputs = [
22 cudf
23 _0install-solver
24 ];
25
26 doCheck = true;
27 checkInputs = [
28 alcotest
29 ];
30
31 meta = {
32 homepage = "https://github.com/ocaml-opam/opam-0install-cudf";
33 description = "Opam solver using 0install backend using the CUDF interface";
34 longDescription = ''
35 Opam's default solver is designed to maintain a set of packages
36 over time, minimising disruption when installing new programs and
37 finding a compromise solution across all packages.
38
39 In many situations (e.g. CI, local roots or duniverse builds) this
40 is not necessary, and we can get a solution much faster by using
41 a different algorithm.
42
43 This package provides a generic solver library which uses 0install's
44 solver library. The library uses the CUDF library in order to interface
45 with opam as it is the format common used to talk to all the supported solvers.
46 '';
47 license = lib.licenses.isc;
48 maintainers = [ lib.maintainers.stepbrobd ];
49 };
50})