diff options
| -rw-r--r-- | deps/ppx_protocol_conv.nix | 27 | ||||
| -rw-r--r-- | flake.nix | 17 |
2 files changed, 37 insertions, 7 deletions
diff --git a/deps/ppx_protocol_conv.nix b/deps/ppx_protocol_conv.nix new file mode 100644 index 0000000..c0a402e --- /dev/null +++ b/deps/ppx_protocol_conv.nix @@ -0,0 +1,27 @@ +{ lib, ocamlPackages, fetchFromGitHub, defaultVersion ? "5.2.1" }: +ocamlPackages.buildDunePackage { + duneVersion = "3"; + + pname = "ppx_protocol_conv"; + version = defaultVersion; + + minimalOCamlVersion = "4.07"; + + src = fetchFromGitHub { + owner = "andersfugmann"; + repo = "ppx_protocol_conv"; + rev = "master"; + sha256 = "jJJ6FEn+AkMknqun0GkXh5DSXsJnFbdE7U8BQ7Dd/Fw="; + }; + + buildInputs = []; + + propagatedBuildInputs = []; + + doCheck = true; + + meta = { + license = lib.licenses.bsd3; + homepage = "https://github.com/andersfugmann/ppx_protocol_conv"; + }; +} @@ -26,11 +26,12 @@ # Legacy packages that have not been converted to flakes legacyPackages = nixpkgs.legacyPackages.${system}; # OCaml packages available on nixpkgs - ocamlPackages = legacyPackages.ocamlPackages; # Library functions from nixpkgs lib = legacyPackages.lib; + ocamlPackages = legacyPackages.ocamlPackages; merklecpp = legacyPackages.callPackage ./deps/merklecpp.nix { }; libressl = legacyPackages.callPackage ./deps/libressl.nix { }; + ppx_protocol_conv = legacyPackages.callPackage ./deps/ppx_protocol_conv.nix { lib = legacyPackages.lib; fetchFromGitHub = legacyPackages.fetchFromGitHub; ocamlPackages = ocamlPackages; }; librelational_engine = legacyPackages.callPackage ./deps/relational_engine_lib.nix { libressl = libressl; @@ -89,16 +90,16 @@ nativeInputs = [ ]; - buildInputs = with ocamlPackages; [ + buildInputs = [ppx_protocol_conv] ++ (with ocamlPackages; [ ctypes ctypes-foreign data-encoding ppx_inline_test - ocamlPackages.ppx_deriving - ocamlPackages.ppx_sexp_conv - ocamlPackages.lwt - ocamlPackages.lwt-exit - ]; + ppx_deriving + ppx_sexp_conv + lwt + lwt-exit + ]); strictDeps = true; @@ -172,6 +173,7 @@ ocamlPackages.ppx_sexp_conv ocamlPackages.lwt ocamlPackages.lwt-exit + ppx_protocol_conv ]; } '' echo "checking dune and ocaml formatting" @@ -263,6 +265,7 @@ # legacyPackages.nixfmt-classic ocamlPackages.lwt ocamlPackages.lwt-exit + ppx_protocol_conv ]; |
