diff options
Diffstat (limited to 'nixpkgs/pkgs/development/ocaml-modules')
17 files changed, 252 insertions, 20 deletions
diff --git a/nixpkgs/pkgs/development/ocaml-modules/cryptokit/default.nix b/nixpkgs/pkgs/development/ocaml-modules/cryptokit/default.nix index eb9fdd85e68d..c3e3e5da9f8d 100644 --- a/nixpkgs/pkgs/development/ocaml-modules/cryptokit/default.nix +++ b/nixpkgs/pkgs/development/ocaml-modules/cryptokit/default.nix @@ -2,8 +2,7 @@ buildDunePackage rec { pname = "cryptokit"; - version = "1.18"; - duneVersion = "3"; + version = "1.19"; minimalOCamlVersion = "4.08"; @@ -11,7 +10,7 @@ buildDunePackage rec { owner = "xavierleroy"; repo = "cryptokit"; rev = "release${lib.replaceStrings ["."] [""] version}"; - hash = "sha256-8ae8hroCSkp4O5vM/qVOhAnnJJ+uygMYm3ix5ytwtHU="; + hash = "sha256-8RRAPFgL2pqKotc1I3fIB9q2cNi46SP8pt+0rZM+QUc="; }; # dont do autotools configuration, but do trigger findlib's preConfigure hook diff --git a/nixpkgs/pkgs/development/ocaml-modules/elpi/default.nix b/nixpkgs/pkgs/development/ocaml-modules/elpi/default.nix index 0e0adcb0be87..d678c129188c 100644 --- a/nixpkgs/pkgs/development/ocaml-modules/elpi/default.nix +++ b/nixpkgs/pkgs/development/ocaml-modules/elpi/default.nix @@ -8,7 +8,7 @@ , ppxlib, ppx_deriving , ppxlib_0_15, ppx_deriving_0_15 , coqPackages -, version ? if lib.versionAtLeast ocaml.version "4.08" then "1.17.0" +, version ? if lib.versionAtLeast ocaml.version "4.08" then "1.18.1" else if lib.versionAtLeast ocaml.version "4.07" then "1.15.2" else "1.14.1" }: @@ -16,6 +16,7 @@ let p5 = camlp5; in let camlp5 = p5.override { legacy = true; }; in let fetched = coqPackages.metaFetch ({ + release."1.18.1".sha256 = "sha256-zgBJefQDe3JyCGbC0wvMcx/9iMVbftBJ43NPogkNeHY="; release."1.17.0".sha256 = "sha256-DTxE8CvYl0et20pxueydI+WzraI6UPHMNvxyp2gU/+w="; release."1.16.5".sha256 = "sha256-tKX5/cVPoBeHiUe+qn7c5FIRYCwY0AAukN7vSd/Nz9A="; release."1.15.2".sha256 = "sha256-XgopNP83POFbMNyl2D+gY1rmqGg03o++Ngv3zJfCn2s="; diff --git a/nixpkgs/pkgs/development/ocaml-modules/git/default.nix b/nixpkgs/pkgs/development/ocaml-modules/git/default.nix index 5e1a0461abb1..c3f27a3c7b97 100644 --- a/nixpkgs/pkgs/development/ocaml-modules/git/default.nix +++ b/nixpkgs/pkgs/development/ocaml-modules/git/default.nix @@ -8,14 +8,13 @@ buildDunePackage rec { pname = "git"; - version = "3.13.0"; + version = "3.14.0"; minimalOCamlVersion = "4.08"; - duneVersion = "3"; src = fetchurl { url = "https://github.com/mirage/ocaml-git/releases/download/${version}/git-${version}.tbz"; - hash = "sha256-98w2Amze/B+YN/ENfSb0V8I2yyFUf8rSEOcUg1YbVdM="; + hash = "sha256-u1Nq8zo2YfAnRXib+IqYV0sWOGraqxrJC33NdDQaYsE="; }; # remove changelog for the carton package diff --git a/nixpkgs/pkgs/development/ocaml-modules/git/mirage.nix b/nixpkgs/pkgs/development/ocaml-modules/git/mirage.nix index 28ce7c4a3f30..ad5a399bda63 100644 --- a/nixpkgs/pkgs/development/ocaml-modules/git/mirage.nix +++ b/nixpkgs/pkgs/development/ocaml-modules/git/mirage.nix @@ -44,7 +44,6 @@ buildDunePackage { inherit (git) version src; minimalOCamlVersion = "4.08"; - duneVersion = "3"; buildInputs = [ dns diff --git a/nixpkgs/pkgs/development/ocaml-modules/git/paf.nix b/nixpkgs/pkgs/development/ocaml-modules/git/paf.nix index 99f0175f0f40..4806909962c0 100644 --- a/nixpkgs/pkgs/development/ocaml-modules/git/paf.nix +++ b/nixpkgs/pkgs/development/ocaml-modules/git/paf.nix @@ -26,7 +26,6 @@ buildDunePackage { inherit (git) version src; minimalOCamlVersion = "4.08"; - duneVersion = "3"; propagatedBuildInputs = [ git diff --git a/nixpkgs/pkgs/development/ocaml-modules/git/unix.nix b/nixpkgs/pkgs/development/ocaml-modules/git/unix.nix index 1079f554731d..28bfb40cf8cb 100644 --- a/nixpkgs/pkgs/development/ocaml-modules/git/unix.nix +++ b/nixpkgs/pkgs/development/ocaml-modules/git/unix.nix @@ -15,7 +15,6 @@ buildDunePackage { inherit (git) version src; minimalOCamlVersion = "4.08"; - duneVersion = "3"; buildInputs = [ awa diff --git a/nixpkgs/pkgs/development/ocaml-modules/janestreet/janePackage_0_16.nix b/nixpkgs/pkgs/development/ocaml-modules/janestreet/janePackage_0_16.nix index 061fed447466..c1b2ed2a9139 100644 --- a/nixpkgs/pkgs/development/ocaml-modules/janestreet/janePackage_0_16.nix +++ b/nixpkgs/pkgs/development/ocaml-modules/janestreet/janePackage_0_16.nix @@ -1,4 +1,4 @@ -{ lib, fetchFromGitHub, buildDunePackage, defaultVersion ? "0.16" }: +{ lib, fetchFromGitHub, buildDunePackage, defaultVersion ? "0.16.0" }: { pname , version ? defaultVersion diff --git a/nixpkgs/pkgs/development/ocaml-modules/kqueue/default.nix b/nixpkgs/pkgs/development/ocaml-modules/kqueue/default.nix new file mode 100644 index 000000000000..6666d58cfb1f --- /dev/null +++ b/nixpkgs/pkgs/development/ocaml-modules/kqueue/default.nix @@ -0,0 +1,39 @@ +{ buildDunePackage +, dune-configurator +, lib +, fetchurl +, ppx_expect +, ppx_optcomp +}: + +buildDunePackage rec { + pname = "kqueue"; + version = "0.3.0"; + + minimalOCamlVersion = "4.12"; + + src = fetchurl { + url = "https://github.com/anuragsoni/kqueue-ml/releases/download/${version}/kqueue-${version}.tbz"; + hash = "sha256-MKRCyN6q9euTEgHIhldGGH8FwuLblWYNG+SiCMWBP6Y="; + }; + + buildInputs = [ + dune-configurator + ppx_optcomp + ]; + + checkInputs = [ + ppx_expect + ]; + + doCheck = true; + + meta = { + description = "OCaml bindings for kqueue event notification interface"; + homepage = "https://github.com/anuragsoni/kqueue-ml"; + changelog = "https://github.com/anuragsoni/kqueue-ml/blob/${version}/CHANGES.md"; + license = lib.licenses.bsd3; + maintainers = with lib.maintainers; [ sixstring982 ]; + }; +} + diff --git a/nixpkgs/pkgs/development/ocaml-modules/logs/default.nix b/nixpkgs/pkgs/development/ocaml-modules/logs/default.nix index 0b8ffed91e49..bd7326883829 100644 --- a/nixpkgs/pkgs/development/ocaml-modules/logs/default.nix +++ b/nixpkgs/pkgs/development/ocaml-modules/logs/default.nix @@ -3,10 +3,23 @@ , fmtSupport ? lib.versionAtLeast ocaml.version "4.08" , js_of_ocaml , jsooSupport ? true +, lwtSupport ? true +, cmdlinerSupport ? true }: let pname = "logs"; webpage = "https://erratique.ch/software/${pname}"; + + optional_deps = [ + { pkg = js_of_ocaml; enable_flag = "--with-js_of_ocaml"; enabled = jsooSupport; } + { pkg = fmt; enable_flag = "--with-fmt"; enabled = fmtSupport; } + { pkg = lwt; enable_flag = "--with-lwt"; enabled = lwtSupport; } + { pkg = cmdliner; enable_flag = "--with-cmdliner"; enabled = cmdlinerSupport; } + ]; + enable_flags = + lib.concatMap (d: [ d.enable_flag (lib.boolToString d.enabled)]) optional_deps; + optional_buildInputs = + map (d: d.pkg) (lib.filter (d: d.enabled) optional_deps); in if lib.versionOlder ocaml.version "4.03" @@ -23,14 +36,12 @@ stdenv.mkDerivation rec { }; nativeBuildInputs = [ ocaml findlib ocamlbuild topkg ]; - buildInputs = [ cmdliner lwt topkg ] - ++ lib.optional fmtSupport fmt - ++ lib.optional jsooSupport js_of_ocaml; + buildInputs = [ topkg ] ++ optional_buildInputs; propagatedBuildInputs = [ result ]; strictDeps = true; - buildPhase = "${topkg.run} build --with-js_of_ocaml ${lib.boolToString jsooSupport} --with-fmt ${lib.boolToString fmtSupport}"; + buildPhase = "${topkg.run} build ${lib.escapeShellArgs enable_flags}"; inherit (topkg) installPhase; diff --git a/nixpkgs/pkgs/development/ocaml-modules/mdx/default.nix b/nixpkgs/pkgs/development/ocaml-modules/mdx/default.nix index ccda3f38b5eb..53ea92a2bbef 100644 --- a/nixpkgs/pkgs/development/ocaml-modules/mdx/default.nix +++ b/nixpkgs/pkgs/development/ocaml-modules/mdx/default.nix @@ -4,6 +4,13 @@ , gitUpdater }: +let + # Strip optional dependencies from logs to make the closure smaller as this + # package contains a binary + logs' = logs.override { jsooSupport = false; lwtSupport = false; }; + +in + buildDunePackage rec { pname = "mdx"; version = "2.3.1"; @@ -16,7 +23,9 @@ buildDunePackage rec { }; nativeBuildInputs = [ cppo ]; - propagatedBuildInputs = [ astring fmt logs csexp ocaml-version camlp-streams re findlib ]; + propagatedBuildInputs = [ + astring fmt logs' csexp ocaml-version camlp-streams re findlib + ]; checkInputs = [ alcotest lwt ]; doCheck = true; diff --git a/nixpkgs/pkgs/development/ocaml-modules/minttea/default.nix b/nixpkgs/pkgs/development/ocaml-modules/minttea/default.nix new file mode 100644 index 000000000000..8d81317edd1f --- /dev/null +++ b/nixpkgs/pkgs/development/ocaml-modules/minttea/default.nix @@ -0,0 +1,33 @@ +{ lib +, buildDunePackage +, fetchurl +, riot +, tty +}: + +buildDunePackage rec { + pname = "minttea"; + version = "0.0.1"; + + minimalOCamlVersion = "5.1"; + + src = fetchurl { + url = "https://github.com/leostera/minttea/releases/download/${version}/minttea-${version}.tbz"; + hash = "sha256-+4nVeYKx2A2i2nll/PbStcEa+Dvxd0T7e/KsdJqY4bI="; + }; + + propagatedBuildInputs = [ + riot + tty + ]; + + doCheck = true; + + meta = { + description = "A fun, functional, and stateful way to build terminal apps in OCaml heavily inspired by Go's BubbleTea"; + homepage = "https://github.com/leostera/minttea"; + changelog = "https://github.com/leostera/minttea/blob/${version}/CHANGES.md"; + license = lib.licenses.mit; + maintainers = with lib.maintainers; [ sixstring982 ]; + }; +} diff --git a/nixpkgs/pkgs/development/ocaml-modules/otfed/default.nix b/nixpkgs/pkgs/development/ocaml-modules/otfed/default.nix new file mode 100644 index 000000000000..d9d3c5bcb54f --- /dev/null +++ b/nixpkgs/pkgs/development/ocaml-modules/otfed/default.nix @@ -0,0 +1,46 @@ +{ lib +, buildDunePackage +, fetchFromGitHub +, base +, ppx_deriving +, ppx_inline_test +, uutf +, alcotest +}: + +buildDunePackage rec { + pname = "otfed"; + version = "0.3.1"; + + minimalOCamlVersion = "4.08"; + + src = fetchFromGitHub { + owner = "gfngfn"; + repo = pname; + rev = version; + hash = "sha256-6QCom9nrz0B5vCmuBzqsM0zCs8tBLJC6peig+vCgMVA="; + }; + + buildInputs = [ + uutf + ]; + + propagatedBuildInputs = [ + base + ppx_deriving + ppx_inline_test + ]; + + checkInputs = [ + alcotest + ]; + + doCheck = true; + + meta = { + homepage = "https://github.com/gfngfn/otfed"; + description = "OpenType Font Format Encoder & Decoder"; + license = lib.licenses.mit; + maintainers = [ lib.maintainers.vbgl ]; + }; +} diff --git a/nixpkgs/pkgs/development/ocaml-modules/poll/default.nix b/nixpkgs/pkgs/development/ocaml-modules/poll/default.nix new file mode 100644 index 000000000000..ea1e2e1c13d7 --- /dev/null +++ b/nixpkgs/pkgs/development/ocaml-modules/poll/default.nix @@ -0,0 +1,43 @@ +{ buildDunePackage +, dune-configurator +, fetchurl +, kqueue +, lib +, ppx_expect +, ppx_optcomp +}: + +buildDunePackage rec { + pname = "poll"; + version = "0.3.1"; + + minimalOCamlVersion = "4.13"; + + src = fetchurl { + url = "https://github.com/anuragsoni/poll/releases/download/${version}/poll-${version}.tbz"; + hash = "sha256-IX6SivK/IMQaGgMgWiIsNgUSMHP6z1E/TSB0miaQ8pw="; + }; + + buildInputs = [ + dune-configurator + ppx_optcomp + ]; + + propagatedBuildInputs = [ + kqueue + ]; + + checkInputs = [ + ppx_expect + ]; + + doCheck = true; + + meta = { + description = "Portable OCaml interface to macOS/Linux/Windows native IO event notification mechanisms"; + homepage = "https://github.com/anuragsoni/poll"; + changelog = "https://github.com/anuragsoni/poll/blob/${version}/CHANGES.md"; + license = lib.licenses.mit; + maintainers = with lib.maintainers; [ sixstring982 ]; + }; +} diff --git a/nixpkgs/pkgs/development/ocaml-modules/riot/default.nix b/nixpkgs/pkgs/development/ocaml-modules/riot/default.nix index e03ac2c209ed..e830e7034e10 100644 --- a/nixpkgs/pkgs/development/ocaml-modules/riot/default.nix +++ b/nixpkgs/pkgs/development/ocaml-modules/riot/default.nix @@ -4,24 +4,26 @@ , fetchurl , iomux , ptime +, telemetry , uri }: buildDunePackage rec { pname = "riot"; - version = "0.0.2"; + version = "0.0.5"; minimalOCamlVersion = "5.1"; src = fetchurl { url = "https://github.com/leostera/riot/releases/download/${version}/riot-${version}.tbz"; - hash = "sha256-ck/tr5o0nKF4WNgjPODHg1/tlaKv1JtuYgqYfIIZ78Q="; + hash = "sha256-Abe4LMxlaxK3MVlg2d8X60aCuPGvaOn+4zFx/uH5z4g="; }; propagatedBuildInputs = [ bigstringaf iomux ptime + telemetry uri ]; diff --git a/nixpkgs/pkgs/development/ocaml-modules/telemetry/default.nix b/nixpkgs/pkgs/development/ocaml-modules/telemetry/default.nix new file mode 100644 index 000000000000..85d6e067f60f --- /dev/null +++ b/nixpkgs/pkgs/development/ocaml-modules/telemetry/default.nix @@ -0,0 +1,22 @@ +{ lib, buildDunePackage, fetchurl }: + +buildDunePackage rec { + pname = "telemetry"; + version = "0.0.1"; + + minimalOCamlVersion = "4.12"; + + src = fetchurl { + url = "https://github.com/leostera/telemetry/releases/download/${version}/telemetry-${version}.tbz"; + hash = "sha256-YEf7zC/F2zJBtQNfyJ2OznKmoFo1Ms9O2WgiOFkhp28="; + }; + + doCheck = true; + + meta = { + description = "A lightweight library for dispatching and handling events, with a focus on metrics and instrumentation"; + homepage = "https://github.com/leostera/telemetry"; + license = lib.licenses.mit; + maintainers = [ lib.maintainers.vbgl ]; + }; +} diff --git a/nixpkgs/pkgs/development/ocaml-modules/tty/default.nix b/nixpkgs/pkgs/development/ocaml-modules/tty/default.nix new file mode 100644 index 000000000000..8c5c1b47524a --- /dev/null +++ b/nixpkgs/pkgs/development/ocaml-modules/tty/default.nix @@ -0,0 +1,31 @@ +{ lib +, buildDunePackage +, fetchurl +, uutf +}: + +buildDunePackage rec { + pname = "tty"; + version = "0.0.2"; + + minimalOCamlVersion = "5.1"; + + src = fetchurl { + url = "https://github.com/leostera/tty/releases/download/${version}/tty-${version}.tbz"; + hash = "sha256-eeD5Y+/QXZzFoEHvOSZj2Q74V8BK5j3Lu3Zsrj2YUUs="; + }; + + propagatedBuildInputs = [ + uutf + ]; + + doCheck = true; + + meta = { + description = "A library for interacting with teletype and terminal emulators"; + homepage = "https://github.com/leostera/tty"; + changelog = "https://github.com/leostera/tty/blob/${version}/CHANGES.md"; + license = lib.licenses.mit; + maintainers = with lib.maintainers; [ sixstring982 ]; + }; +} diff --git a/nixpkgs/pkgs/development/ocaml-modules/yojson/default.nix b/nixpkgs/pkgs/development/ocaml-modules/yojson/default.nix index 38a920ae865c..c8600cf52b16 100644 --- a/nixpkgs/pkgs/development/ocaml-modules/yojson/default.nix +++ b/nixpkgs/pkgs/development/ocaml-modules/yojson/default.nix @@ -2,11 +2,11 @@ buildDunePackage rec { pname = "yojson"; - version = "2.1.1"; + version = "2.1.2"; src = fetchurl { url = "https://github.com/ocaml-community/yojson/releases/download/${version}/yojson-${version}.tbz"; - hash = "sha256-1YGDIHsZjcBlhmI5Bm4HTDT54TnA2cQXWjiAl5DogXM="; + hash = "sha256-WfLxq7/Ip8y9v2CIlOXHXop2AG40iZJURG+D4gDftPk="; }; nativeBuildInputs = [ cppo ]; |