diff --git a/pkgs/development/ocaml-modules/uri/default.nix b/pkgs/development/ocaml-modules/uri/default.nix index 6073411a24d2..0f3578806d83 100644 --- a/pkgs/development/ocaml-modules/uri/default.nix +++ b/pkgs/development/ocaml-modules/uri/default.nix @@ -1,24 +1,39 @@ -{ stdenv, fetchurl, buildDunePackage, ppx_sexp_conv, ounit -, re, sexplib, stringext +{ lib, fetchurl, buildDunePackage, ppx_sexp_conv, ounit +, re, sexplib0, sexplib, stringext +, legacy ? false }: +let params = + if legacy then rec { + version = "1.9.6"; + archive = version; + sha256 = "1m845rwd70wi4iijkrigyz939m1x84ba70hvv0d9sgk6971w4kz0"; + inherit sexplib; + } else rec { + version = "2.2.0"; + archive = "v${version}"; + sha256 = "1q0xmc93l46dilxclkmai7w952bdi745rhvsx5vissaigcj9wbwi"; + sexplib = sexplib0; + } +; in + buildDunePackage rec { pname = "uri"; - version = "1.9.6"; + inherit (params) version; src = fetchurl { - url = "https://github.com/mirage/ocaml-${pname}/releases/download/v${version}/${pname}-${version}.tbz"; - sha256 = "1m845rwd70wi4iijkrigyz939m1x84ba70hvv0d9sgk6971w4kz0"; + url = "https://github.com/mirage/ocaml-${pname}/releases/download/v${version}/${pname}-${params.archive}.tbz"; + inherit (params) sha256; }; buildInputs = [ ounit ]; - propagatedBuildInputs = [ ppx_sexp_conv re sexplib stringext ]; + propagatedBuildInputs = [ ppx_sexp_conv re params.sexplib stringext ]; doCheck = true; meta = { homepage = "https://github.com/mirage/ocaml-uri"; description = "RFC3986 URI parsing library for OCaml"; - license = stdenv.lib.licenses.isc; - maintainers = [ stdenv.lib.maintainers.vbgl ]; + license = lib.licenses.isc; + maintainers = [ lib.maintainers.vbgl ]; }; } diff --git a/pkgs/top-level/ocaml-packages.nix b/pkgs/top-level/ocaml-packages.nix index f79f6ea3c0ca..47d233a22878 100644 --- a/pkgs/top-level/ocaml-packages.nix +++ b/pkgs/top-level/ocaml-packages.nix @@ -68,6 +68,7 @@ let }; }; uri = uri.override { + legacy = true; inherit (janeStreet_0_9_0) ppx_sexp_conv sexplib; }; };