ocamlPackages.mariadb: 1.1.6 → 1.3.0

This commit is contained in:
Vincent Laporte
2026-04-13 22:56:21 +02:00
parent 4b695824a1
commit 822792e19f
@@ -1,74 +1,34 @@
{
lib,
fetchurl,
stdenv,
fetchpatch,
ocaml,
findlib,
ocamlbuild,
camlp-streams,
buildDunePackage,
ctypes,
mariadb,
libmysqlclient,
dune-configurator,
}:
stdenv.mkDerivation rec {
pname = "ocaml${ocaml.version}-mariadb";
version = "1.1.6";
buildDunePackage (finalAttrs: {
pname = "mariadb";
version = "1.3.0";
src = fetchurl {
url = "https://github.com/andrenth/ocaml-mariadb/releases/download/${version}/ocaml-mariadb-${version}.tar.gz";
sha256 = "sha256-3/C1Gz6luUzS7oaudLlDHMT6JB2v5OdbLVzJhtayHGM=";
url = "https://github.com/ocaml-community/ocaml-mariadb/releases/download/${finalAttrs.version}/mariadb-${finalAttrs.version}.tbz";
hash = "sha256-mYktFTUDaA///SzTMgQDNXtYiXxnkMrf4EujijpmjMY=";
};
patches =
lib.lists.map
(
x:
fetchpatch {
url = "https://github.com/andrenth/ocaml-mariadb/commit/${x.path}.patch";
inherit (x) hash;
}
)
[
{
path = "9db2e4d8dec7c584213d0e0f03d079a36a35d9d5";
hash = "sha256-heROtU02cYBJ5edIHMdYP1xNXcLv8h79GYGBuudJhgE=";
}
{
path = "40cd3102bc7cce4ed826ed609464daeb1bbb4581";
hash = "sha256-YVsAMJiOgWRk9xPaRz2sDihBYLlXv+rhWtQIMOVLtSg=";
}
];
postPatch = ''
substituteInPlace setup.ml --replace '#use "topfind"' \
'#directory "${findlib}/lib/ocaml/${ocaml.version}/site-lib/";; #use "topfind"'
'';
nativeBuildInputs = [
ocaml
findlib
ocamlbuild
];
buildInputs = [
mariadb
libmysqlclient
camlp-streams
ocamlbuild
dune-configurator
];
propagatedBuildInputs = [ ctypes ];
strictDeps = true;
preInstall = "mkdir -p $OCAMLFIND_DESTDIR/stublibs";
meta = {
description = "OCaml bindings for MariaDB";
license = lib.licenses.mit;
maintainers = with lib.maintainers; [ bcc32 ];
homepage = "https://github.com/andrenth/ocaml-mariadb";
inherit (ocaml.meta) platforms;
broken = !(lib.versionAtLeast ocaml.version "4.07");
homepage = "https://github.com/ocaml-community/ocaml-mariadb";
};
}
})