Merge pull request #32585 from vbgl/ocaml-lru-0.2.0
Add OCaml libraries: psq, lru, faraday, farfadet, digestif
This commit is contained in:
commit
e3d363546a
29
pkgs/development/ocaml-modules/digestif/default.nix
Normal file
29
pkgs/development/ocaml-modules/digestif/default.nix
Normal file
@ -0,0 +1,29 @@
|
||||
{ stdenv, fetchurl, ocaml, findlib, ocamlbuild, topkg }:
|
||||
|
||||
if !stdenv.lib.versionAtLeast ocaml.version "4.3"
|
||||
then throw "digestif is not available for OCaml ${ocaml.version}"
|
||||
else
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "ocaml${ocaml.version}-digestif-${version}";
|
||||
version = "0.5";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://github.com/mirage/digestif/releases/download/v${version}/digestif-${version}.tbz";
|
||||
sha256 = "0fsyfi5ps17j3wjav5176gf6z3a5xcw9aqhcr1gml9n9ayfbkhrd";
|
||||
};
|
||||
|
||||
unpackCmd = "tar -xjf $curSrc";
|
||||
|
||||
buildInputs = [ ocaml findlib ocamlbuild topkg ];
|
||||
|
||||
inherit (topkg) buildPhase installPhase;
|
||||
|
||||
meta = {
|
||||
description = "Simple hash algorithms in OCaml";
|
||||
homepage = "https://github.com/mirage/digestif";
|
||||
license = stdenv.lib.licenses.mit;
|
||||
maintainers = [ stdenv.lib.maintainers.vbgl ];
|
||||
inherit (ocaml.meta) platforms;
|
||||
};
|
||||
}
|
34
pkgs/development/ocaml-modules/faraday/default.nix
Normal file
34
pkgs/development/ocaml-modules/faraday/default.nix
Normal file
@ -0,0 +1,34 @@
|
||||
{ stdenv, fetchFromGitHub, ocaml, findlib, jbuilder, alcotest }:
|
||||
|
||||
if !stdenv.lib.versionAtLeast ocaml.version "4.02"
|
||||
then throw "faraday is not available for OCaml ${ocaml.version}"
|
||||
else
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "ocaml${ocaml.version}-faraday-${version}";
|
||||
version = "0.5.0";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "inhabitedtype";
|
||||
repo = "faraday";
|
||||
rev = version;
|
||||
sha256 = "1kql0il1frsbx6rvwqd7ahi4m14ik6la5an6c2w4x7k00ndm4d7n";
|
||||
};
|
||||
|
||||
buildInputs = [ ocaml findlib jbuilder alcotest ];
|
||||
|
||||
buildPhase = "jbuilder build -p faraday";
|
||||
|
||||
doCheck = true;
|
||||
checkPhase = "jbuilder runtest";
|
||||
|
||||
inherit (jbuilder) installPhase;
|
||||
|
||||
meta = {
|
||||
description = "Serialization library built for speed and memory efficiency";
|
||||
license = stdenv.lib.licenses.bsd3;
|
||||
maintainers = [ stdenv.lib.maintainers.vbgl ];
|
||||
inherit (src.meta) homepage;
|
||||
inherit (ocaml.meta) platforms;
|
||||
};
|
||||
}
|
34
pkgs/development/ocaml-modules/farfadet/default.nix
Normal file
34
pkgs/development/ocaml-modules/farfadet/default.nix
Normal file
@ -0,0 +1,34 @@
|
||||
{ stdenv, fetchurl, ocaml, findlib, ocamlbuild, topkg
|
||||
, faraday
|
||||
}:
|
||||
|
||||
if !stdenv.lib.versionAtLeast ocaml.version "4.3"
|
||||
then throw "farfadet is not available for OCaml ${ocaml.version}"
|
||||
else
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "ocaml${ocaml.version}-farfadet-${version}";
|
||||
version = "0.2";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://github.com/oklm-wsh/Farfadet/releases/download/v${version}/farfadet-${version}.tbz";
|
||||
sha256 = "06wvd57c8khpq0c2hvm15zng269zvabsw1lcaqphqdcckl67nsxr";
|
||||
};
|
||||
|
||||
unpackCmd = "tar -xjf $curSrc";
|
||||
|
||||
buildInputs = [ ocaml findlib ocamlbuild topkg ];
|
||||
|
||||
propagatedBuildInputs = [ faraday ];
|
||||
|
||||
inherit (topkg) buildPhase installPhase;
|
||||
|
||||
meta = {
|
||||
description = "A printf-like for Faraday library";
|
||||
homepage = "https://github.com/oklm-wsh/Farfadet";
|
||||
license = stdenv.lib.licenses.mit;
|
||||
maintainers = [ stdenv.lib.maintainers.vbgl ];
|
||||
inherit (ocaml.meta) platforms;
|
||||
};
|
||||
}
|
||||
|
27
pkgs/development/ocaml-modules/lru/default.nix
Normal file
27
pkgs/development/ocaml-modules/lru/default.nix
Normal file
@ -0,0 +1,27 @@
|
||||
{ stdenv, fetchurl, ocaml, findlib, ocamlbuild, topkg, psq }:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "ocaml${ocaml.version}-lru-${version}";
|
||||
version = "0.2.0";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://github.com/pqwy/lru/releases/download/v${version}/lru-${version}.tbz";
|
||||
sha256 = "0bd7js9rrma1fjjjjc3fgr9l5fjbhgihx2nsaf96g2b35iiaimd0";
|
||||
};
|
||||
|
||||
unpackCmd = "tar -xjf $curSrc";
|
||||
|
||||
buildInputs = [ ocaml findlib ocamlbuild topkg ];
|
||||
|
||||
propagatedBuildInputs = [ psq ];
|
||||
|
||||
inherit (topkg) buildPhase installPhase;
|
||||
|
||||
meta = {
|
||||
homepage = "https://github.com/pqwy/lru";
|
||||
description = "Scalable LRU caches for OCaml";
|
||||
maintainers = [ stdenv.lib.maintainers.vbgl ];
|
||||
license = stdenv.lib.licenses.isc;
|
||||
inherit (ocaml.meta) platforms;
|
||||
};
|
||||
}
|
29
pkgs/development/ocaml-modules/psq/default.nix
Normal file
29
pkgs/development/ocaml-modules/psq/default.nix
Normal file
@ -0,0 +1,29 @@
|
||||
{ stdenv, fetchurl, ocaml, findlib, ocamlbuild, topkg }:
|
||||
|
||||
if !stdenv.lib.versionAtLeast ocaml.version "4.02"
|
||||
then throw "psq is not available for OCaml ${ocaml.version}"
|
||||
else
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "ocaml${ocaml.version}-psq-${version}";
|
||||
version = "0.1.0";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://github.com/pqwy/psq/releases/download/v${version}/psq-${version}.tbz";
|
||||
sha256 = "08ghgdivbjrxnaqc3hsb69mr9s2ql5ds0fb97b7z6zimzqibz6lp";
|
||||
};
|
||||
|
||||
unpackCmd = "tar -xjf $curSrc";
|
||||
|
||||
buildInputs = [ ocaml findlib ocamlbuild topkg ];
|
||||
|
||||
inherit (topkg) buildPhase installPhase;
|
||||
|
||||
meta = {
|
||||
description = "Functional Priority Search Queues for OCaml";
|
||||
homepage = "https://github.com/pqwy/psq";
|
||||
maintainers = [ stdenv.lib.maintainers.vbgl ];
|
||||
license = stdenv.lib.licenses.isc;
|
||||
inherit (ocaml.meta) platforms;
|
||||
};
|
||||
}
|
@ -202,6 +202,8 @@ let
|
||||
|
||||
decompress = callPackage ../development/ocaml-modules/decompress { };
|
||||
|
||||
digestif = callPackage ../development/ocaml-modules/digestif { };
|
||||
|
||||
dolmen = callPackage ../development/ocaml-modules/dolmen { };
|
||||
|
||||
dolog = callPackage ../development/ocaml-modules/dolog { };
|
||||
@ -233,6 +235,10 @@ let
|
||||
|
||||
faillib = callPackage ../development/ocaml-modules/faillib { };
|
||||
|
||||
faraday = callPackage ../development/ocaml-modules/faraday { };
|
||||
|
||||
farfadet = callPackage ../development/ocaml-modules/farfadet { };
|
||||
|
||||
fieldslib_p4 = callPackage ../development/ocaml-modules/fieldslib { };
|
||||
|
||||
fileutils = callPackage ../development/ocaml-modules/fileutils { };
|
||||
@ -351,6 +357,8 @@ let
|
||||
lwt = ocaml_lwt;
|
||||
};
|
||||
|
||||
lru = callPackage ../development/ocaml-modules/lru { };
|
||||
|
||||
lwt2 = callPackage ../development/ocaml-modules/lwt { };
|
||||
|
||||
lwt3 = if lib.versionOlder "4.02" ocaml.version
|
||||
@ -502,6 +510,8 @@ let
|
||||
piqi = callPackage ../development/ocaml-modules/piqi { };
|
||||
piqi-ocaml = callPackage ../development/ocaml-modules/piqi-ocaml { };
|
||||
|
||||
psq = callPackage ../development/ocaml-modules/psq { };
|
||||
|
||||
ptime = callPackage ../development/ocaml-modules/ptime { };
|
||||
|
||||
re2_p4 = callPackage ../development/ocaml-modules/re2 { };
|
||||
|
Loading…
Reference in New Issue
Block a user