From c9fd2bba84f3bfce734b123e2e099fa25b2c08cf Mon Sep 17 00:00:00 2001 From: Vincent Laporte Date: Mon, 22 Jun 2026 06:14:53 +0200 Subject: [PATCH] =?UTF-8?q?ocamlPackages.pbrt:=202.4=20=E2=86=92=204.1?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit ocamlPackages.ocaml-protoc: 2.4 → 4.1 ocamlPackages.pbrt_services: init at 4.1 ocamlPackages.pbrt_yojson: init at 4.1 (cherry picked from commit 67e55530a27eee83e81580c3ec33b82b41ee288e) --- .../ocaml-modules/ocaml-protoc/default.nix | 6 +++++- .../ocaml-modules/pbrt/default.nix | 8 +++---- .../ocaml-modules/pbrt/services.nix | 19 +++++++++++++++++ .../development/ocaml-modules/pbrt/yojson.nix | 21 +++++++++++++++++++ pkgs/top-level/ocaml-packages.nix | 4 ++++ 5 files changed, 52 insertions(+), 6 deletions(-) create mode 100644 pkgs/development/ocaml-modules/pbrt/services.nix create mode 100644 pkgs/development/ocaml-modules/pbrt/yojson.nix diff --git a/pkgs/development/ocaml-modules/ocaml-protoc/default.nix b/pkgs/development/ocaml-modules/ocaml-protoc/default.nix index 8d9d3a768209..79c9f37942da 100644 --- a/pkgs/development/ocaml-modules/ocaml-protoc/default.nix +++ b/pkgs/development/ocaml-modules/ocaml-protoc/default.nix @@ -1,7 +1,10 @@ { + lib, + ocaml, buildDunePackage, pbrt, stdlib-shims, + pbrt_services, }: buildDunePackage { @@ -12,7 +15,8 @@ buildDunePackage { buildInputs = [ stdlib-shims ]; propagatedBuildInputs = [ pbrt ]; - doCheck = true; + doCheck = lib.versionAtLeast ocaml.version "5.1"; + checkInputs = [ pbrt_services ]; meta = pbrt.meta // { description = "Protobuf Compiler for OCaml"; diff --git a/pkgs/development/ocaml-modules/pbrt/default.nix b/pkgs/development/ocaml-modules/pbrt/default.nix index 10df7382f287..102916dad809 100644 --- a/pkgs/development/ocaml-modules/pbrt/default.nix +++ b/pkgs/development/ocaml-modules/pbrt/default.nix @@ -6,15 +6,13 @@ buildDunePackage (finalAttrs: { pname = "pbrt"; - version = "2.4"; - - minimalOCamlVersion = "4.03"; + version = "4.1"; src = fetchFromGitHub { owner = "mransan"; repo = "ocaml-protoc"; - rev = "${finalAttrs.version}.0"; - hash = "sha256-EXugdcjALukSjB31zAVG9WiN6GMGXi2jlhHWaZ+p+uM="; + tag = "v${finalAttrs.version}"; + hash = "sha256-UrgrzI5Pgi79C/OhqYxwSNfqsoBULUZ13XVaB71fGes="; }; meta = { diff --git a/pkgs/development/ocaml-modules/pbrt/services.nix b/pkgs/development/ocaml-modules/pbrt/services.nix new file mode 100644 index 000000000000..1d02a4a657ba --- /dev/null +++ b/pkgs/development/ocaml-modules/pbrt/services.nix @@ -0,0 +1,19 @@ +{ + buildDunePackage, + pbrt, + pbrt_yojson, +}: + +buildDunePackage { + pname = "pbrt_services"; + inherit (pbrt) version src; + + propagatedBuildInputs = [ + pbrt + pbrt_yojson + ]; + + meta = pbrt.meta // { + description = "Runtime library for ocaml-protoc to support RPC services"; + }; +} diff --git a/pkgs/development/ocaml-modules/pbrt/yojson.nix b/pkgs/development/ocaml-modules/pbrt/yojson.nix new file mode 100644 index 000000000000..a352408b7503 --- /dev/null +++ b/pkgs/development/ocaml-modules/pbrt/yojson.nix @@ -0,0 +1,21 @@ +{ + buildDunePackage, + pbrt, + base64, + yojson, +}: + +buildDunePackage { + pname = "pbrt_yojson"; + inherit (pbrt) version src; + + propagatedBuildInputs = [ + pbrt + base64 + yojson + ]; + + meta = pbrt.meta // { + description = "Runtime library for ocaml-protoc to support JSON encoding/decoding"; + }; +} diff --git a/pkgs/top-level/ocaml-packages.nix b/pkgs/top-level/ocaml-packages.nix index a06a161d2c60..7e578f84b7b9 100644 --- a/pkgs/top-level/ocaml-packages.nix +++ b/pkgs/top-level/ocaml-packages.nix @@ -1713,6 +1713,10 @@ let pbrt = callPackage ../development/ocaml-modules/pbrt { }; + pbrt_services = callPackage ../development/ocaml-modules/pbrt/services.nix { }; + + pbrt_yojson = callPackage ../development/ocaml-modules/pbrt/yojson.nix { }; + pcre2 = callPackage ../development/ocaml-modules/pcre2 { inherit (pkgs) pcre2; };