1 { lib, stdenv, fetchurl, ocaml, findlib, topkg, ocamlbuild, cmdliner }:
5 in lib.throwIfNot (lib.versionAtLeast ocaml.version "4.08")
6 "b0 is not available for OCaml ${ocaml.version}"
8 stdenv.mkDerivation rec {
10 pname = "ocaml${ocaml.version}-b0";
14 url = "${meta.homepage}/releases/b0-${version}.tbz";
15 sha256 = "sha256-ty04JQcP4RCme/VQw0ko2IBebWWX5cBU6nRTTeV1I/I=";
20 nativeBuildInputs = [ ocaml findlib ocamlbuild topkg ];
21 buildInputs = [ topkg cmdliner ];
23 inherit (topkg) buildPhase installPhase;
26 description = "Software construction and deployment kit";
28 WARNING this package is unstable and work in progress, do not depend on
30 B0 describes software construction and deployments using modular and
31 customizable definitions written in OCaml. B0 describes:
33 * Software configuration, build and testing.
34 * Source and binary deployments.
35 * Software life-cycle procedures.
36 B0 also provides the B00 build library which provides abitrary build
37 abstraction with reliable and efficient incremental rebuilds. The B00
38 library can be – and has been – used on its own to devise domain specific
41 homepage = "https://erratique.ch/software/b0";
42 inherit (ocaml.meta) platforms;
43 license = licenses.isc;
44 maintainers = [ maintainers.Julow ];