about summary refs log tree commit diff
path: root/nixpkgs/pkgs/development/ocaml-modules
diff options
context:
space:
mode:
authorAlyssa Ross <hi@alyssa.is>2024-03-22 16:41:59 +0100
committerAlyssa Ross <hi@alyssa.is>2024-03-22 16:41:59 +0100
commit46a88117a05c3469af5d99433af140c3de8ca088 (patch)
treed7f0557756d8f07a3081b3498c05ddc5a8ad429d /nixpkgs/pkgs/development/ocaml-modules
parente97457545cea0b2ca421da257c83d8f1ef451d85 (diff)
parenta343533bccc62400e8a9560423486a3b6c11a23b (diff)
downloadnixlib-46a88117a05c3469af5d99433af140c3de8ca088.tar
nixlib-46a88117a05c3469af5d99433af140c3de8ca088.tar.gz
nixlib-46a88117a05c3469af5d99433af140c3de8ca088.tar.bz2
nixlib-46a88117a05c3469af5d99433af140c3de8ca088.tar.lz
nixlib-46a88117a05c3469af5d99433af140c3de8ca088.tar.xz
nixlib-46a88117a05c3469af5d99433af140c3de8ca088.tar.zst
nixlib-46a88117a05c3469af5d99433af140c3de8ca088.zip
Merge commit 'a343533bccc62400e8a9560423486a3b6c11a23b'
Diffstat (limited to 'nixpkgs/pkgs/development/ocaml-modules')
-rw-r--r--nixpkgs/pkgs/development/ocaml-modules/batteries/default.nix4
-rw-r--r--nixpkgs/pkgs/development/ocaml-modules/ctypes/default.nix50
-rw-r--r--nixpkgs/pkgs/development/ocaml-modules/ctypes/foreign.nix23
-rw-r--r--nixpkgs/pkgs/development/ocaml-modules/curly/default.nix6
-rw-r--r--nixpkgs/pkgs/development/ocaml-modules/domain-local-timeout/default.nix4
-rw-r--r--nixpkgs/pkgs/development/ocaml-modules/dscheck/default.nix4
-rw-r--r--nixpkgs/pkgs/development/ocaml-modules/hacl-star/raw.nix3
-rw-r--r--nixpkgs/pkgs/development/ocaml-modules/iso8601/default.nix4
-rw-r--r--nixpkgs/pkgs/development/ocaml-modules/janestreet/0.14.nix2
-rw-r--r--nixpkgs/pkgs/development/ocaml-modules/janestreet/0.15.nix2
-rw-r--r--nixpkgs/pkgs/development/ocaml-modules/janestreet/0.16.nix2
-rw-r--r--nixpkgs/pkgs/development/ocaml-modules/lilv/default.nix4
-rw-r--r--nixpkgs/pkgs/development/ocaml-modules/linenoise/default.nix4
-rw-r--r--nixpkgs/pkgs/development/ocaml-modules/lua-ml/default.nix4
-rw-r--r--nixpkgs/pkgs/development/ocaml-modules/magic-trace/default.nix40
-rw-r--r--nixpkgs/pkgs/development/ocaml-modules/mariadb/default.nix14
-rw-r--r--nixpkgs/pkgs/development/ocaml-modules/mirage-crypto/default.nix4
-rw-r--r--nixpkgs/pkgs/development/ocaml-modules/ocaml-version/default.nix4
-rw-r--r--nixpkgs/pkgs/development/ocaml-modules/odate/default.nix9
-rw-r--r--nixpkgs/pkgs/development/ocaml-modules/qcheck/multicoretests-util.nix4
-rw-r--r--nixpkgs/pkgs/development/ocaml-modules/srt/default.nix4
-rw-r--r--nixpkgs/pkgs/development/ocaml-modules/tar/default.nix4
-rw-r--r--nixpkgs/pkgs/development/ocaml-modules/torch/default.nix2
-rw-r--r--nixpkgs/pkgs/development/ocaml-modules/tsdl/default.nix4
-rw-r--r--nixpkgs/pkgs/development/ocaml-modules/vpl-core/default.nix31
-rw-r--r--nixpkgs/pkgs/development/ocaml-modules/xxhash/default.nix6
26 files changed, 161 insertions, 81 deletions
diff --git a/nixpkgs/pkgs/development/ocaml-modules/batteries/default.nix b/nixpkgs/pkgs/development/ocaml-modules/batteries/default.nix
index 6b9cff2143c9..2d013da25683 100644
--- a/nixpkgs/pkgs/development/ocaml-modules/batteries/default.nix
+++ b/nixpkgs/pkgs/development/ocaml-modules/batteries/default.nix
@@ -4,7 +4,7 @@
 
 buildDunePackage rec {
   pname = "batteries";
-  version = "3.7.2";
+  version = "3.8.0";
 
   minimalOCamlVersion = "4.05";
 
@@ -12,7 +12,7 @@ buildDunePackage rec {
     owner = "ocaml-batteries-team";
     repo = "batteries-included";
     rev = "v${version}";
-    hash = "sha256-POhdb6d4VZyCm9QYgj0m3ejduaBmm+cnd1tshWjgp04=";
+    hash = "sha256-Ixqfo2F4VftrIVF8oBOx/rSiJZppiwXOjVQ3Tcelxac=";
   };
 
   nativeCheckInputs = [ qtest ];
diff --git a/nixpkgs/pkgs/development/ocaml-modules/ctypes/default.nix b/nixpkgs/pkgs/development/ocaml-modules/ctypes/default.nix
index fa9cde044e8a..fa7bf6a587f0 100644
--- a/nixpkgs/pkgs/development/ocaml-modules/ctypes/default.nix
+++ b/nixpkgs/pkgs/development/ocaml-modules/ctypes/default.nix
@@ -1,49 +1,35 @@
-{ lib, stdenv, fetchFromGitHub, ocaml, findlib, libffi, pkg-config, ncurses, integers, bigarray-compat }:
-
-if lib.versionOlder ocaml.version "4.02"
-then throw "ctypes is not available for OCaml ${ocaml.version}"
-else
-
-stdenv.mkDerivation rec {
-  pname = "ocaml${ocaml.version}-ctypes";
-  version = "0.20.2";
+{ lib
+, ocaml
+, fetchFromGitHub
+, buildDunePackage
+, dune-configurator
+, integers
+, bigarray-compat
+, ounit2
+}:
+
+buildDunePackage rec {
+  pname = "ctypes";
+  version = "0.22.0";
 
   src = fetchFromGitHub {
     owner = "ocamllabs";
     repo = "ocaml-ctypes";
     rev = version;
-    hash = "sha256-LzUrR8K88CjY/R5yUK3y6KG85hUMjbzuebHGqI8KhhM=";
+    hash = "sha256-xgDKupQuakjHTbjoap/r2aAjNQUpH9K4HmeLbbgw1x4=";
   };
 
-  nativeBuildInputs = [ pkg-config ocaml findlib ];
-  buildInputs = [ ncurses ];
-  propagatedBuildInputs = [ integers libffi bigarray-compat ];
-
-  strictDeps = true;
-
-  preConfigure = ''
-    substituteInPlace META --replace ' bytes ' ' '
-  '';
+  buildInputs = [ dune-configurator ];
 
-  buildPhase = ''
-    runHook preBuild
-    make XEN=false libffi.config ctypes-base ctypes-stubs
-    make XEN=false ctypes-foreign
-    runHook postBuild
-  '';
+  propagatedBuildInputs = [ integers bigarray-compat ];
 
-  installPhase = ''
-    runHook preInstall
-    mkdir -p $out/lib/ocaml/${ocaml.version}/site-lib/stublibs
-    make install XEN=false
-    runHook postInstall
-  '';
+  doCheck = lib.versionAtLeast ocaml.version "4.08";
+  checkInputs = [ ounit2 ];
 
   meta = with lib; {
     homepage = "https://github.com/ocamllabs/ocaml-ctypes";
     description = "Library for binding to C libraries using pure OCaml";
     license = licenses.mit;
     maintainers = [ maintainers.ericbmerritt ];
-    inherit (ocaml.meta) platforms;
   };
 }
diff --git a/nixpkgs/pkgs/development/ocaml-modules/ctypes/foreign.nix b/nixpkgs/pkgs/development/ocaml-modules/ctypes/foreign.nix
new file mode 100644
index 000000000000..5c9efad790f2
--- /dev/null
+++ b/nixpkgs/pkgs/development/ocaml-modules/ctypes/foreign.nix
@@ -0,0 +1,23 @@
+{ buildDunePackage
+, ctypes
+, dune-configurator
+, libffi
+, ounit2
+, lwt
+}:
+
+buildDunePackage rec {
+  pname = "ctypes-foreign";
+
+  inherit (ctypes) version src doCheck;
+
+  buildInputs = [ dune-configurator ];
+
+  propagatedBuildInputs = [ ctypes libffi ];
+
+  checkInputs = [ ounit2 lwt ];
+
+  meta = ctypes.meta // {
+    description = "Dynamic access to foreign C libraries using Ctypes";
+  };
+}
diff --git a/nixpkgs/pkgs/development/ocaml-modules/curly/default.nix b/nixpkgs/pkgs/development/ocaml-modules/curly/default.nix
index 5f0e93f8f26d..03918c0d4829 100644
--- a/nixpkgs/pkgs/development/ocaml-modules/curly/default.nix
+++ b/nixpkgs/pkgs/development/ocaml-modules/curly/default.nix
@@ -4,15 +4,15 @@
 
 buildDunePackage rec {
   pname = "curly";
-  version = "0.2.0";
+  version = "0.3.0";
 
-  minimalOCamlVersion = "4.02";
+  minimalOCamlVersion = "4.03";
 
   duneVersion = "3";
 
   src = fetchurl {
     url = "https://github.com/rgrinberg/curly/releases/download/${version}/curly-${version}.tbz";
-    hash = "sha256-01D1+03CqxLrPoBbNWpSKOzABJf63DhQLA1kRWdueB8=";
+    hash = "sha256-Qn/PKBNOcMt3dk2f7uJD8x0yo4RHobXSjTQck7fcXTw=";
   };
 
   propagatedBuildInputs = [ result ];
diff --git a/nixpkgs/pkgs/development/ocaml-modules/domain-local-timeout/default.nix b/nixpkgs/pkgs/development/ocaml-modules/domain-local-timeout/default.nix
index 1baef274006f..f0a1874acad2 100644
--- a/nixpkgs/pkgs/development/ocaml-modules/domain-local-timeout/default.nix
+++ b/nixpkgs/pkgs/development/ocaml-modules/domain-local-timeout/default.nix
@@ -6,13 +6,13 @@
 
 buildDunePackage rec {
   pname = "domain-local-timeout";
-  version = "0.1.0";
+  version = "1.0.1";
 
   minimalOCamlVersion = "4.12";
 
   src = fetchurl {
     url = "https://github.com/ocaml-multicore/domain-local-timeout/releases/download/${version}/domain-local-timeout-${version}.tbz";
-    hash = "sha256-UTqcHdGAN/LrvumPhW4Cy6RY8RJ/iVO5zTJKrhPRTjk=";
+    hash = "sha256-6sCqUkOjN8E+7OLUwVQntkv0vrQDkGDV8KNqDhVm0d8=";
   };
 
   propagatedBuildInputs = [ mtime psq thread-table ];
diff --git a/nixpkgs/pkgs/development/ocaml-modules/dscheck/default.nix b/nixpkgs/pkgs/development/ocaml-modules/dscheck/default.nix
index a684a46fdd44..a2dd8bd9d2a9 100644
--- a/nixpkgs/pkgs/development/ocaml-modules/dscheck/default.nix
+++ b/nixpkgs/pkgs/development/ocaml-modules/dscheck/default.nix
@@ -6,13 +6,13 @@
 
 buildDunePackage rec {
   pname = "dscheck";
-  version = "0.2.0";
+  version = "0.4.0";
 
   minimalOCamlVersion = "5.0";
 
   src = fetchurl {
     url = "https://github.com/ocaml-multicore/dscheck/releases/download/${version}/dscheck-${version}.tbz";
-    hash = "sha256-QgkbnD3B1lONg9U60BM2xWVgIt6pZNmOmxkKy+UJH9E=";
+    hash = "sha256-WWqa2O1y7krpIcxG7KLprn9SIQoWGSD3lgpXLZ9P9kA=";
   };
 
   propagatedBuildInputs = [ containers oseq ];
diff --git a/nixpkgs/pkgs/development/ocaml-modules/hacl-star/raw.nix b/nixpkgs/pkgs/development/ocaml-modules/hacl-star/raw.nix
index 00b524606fcf..b4b8c1741535 100644
--- a/nixpkgs/pkgs/development/ocaml-modules/hacl-star/raw.nix
+++ b/nixpkgs/pkgs/development/ocaml-modules/hacl-star/raw.nix
@@ -27,7 +27,10 @@ stdenv.mkDerivation rec {
   # strictoverflow is disabled because it breaks aarch64-darwin
   hardeningDisable = [ "strictoverflow" ];
 
+  # Compatibility with ctypes ≥ 0.21
+  # see: https://github.com/cryspen/hacl-packages/commit/81303b83a54a92d3b5f54f1b8ddbea60438cc2bf
   postPatch = ''
+    substituteInPlace hacl-star-raw/META --replace-warn 'requires="ctypes"' 'requires="ctypes ctypes.stubs"'
     patchShebangs ./
   '';
 
diff --git a/nixpkgs/pkgs/development/ocaml-modules/iso8601/default.nix b/nixpkgs/pkgs/development/ocaml-modules/iso8601/default.nix
index ff9ce94bbbd4..5c6d4104b6a3 100644
--- a/nixpkgs/pkgs/development/ocaml-modules/iso8601/default.nix
+++ b/nixpkgs/pkgs/development/ocaml-modules/iso8601/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   pname = "ocaml-iso8601";
-  version = "0.2.4";
+  version = "0.2.5";
 
   src = fetchFromGitHub {
     owner = "sagotch";
     repo = "ISO8601.ml";
     rev = version;
-    sha256 = "sha256-sXnYAJcU88797orzzfbA2XG91Lk8mDV677J1Am5o7Xo=";
+    sha256 = "sha256-QWjZ+2AjvXnnRVenbyCG/hSjfW53bHiftQUtWpK/7I8=";
   };
 
   nativeBuildInputs = [ ocaml findlib ocamlbuild ];
diff --git a/nixpkgs/pkgs/development/ocaml-modules/janestreet/0.14.nix b/nixpkgs/pkgs/development/ocaml-modules/janestreet/0.14.nix
index 249f9c3115d6..7d8bdc4dfb7d 100644
--- a/nixpkgs/pkgs/development/ocaml-modules/janestreet/0.14.nix
+++ b/nixpkgs/pkgs/development/ocaml-modules/janestreet/0.14.nix
@@ -130,7 +130,7 @@ with self;
     hash = "0ykys3ckpsx5crfgj26v2q3gy6wf684aq0bfb4q8p92ivwznvlzy";
     meta.description = "Async wrappers for SSL";
     buildInputs = [ dune-configurator ];
-    propagatedBuildInputs = [ async ctypes openssl ];
+    propagatedBuildInputs = [ async ctypes ctypes-foreign openssl ];
     # in ctypes.foreign 0.18.0 threaded and unthreaded have been merged
     postPatch = ''
       substituteInPlace bindings/dune \
diff --git a/nixpkgs/pkgs/development/ocaml-modules/janestreet/0.15.nix b/nixpkgs/pkgs/development/ocaml-modules/janestreet/0.15.nix
index ccd2d4eab299..f64e228a2b81 100644
--- a/nixpkgs/pkgs/development/ocaml-modules/janestreet/0.15.nix
+++ b/nixpkgs/pkgs/development/ocaml-modules/janestreet/0.15.nix
@@ -144,7 +144,7 @@ with self;
     hash = "1b7f7p3xj4jr2n2dxy2lp7a9k7944w6x2nrg6524clvcsd1ax4hn";
     meta.description = "Async wrappers for SSL";
     buildInputs = [ dune-configurator ];
-    propagatedBuildInputs = [ async ctypes openssl ];
+    propagatedBuildInputs = [ async ctypes ctypes-foreign openssl ];
     # in ctypes.foreign 0.18.0 threaded and unthreaded have been merged
     postPatch = ''
       substituteInPlace bindings/dune \
diff --git a/nixpkgs/pkgs/development/ocaml-modules/janestreet/0.16.nix b/nixpkgs/pkgs/development/ocaml-modules/janestreet/0.16.nix
index bba99ebb29d1..562364df53bc 100644
--- a/nixpkgs/pkgs/development/ocaml-modules/janestreet/0.16.nix
+++ b/nixpkgs/pkgs/development/ocaml-modules/janestreet/0.16.nix
@@ -146,7 +146,7 @@ with self;
     hash = "sha256-83YKxvVb/JwBnQG4R/R1Ztik9T/hO4cbiNTfFnErpG4=";
     meta.description = "Async wrappers for SSL";
     buildInputs = [ dune-configurator ];
-    propagatedBuildInputs = [ async ctypes openssl ];
+    propagatedBuildInputs = [ async ctypes ctypes-foreign openssl ];
   };
 
   async_unix = janePackage {
diff --git a/nixpkgs/pkgs/development/ocaml-modules/lilv/default.nix b/nixpkgs/pkgs/development/ocaml-modules/lilv/default.nix
index 501182db7a96..a5def260eb29 100644
--- a/nixpkgs/pkgs/development/ocaml-modules/lilv/default.nix
+++ b/nixpkgs/pkgs/development/ocaml-modules/lilv/default.nix
@@ -1,4 +1,4 @@
-{ lib, buildDunePackage, fetchFromGitHub, dune-configurator, ctypes, lilv }:
+{ lib, buildDunePackage, fetchFromGitHub, dune-configurator, ctypes, ctypes-foreign, lilv }:
 
 buildDunePackage rec {
   pname = "lilv";
@@ -14,7 +14,7 @@ buildDunePackage rec {
   minimalOCamlVersion = "4.03.0";
 
   buildInputs = [ dune-configurator ];
-  propagatedBuildInputs = [ ctypes lilv ];
+  propagatedBuildInputs = [ ctypes ctypes-foreign lilv ];
 
   meta = with lib; {
     homepage = "https://github.com/savonet/ocaml-lilv";
diff --git a/nixpkgs/pkgs/development/ocaml-modules/linenoise/default.nix b/nixpkgs/pkgs/development/ocaml-modules/linenoise/default.nix
index dfd8d585e9b8..c096e2542396 100644
--- a/nixpkgs/pkgs/development/ocaml-modules/linenoise/default.nix
+++ b/nixpkgs/pkgs/development/ocaml-modules/linenoise/default.nix
@@ -2,7 +2,7 @@
 
 buildDunePackage rec {
   pname = "linenoise";
-  version = "1.4.0";
+  version = "1.5";
 
   minimalOCamlVersion = "4.03";
 
@@ -10,7 +10,7 @@ buildDunePackage rec {
     owner = "fxfactorial";
     repo = "ocaml-${pname}";
     rev = "v${version}";
-    sha256 = "sha256-bIpZ9TO4/j24nQw5nsW7fUF7af5lhd/EmwhQRd0NYb4=";
+    sha256 = "sha256-ywcL5w65XXqInREalf0aDxvoEYA6tZW9eU5NGI/QETI=";
   };
 
   propagatedBuildInputs = [ result ];
diff --git a/nixpkgs/pkgs/development/ocaml-modules/lua-ml/default.nix b/nixpkgs/pkgs/development/ocaml-modules/lua-ml/default.nix
index 523e453b7d48..5c48b763fc51 100644
--- a/nixpkgs/pkgs/development/ocaml-modules/lua-ml/default.nix
+++ b/nixpkgs/pkgs/development/ocaml-modules/lua-ml/default.nix
@@ -7,13 +7,13 @@ else
 stdenv.mkDerivation rec {
   pname = "lua-ml";
   name = "ocaml${ocaml.version}-${pname}-${version}";
-  version = "0.9.1";
+  version = "0.9.2";
 
   src = fetchFromGitHub {
     owner = "lindig";
     repo = pname;
     rev = version;
-    sha256 = "04lv98nxmzanvyn4c0k6k0ax29f5xfdl8qzpf5hwadslq213a044";
+    sha256 = "sha256-xkjsjKD89W7Y5XK8kfL/ZErYKS14z0u0QCARN0DbTC8=";
   };
 
   nativeBuildInputs = [ opaline ocaml findlib ocamlbuild ];
diff --git a/nixpkgs/pkgs/development/ocaml-modules/magic-trace/default.nix b/nixpkgs/pkgs/development/ocaml-modules/magic-trace/default.nix
index 39bdca1119a4..8fdd92f81329 100644
--- a/nixpkgs/pkgs/development/ocaml-modules/magic-trace/default.nix
+++ b/nixpkgs/pkgs/development/ocaml-modules/magic-trace/default.nix
@@ -1,21 +1,49 @@
-{ lib, fetchFromGitHub, buildDunePackage, async, cohttp_static_handler ? null
-, core_unix ? null, owee, ppx_jane, shell ? null }:
+{ lib
+, fetchFromGitHub
+, buildDunePackage
+, ocaml-crunch
+, angstrom
+, async
+, cohttp
+, cohttp_static_handler ? null
+, core
+, core_unix ? null
+, fzf
+, owee
+, ppx_jane
+, re
+, shell ? null
+}:
 
 buildDunePackage rec {
   pname = "magic-trace";
-  version = "1.1.0";
+  version = "1.2.1";
 
   minimalOCamlVersion = "4.12";
-  duneVersion = "3";
 
   src = fetchFromGitHub {
     owner = "janestreet";
     repo = "magic-trace";
     rev = "v${version}";
-    sha256 = "sha256-615AOkrbQI6vRosA5Kz3Epipe9f9+Gs9+g3bVl5gzBY=";
+    hash = "sha256-/9TDjCG/06mhGyqbjAdUmk6fcaq9fNDqVSw51w5EEy4=";
   };
 
-  buildInputs = [ async cohttp_static_handler core_unix owee ppx_jane shell ];
+  nativeBuildInputs = [
+    ocaml-crunch
+  ];
+  buildInputs = [
+    angstrom
+    async
+    cohttp
+    cohttp_static_handler
+    core
+    core_unix
+    fzf
+    owee
+    ppx_jane
+    re
+    shell
+  ];
 
   meta = with lib; {
     description =
diff --git a/nixpkgs/pkgs/development/ocaml-modules/mariadb/default.nix b/nixpkgs/pkgs/development/ocaml-modules/mariadb/default.nix
index 397402481839..3ac6027b22fd 100644
--- a/nixpkgs/pkgs/development/ocaml-modules/mariadb/default.nix
+++ b/nixpkgs/pkgs/development/ocaml-modules/mariadb/default.nix
@@ -15,10 +15,16 @@ stdenv.mkDerivation rec {
     sha256 = "sha256-3/C1Gz6luUzS7oaudLlDHMT6JB2v5OdbLVzJhtayHGM=";
   };
 
-  patches = fetchpatch {
-    url = "https://github.com/andrenth/ocaml-mariadb/commit/9db2e4d8dec7c584213d0e0f03d079a36a35d9d5.patch";
-    hash = "sha256-heROtU02cYBJ5edIHMdYP1xNXcLv8h79GYGBuudJhgE=";
-  };
+  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"' \
diff --git a/nixpkgs/pkgs/development/ocaml-modules/mirage-crypto/default.nix b/nixpkgs/pkgs/development/ocaml-modules/mirage-crypto/default.nix
index 3c8b00285e97..74e9a455bebe 100644
--- a/nixpkgs/pkgs/development/ocaml-modules/mirage-crypto/default.nix
+++ b/nixpkgs/pkgs/development/ocaml-modules/mirage-crypto/default.nix
@@ -8,11 +8,11 @@ buildDunePackage rec {
   duneVersion = "3";
 
   pname = "mirage-crypto";
-  version = "0.11.2";
+  version = "0.11.3";
 
   src = fetchurl {
     url = "https://github.com/mirage/mirage-crypto/releases/download/v${version}/mirage-crypto-${version}.tbz";
-    sha256 = "sha256-1rl8t/DcNEpgJRPMAxN8Hn8K4QXQchYUYmz08jHt92Q=";
+    sha256 = "sha256-v7Uw+hac2QXrx+JEnzQHz71nAjrAspG4tvShQ3pdlbE=";
   };
 
   doCheck = true;
diff --git a/nixpkgs/pkgs/development/ocaml-modules/ocaml-version/default.nix b/nixpkgs/pkgs/development/ocaml-modules/ocaml-version/default.nix
index 16f0242a9bf7..547c31cc9eab 100644
--- a/nixpkgs/pkgs/development/ocaml-modules/ocaml-version/default.nix
+++ b/nixpkgs/pkgs/development/ocaml-modules/ocaml-version/default.nix
@@ -2,11 +2,11 @@
 
 buildDunePackage rec {
   pname = "ocaml-version";
-  version = "3.6.2";
+  version = "3.6.4";
 
   src = fetchurl {
     url = "https://github.com/ocurrent/ocaml-version/releases/download/v${version}/ocaml-version-${version}.tbz";
-    hash = "sha256-XJ0xq71ZiR39phQIULXFDLHoj3HntxLI+v2gR0Bp/rI=";
+    hash = "sha256-JwvOv+Q4gevAnIl73l6juQc3t2c+5BAPjAxs/zIYctw=";
   };
 
   checkInputs = [ alcotest ];
diff --git a/nixpkgs/pkgs/development/ocaml-modules/odate/default.nix b/nixpkgs/pkgs/development/ocaml-modules/odate/default.nix
index a16fbc578d33..89c47781a8fb 100644
--- a/nixpkgs/pkgs/development/ocaml-modules/odate/default.nix
+++ b/nixpkgs/pkgs/development/ocaml-modules/odate/default.nix
@@ -4,7 +4,7 @@
 
 buildDunePackage rec {
   pname = "odate";
-  version = "0.6";
+  version = "0.7";
 
   minimalOCamlVersion = "4.07";
 
@@ -12,16 +12,11 @@ buildDunePackage rec {
     owner = "hhugo";
     repo = pname;
     rev = version;
-    sha256 = "1dk33lr0g2jnia2gqsm6nnc7nf256qgkm3v30w477gm6y2ppfm3h";
+    sha256 = "sha256-C11HpftrYOCVyWT31wrqo8FVZuP7mRUkRv5IDeAZ+To=";
   };
 
   nativeBuildInputs = [ menhir ];
 
-  # Ensure compatibility of v0.6 with menhir ≥ 20220210
-  preBuild = ''
-    substituteInPlace dune-project --replace "(using menhir 1.0)" "(using menhir 2.0)"
-  '';
-
   meta = {
     description = "Date and duration in OCaml";
     inherit (src.meta) homepage;
diff --git a/nixpkgs/pkgs/development/ocaml-modules/qcheck/multicoretests-util.nix b/nixpkgs/pkgs/development/ocaml-modules/qcheck/multicoretests-util.nix
index ec3ba0b1dac1..84355d916085 100644
--- a/nixpkgs/pkgs/development/ocaml-modules/qcheck/multicoretests-util.nix
+++ b/nixpkgs/pkgs/development/ocaml-modules/qcheck/multicoretests-util.nix
@@ -4,13 +4,13 @@
 
 buildDunePackage rec {
   pname = "qcheck-multicoretests-util";
-  version = "0.2";
+  version = "0.3";
 
   src = fetchFromGitHub {
     owner = "ocaml-multicore";
     repo = "multicoretests";
     rev = version;
-    hash = "sha256-U1ZqfWMwpAvbPq5yp2U9YTFklT4MypzTSfNvcKJfaYE=";
+    hash = "sha256-0fbMDksC23jojJV+aegBoSwKf1hNzDUvDEbo31HUDoM=";
   };
 
   propagatedBuildInputs = [ qcheck-core ];
diff --git a/nixpkgs/pkgs/development/ocaml-modules/srt/default.nix b/nixpkgs/pkgs/development/ocaml-modules/srt/default.nix
index 92431fcb3489..d1e5ecd9ad55 100644
--- a/nixpkgs/pkgs/development/ocaml-modules/srt/default.nix
+++ b/nixpkgs/pkgs/development/ocaml-modules/srt/default.nix
@@ -2,6 +2,7 @@
 , dune-configurator
 , posix-socket
 , srt
+, ctypes-foreign
 }:
 
 buildDunePackage rec {
@@ -9,7 +10,6 @@ buildDunePackage rec {
   version = "0.3.0";
 
   minimalOCamlVersion = "4.08";
-  duneVersion = "3";
 
   src = fetchFromGitHub {
     owner = "savonet";
@@ -19,7 +19,7 @@ buildDunePackage rec {
   };
 
   buildInputs = [ dune-configurator ];
-  propagatedBuildInputs = [ posix-socket srt ];
+  propagatedBuildInputs = [ ctypes-foreign posix-socket srt ];
 
   meta = with lib; {
     description = "OCaml bindings for the libsrt library";
diff --git a/nixpkgs/pkgs/development/ocaml-modules/tar/default.nix b/nixpkgs/pkgs/development/ocaml-modules/tar/default.nix
index 3a21fd21a0c3..f0d8876fd41e 100644
--- a/nixpkgs/pkgs/development/ocaml-modules/tar/default.nix
+++ b/nixpkgs/pkgs/development/ocaml-modules/tar/default.nix
@@ -8,10 +8,10 @@
 
 buildDunePackage rec {
   pname = "tar";
-  version = "2.5.1";
+  version = "2.6.0";
   src = fetchurl {
     url = "https://github.com/mirage/ocaml-tar/releases/download/v${version}/tar-${version}.tbz";
-    hash = "sha256-00QPSIZnoFvhZEnDcdEDJUqhE0uKLxNMM2pUE8aMPfQ=";
+    hash = "sha256-yv8MtwRjQ+K/9/wPkhfk4xI1VV5MSIn7GUeSmFtvse4=";
   };
 
   minimalOCamlVersion = "4.08";
diff --git a/nixpkgs/pkgs/development/ocaml-modules/torch/default.nix b/nixpkgs/pkgs/development/ocaml-modules/torch/default.nix
index a22a9ea68ddc..5acef0f2a72c 100644
--- a/nixpkgs/pkgs/development/ocaml-modules/torch/default.nix
+++ b/nixpkgs/pkgs/development/ocaml-modules/torch/default.nix
@@ -5,6 +5,7 @@
 , fetchpatch
 , cmdliner
 , ctypes
+, ctypes-foreign
 , dune-configurator
 , npy
 , ocaml-compiler-libs
@@ -42,6 +43,7 @@ buildDunePackage rec {
   propagatedBuildInputs = [
     cmdliner
     ctypes
+    ctypes-foreign
     npy
     ocaml-compiler-libs
     ppx_custom_printf
diff --git a/nixpkgs/pkgs/development/ocaml-modules/tsdl/default.nix b/nixpkgs/pkgs/development/ocaml-modules/tsdl/default.nix
index 14c29f3daee0..2d35f76d5bf0 100644
--- a/nixpkgs/pkgs/development/ocaml-modules/tsdl/default.nix
+++ b/nixpkgs/pkgs/development/ocaml-modules/tsdl/default.nix
@@ -1,4 +1,4 @@
-{ lib, stdenv, fetchurl, ocaml, findlib, ocamlbuild, topkg, ctypes, result, SDL2, pkg-config
+{ lib, stdenv, fetchurl, ocaml, findlib, ocamlbuild, topkg, ctypes, ctypes-foreign, result, SDL2, pkg-config
 , AudioToolbox, Cocoa, CoreAudio, CoreVideo, ForceFeedback }:
 
 if lib.versionOlder ocaml.version "4.03"
@@ -24,7 +24,7 @@ stdenv.mkDerivation {
 
   nativeBuildInputs = [ pkg-config ocaml findlib ocamlbuild topkg ];
   buildInputs = [ topkg ];
-  propagatedBuildInputs = [ SDL2 ctypes ]
+  propagatedBuildInputs = [ SDL2 ctypes ctypes-foreign ]
     ++ lib.optionals stdenv.isDarwin [ AudioToolbox Cocoa CoreAudio CoreVideo ForceFeedback ];
 
   preConfigure = ''
diff --git a/nixpkgs/pkgs/development/ocaml-modules/vpl-core/default.nix b/nixpkgs/pkgs/development/ocaml-modules/vpl-core/default.nix
new file mode 100644
index 000000000000..08f8eccacc6b
--- /dev/null
+++ b/nixpkgs/pkgs/development/ocaml-modules/vpl-core/default.nix
@@ -0,0 +1,31 @@
+{ lib
+, fetchFromGitHub
+, buildDunePackage
+, zarith
+}:
+
+buildDunePackage rec {
+  pname = "vpl-core";
+  version = "0.5";
+
+  minimalOCamlVersion = "4.07";
+
+  src = fetchFromGitHub {
+    owner = "VERIMAG-Polyhedra";
+    repo = "vpl";
+    rev = version;
+    hash = "sha256-mSD/xSweeK9WMxWDdX/vzN96iXo74RkufjuNvtzsP9o=";
+  };
+
+  propagatedBuildInputs = [
+    zarith
+  ];
+
+  meta = {
+    description = "Verified Polyhedra Library";
+    homepage = "https://amarechal.gitlab.io/home/projects/vpl/";
+    license = lib.licenses.lgpl3Only;
+    maintainers = [ lib.maintainers.vbgl ];
+  };
+
+}
diff --git a/nixpkgs/pkgs/development/ocaml-modules/xxhash/default.nix b/nixpkgs/pkgs/development/ocaml-modules/xxhash/default.nix
index fe212dd0eb70..d8ef8f3d60ef 100644
--- a/nixpkgs/pkgs/development/ocaml-modules/xxhash/default.nix
+++ b/nixpkgs/pkgs/development/ocaml-modules/xxhash/default.nix
@@ -3,6 +3,7 @@
 , buildDunePackage
 , xxHash
 , ctypes
+, ctypes-foreign
 , dune-configurator
 , ppx_expect
 }:
@@ -20,12 +21,17 @@ buildDunePackage rec {
     hash = "sha256-0+ac5EWV9DCVMT4wOcXC95GVEwsUIZzFn2laSzmK6jE=";
   };
 
+  postPatch = ''
+    substituteInPlace stubs/dune --replace-warn 'ctypes))' 'ctypes ctypes.stubs))'
+  '';
+
   buildInputs = [
     dune-configurator
   ];
 
   propagatedBuildInputs = [
     ctypes
+    ctypes-foreign
     xxHash
   ];