From 5acd5f7d47f455f20179bfd3e9e88dc1d63cd33d Mon Sep 17 00:00:00 2001 From: Akira Komamura Date: Tue, 22 Sep 2026 21:31:45 +0900 Subject: [PATCH] ocamlPackages.capnp-rpc: init at 2.1.2-unstable-2026-09-13 --- .../ocaml-modules/capnp-rpc/default.nix | 56 +++++++++++++++++++ pkgs/top-level/ocaml-packages.nix | 2 + 2 files changed, 58 insertions(+) create mode 100644 pkgs/development/ocaml-modules/capnp-rpc/default.nix diff --git a/pkgs/development/ocaml-modules/capnp-rpc/default.nix b/pkgs/development/ocaml-modules/capnp-rpc/default.nix new file mode 100644 index 000000000000..88a8653ce46a --- /dev/null +++ b/pkgs/development/ocaml-modules/capnp-rpc/default.nix @@ -0,0 +1,56 @@ +{ + lib, + buildDunePackage, + fetchFromGitHub, + alcotest, + astring, + capnp, + capnproto, + eio, + fmt, + logs, + stdint, + uri, +}: + +buildDunePackage (finalAttrs: { + pname = "capnp-rpc"; + version = "2.1.2-unstable-2026-09-13"; + + minimalOCamlVersion = "5.2"; + + src = fetchFromGitHub { + owner = "mirage"; + repo = "capnp-rpc"; + rev = "256ad12f21931f04eb88ad4d5cc966b7829bd906"; + hash = "sha256-zibjsyp4Vin0sZrwWio+h/88bdsVfmFEA7aPmc1IRg0="; + }; + + nativeBuildInputs = [ + capnp + capnproto + ]; + + propagatedBuildInputs = [ + astring + capnp + fmt + logs + eio + stdint + uri + ]; + + checkInputs = [ + alcotest + ]; + + doCheck = true; + + meta = { + description = "Cap'n Proto RPC library for OCaml"; + homepage = "https://github.com/mirage/capnp-rpc"; + changelog = "https://github.com/mirage/capnp-rpc/blob/v${finalAttrs.version}/CHANGES.md"; + license = lib.licenses.asl20; + }; +}) diff --git a/pkgs/top-level/ocaml-packages.nix b/pkgs/top-level/ocaml-packages.nix index ab60a963ef31..20e3a8008bc6 100644 --- a/pkgs/top-level/ocaml-packages.nix +++ b/pkgs/top-level/ocaml-packages.nix @@ -217,6 +217,8 @@ let capnp = callPackage ../development/ocaml-modules/capnp { }; + capnp-rpc = callPackage ../development/ocaml-modules/capnp-rpc { }; + caqti = callPackage ../development/ocaml-modules/caqti { }; caqti-async = callPackage ../development/ocaml-modules/caqti/async.nix { };