Clone of https://github.com/NixOS/nixpkgs.git (to stress-test knotserver)
1{ lib, fetchFromGitHub, ocaml, buildDunePackage
2, cmdliner, dap, fmt, iter, logs, lru, lwt_ppx, lwt_react, menhir, menhirLib, path_glob, ppx_deriving_yojson
3, gitUpdater
4}:
5
6if lib.versionAtLeast ocaml.version "4.13"
7then throw "earlybird is not available for OCaml ${ocaml.version}"
8else
9
10buildDunePackage rec {
11 pname = "earlybird";
12 version = "1.1.0";
13
14 duneVersion = "3";
15
16 minimalOCamlVersion = "4.11";
17
18 src = fetchFromGitHub {
19 owner = "hackwaly";
20 repo = "ocamlearlybird";
21 rev = version;
22 hash = "sha256-8JHZWsgpz2pzpDxST3bkMSmPHtj7MDzD5G3ujqMW+MU=";
23 };
24
25 nativeBuildInputs = [ menhir ];
26
27 buildInputs = [ cmdliner dap fmt iter logs lru lwt_ppx lwt_react menhirLib path_glob ppx_deriving_yojson ];
28
29 passthru.updateScript = gitUpdater { };
30
31 meta = {
32 homepage = "https://github.com/hackwaly/ocamlearlybird";
33 description = "OCaml debug adapter";
34 license = lib.licenses.mit;
35 maintainers = [ lib.maintainers.romildo ];
36 };
37}