diff --git a/pkgs/development/ocaml-modules/linol/default.nix b/pkgs/development/ocaml-modules/linol/default.nix index 64aace8851b7..34f32cf4f7bf 100644 --- a/pkgs/development/ocaml-modules/linol/default.nix +++ b/pkgs/development/ocaml-modules/linol/default.nix @@ -5,7 +5,7 @@ rec { pname = "linol"; version = "2023-04-25"; - minimalOCamlVersion = "4.08"; + minimalOCamlVersion = "4.14"; duneVersion = "3"; src = fetchFromGitHub { diff --git a/pkgs/development/ocaml-modules/ocaml-lsp/lsp.nix b/pkgs/development/ocaml-modules/ocaml-lsp/lsp.nix index 32e8fbaf2ef7..b067614f5058 100644 --- a/pkgs/development/ocaml-modules/ocaml-lsp/lsp.nix +++ b/pkgs/development/ocaml-modules/ocaml-lsp/lsp.nix @@ -84,11 +84,31 @@ buildDunePackage rec { nativeBuildInputs = lib.optional (lib.versionOlder version "1.7.0") cppo; - propagatedBuildInputs = [ - csexp - jsonrpc - uutf - ] ++ lib.optional (lib.versionOlder version "1.7.0") stdlib-shims; + propagatedBuildInputs = + if lib.versionAtLeast version "1.14.0" then [ + jsonrpc + ppx_yojson_conv_lib + uutf + ] else if lib.versionAtLeast version "1.10.0" then [ + dyn + jsonrpc + ordering + ppx_yojson_conv_lib + stdune + uutf + ] else if lib.versionAtLeast version "1.7.0" then [ + csexp + jsonrpc + pp + ppx_yojson_conv_lib + uutf + ] else [ + csexp + jsonrpc + ppx_yojson_conv_lib + stdlib-shims + uutf + ]; meta = jsonrpc.meta // { description = "LSP protocol implementation in OCaml";