Clone of https://github.com/NixOS/nixpkgs.git (to stress-test knotserver)
1{ 2 lib, 3 stdenv, 4 fetchurl, 5 ocaml, 6 findlib, 7 topkg, 8 ocamlbuild, 9 cmdliner, 10}: 11 12let 13 14in 15lib.throwIfNot (lib.versionAtLeast ocaml.version "4.08") 16 "b0 is not available for OCaml ${ocaml.version}" 17 18 stdenv.mkDerivation 19 rec { 20 21 pname = "ocaml${ocaml.version}-b0"; 22 version = "0.0.5"; 23 24 src = fetchurl { 25 url = "${meta.homepage}/releases/b0-${version}.tbz"; 26 sha256 = "sha256-ty04JQcP4RCme/VQw0ko2IBebWWX5cBU6nRTTeV1I/I="; 27 }; 28 29 strictDeps = true; 30 31 nativeBuildInputs = [ 32 ocaml 33 findlib 34 ocamlbuild 35 topkg 36 ]; 37 buildInputs = [ 38 topkg 39 cmdliner 40 ]; 41 42 inherit (topkg) buildPhase installPhase; 43 44 meta = with lib; { 45 description = "Software construction and deployment kit"; 46 longDescription = '' 47 WARNING this package is unstable and work in progress, do not depend on 48 it. 49 B0 describes software construction and deployments using modular and 50 customizable definitions written in OCaml. B0 describes: 51 * Build environments. 52 * Software configuration, build and testing. 53 * Source and binary deployments. 54 * Software life-cycle procedures. 55 B0 also provides the B00 build library which provides abitrary build 56 abstraction with reliable and efficient incremental rebuilds. The B00 57 library can be and has been used on its own to devise domain specific 58 build systems. 59 ''; 60 homepage = "https://erratique.ch/software/b0"; 61 inherit (ocaml.meta) platforms; 62 license = licenses.isc; 63 maintainers = [ maintainers.Julow ]; 64 }; 65 }