Commit 43c98b9e authored by toastal's avatar toastal Committed by Vincent Laporte
Browse files

ocamlPackages.bytesrw: init at 0.1.0

parent 2a9cc358
Loading
Loading
Loading
Loading
+48 −0
Original line number Diff line number Diff line
{
  lib,
  fetchzip,
  libblake3,
  libmd,
  xxHash,
  zlib,
  zstd,
  buildTopkgPackage,
}:

buildTopkgPackage rec {
  pname = "bytesrw";
  version = "0.1.0";

  minimalOCamlVersion = "4.14.0";

  src = fetchzip {
    url = "https://erratique.ch/software/bytesrw/releases/bytesrw-${version}.tbz";
    hash = "sha256-leH3uo5Q8ba22A/Mbl9pio0tW/IxCTGp77Cra7l4D80=";
  };

  # docs say these are optional, but buildTopkgPackage doesn’t handle missing
  # dependencies

  buildInputs = [
    libblake3
    libmd
    xxHash
    zlib
    zstd
  ];

  meta = {
    description = "composable, memory efficient, byte stream readers and writers compatible with effect-based concurrency";
    longDescription = ''
      Bytesrw extends the OCaml Bytes module with composable, memory efficient,
      byte stream readers and writers compatible with effect-based concurrency.

      Except for byte slice life-times, these abstractions intentionnaly
      separate away ressource management and the specifics of reading and
      writing bytes.
    '';
    homepage = "https://erratique.ch/software/bytesrw";
    license = lib.licenses.isc;
    maintainers = with lib.maintainers; [ toastal ];
  };
}
+2 −0
Original line number Diff line number Diff line
@@ -141,6 +141,8 @@ let

        bwd = callPackage ../development/ocaml-modules/bwd { };

        bytesrw = callPackage ../development/ocaml-modules/bytesrw { };

        bytestring = callPackage ../development/ocaml-modules/bytestring { };

        bz2 = callPackage ../development/ocaml-modules/bz2 { };