34 lines
1.1 KiB
Nix
34 lines
1.1 KiB
Nix
{ lib, fetchFromGitHub, fetchpatch, buildDunePackage, ocaml
|
|
, calendar, camlp-streams, csv, hex, ppx_deriving, ppx_sexp_conv, re, rresult, sexplib
|
|
}:
|
|
|
|
let with-camlp-streams = lib.optional (lib.versionAtLeast ocaml.version "5.0"); in
|
|
|
|
buildDunePackage rec {
|
|
pname = "pgocaml";
|
|
version = "4.3.0";
|
|
src = fetchFromGitHub {
|
|
owner = "darioteixeira";
|
|
repo = "pgocaml";
|
|
rev = version;
|
|
hash = "sha256-W1fbRnU1l61qqxfVY2qiBnVpGD81xrBO8k0tWr+RXMY=";
|
|
};
|
|
|
|
# Compatibility with OCaml ≥ 5.0
|
|
patches = with-camlp-streams (fetchpatch {
|
|
url = "https://github.com/darioteixeira/pgocaml/commit/906a289dc57da4971e312c31eedd26d81e902ed5.patch";
|
|
hash = "sha256-/v9Jheg98GhrcD2gcsQpPvq7YiIrvJj22SKvrBRlR9Y=";
|
|
});
|
|
|
|
minimalOCamlVersion = "4.08";
|
|
|
|
propagatedBuildInputs = [ calendar csv hex ppx_deriving ppx_sexp_conv re rresult sexplib ]
|
|
++ with-camlp-streams camlp-streams;
|
|
|
|
meta = with lib; {
|
|
description = "An interface to PostgreSQL databases for OCaml applications";
|
|
inherit (src.meta) homepage;
|
|
license = licenses.lgpl2;
|
|
maintainers = with maintainers; [ vbgl ];
|
|
};
|
|
}
|