about summary refs log tree commit diff
diff options
context:
space:
mode:
-rw-r--r--pkgs/development/ocaml-modules/cohttp/default.nix19
-rw-r--r--pkgs/development/ocaml-modules/cohttp/lwt-unix.nix19
-rw-r--r--pkgs/development/ocaml-modules/cohttp/lwt.nix16
-rw-r--r--pkgs/development/ocaml-modules/conduit/default.nix22
-rw-r--r--pkgs/development/ocaml-modules/conduit/lwt-unix.nix18
-rw-r--r--pkgs/development/ocaml-modules/conduit/lwt.nix16
-rw-r--r--pkgs/development/ocaml-modules/git-http/default.nix4
-rw-r--r--pkgs/development/ocaml-modules/git-unix/default.nix5
-rw-r--r--pkgs/development/ocaml-modules/git/default.nix4
-rw-r--r--pkgs/top-level/ocaml-packages.nix8
10 files changed, 102 insertions, 29 deletions
diff --git a/pkgs/development/ocaml-modules/cohttp/default.nix b/pkgs/development/ocaml-modules/cohttp/default.nix
index 1fd4446f1ee9..adde3094e27f 100644
--- a/pkgs/development/ocaml-modules/cohttp/default.nix
+++ b/pkgs/development/ocaml-modules/cohttp/default.nix
@@ -1,29 +1,26 @@
-{ stdenv, fetchFromGitHub, ocaml, findlib, ocamlbuild
+{ stdenv, fetchFromGitHub, ocaml, findlib, jbuilder
 , ppx_fields_conv, ppx_sexp_conv
-, base64, fieldslib, uri, conduit
-# Optional for async and lwt support:
-, async , async_ssl, cmdliner, fmt, magic-mime, ocaml_lwt, tls
+, base64, fieldslib, jsonm, logs, re, stringext, uri
 }:
 
 stdenv.mkDerivation rec {
-	version = "0.22.0";
+	version = "0.99.0";
 	name = "ocaml${ocaml.version}-cohttp-${version}";
 
 	src = fetchFromGitHub {
 		owner = "mirage";
 		repo = "ocaml-cohttp";
 		rev = "v${version}";
-		sha256 = "1iy4ynh0yrw8337nsa9zvgcf476im0bhccsbs0vki3c5yxw2x60d";
+		sha256 = "0y8qhzfwrc6486apmp2rsj822cnfhnz4w8rsb52w5wqmsgjxx1bj";
 	};
 
-	buildInputs = [ ocaml findlib ocamlbuild ppx_fields_conv ppx_sexp_conv conduit
-		async async_ssl cmdliner fmt magic-mime ocaml_lwt tls ];
+	buildInputs = [ ocaml findlib jbuilder jsonm ppx_fields_conv ppx_sexp_conv ];
 
-	propagatedBuildInputs = [ base64 fieldslib uri ];
+	propagatedBuildInputs = [ base64 fieldslib re stringext uri ];
 
-	makeFlags = [ "PREFIX=$(out)" ];
+	buildPhase = "jbuilder build -p cohttp";
 
-	createFindlibDestdir = true;
+	inherit (jbuilder) installPhase;
 
 	meta = {
 		description = "HTTP(S) library for Lwt, Async and Mirage";
diff --git a/pkgs/development/ocaml-modules/cohttp/lwt-unix.nix b/pkgs/development/ocaml-modules/cohttp/lwt-unix.nix
new file mode 100644
index 000000000000..c526a101dd9d
--- /dev/null
+++ b/pkgs/development/ocaml-modules/cohttp/lwt-unix.nix
@@ -0,0 +1,19 @@
+{ stdenv, ocaml, findlib, jbuilder, cohttp-lwt
+, conduit-lwt-unix, ppx_sexp_conv
+, cmdliner, fmt, magic-mime
+}:
+
+if !stdenv.lib.versionAtLeast cohttp-lwt.version "0.99"
+then cohttp-lwt
+else
+
+stdenv.mkDerivation rec {
+	name = "ocaml${ocaml.version}-cohttp-lwt-unix-${version}";
+	inherit (cohttp-lwt) version src installPhase meta;
+
+	buildInputs = [ ocaml findlib jbuilder cmdliner ppx_sexp_conv ];
+
+	propagatedBuildInputs = [ cohttp-lwt conduit-lwt-unix fmt magic-mime ];
+
+	buildPhase = "jbuilder build -p cohttp-lwt-unix";
+}
diff --git a/pkgs/development/ocaml-modules/cohttp/lwt.nix b/pkgs/development/ocaml-modules/cohttp/lwt.nix
new file mode 100644
index 000000000000..21bea646d721
--- /dev/null
+++ b/pkgs/development/ocaml-modules/cohttp/lwt.nix
@@ -0,0 +1,16 @@
+{ stdenv, ocaml, findlib, jbuilder, cohttp, lwt3, uri, ppx_sexp_conv }:
+
+if !stdenv.lib.versionAtLeast cohttp.version "0.99"
+then cohttp
+else
+
+stdenv.mkDerivation rec {
+	name = "ocaml${ocaml.version}-cohttp-lwt-${version}";
+	inherit (cohttp) version src installPhase meta;
+
+	buildInputs = [ ocaml findlib jbuilder uri ppx_sexp_conv ];
+
+	propagatedBuildInputs = [ cohttp lwt3 ];
+
+	buildPhase = "jbuilder build -p cohttp-lwt";
+}
diff --git a/pkgs/development/ocaml-modules/conduit/default.nix b/pkgs/development/ocaml-modules/conduit/default.nix
index 750bded28938..98ac997383c7 100644
--- a/pkgs/development/ocaml-modules/conduit/default.nix
+++ b/pkgs/development/ocaml-modules/conduit/default.nix
@@ -1,27 +1,25 @@
-{ stdenv, fetchFromGitHub, ocaml, findlib, ocamlbuild
-, ppx_driver, ppx_sexp_conv
-, ipaddr, uri, logs
-, ocaml_lwt ? null
-, async ? null, async_ssl ? null
-, tls ? null
+{ stdenv, fetchFromGitHub, ocaml, findlib, jbuilder
+, ppx_sexp_conv
+, astring, ipaddr, uri
 }:
 
 stdenv.mkDerivation rec {
-	version = "0.15.4";
+	version = "1.0.0";
 	name = "ocaml${ocaml.version}-conduit-${version}";
 
 	src = fetchFromGitHub {
 		owner = "mirage";
 		repo = "ocaml-conduit";
 		rev = "v${version}";
-		sha256 = "1ya7jqvhl8hc22cid5myf31w5c473imdxjnl9785lavsqj3djjxq";
+		sha256 = "1ryigzh7sfif1mly624fpm87aw5h60n5wzdlrvqsf71qcpxc6iiz";
 	};
 
-	buildInputs = [ ocaml findlib ocamlbuild ppx_driver ppx_sexp_conv
-		ocaml_lwt async async_ssl tls ];
-	propagatedBuildInputs = [ ipaddr uri logs ];
+	buildInputs = [ ocaml findlib jbuilder ppx_sexp_conv ];
+	propagatedBuildInputs = [ astring ipaddr uri ];
 
-	createFindlibDestdir = true;
+	buildPhase = "jbuilder build -p conduit";
+
+	inherit (jbuilder) installPhase;
 
 	meta = {
 		description = "Network connection library for TCP and SSL";
diff --git a/pkgs/development/ocaml-modules/conduit/lwt-unix.nix b/pkgs/development/ocaml-modules/conduit/lwt-unix.nix
new file mode 100644
index 000000000000..ce7a33a11eed
--- /dev/null
+++ b/pkgs/development/ocaml-modules/conduit/lwt-unix.nix
@@ -0,0 +1,18 @@
+{ stdenv, ocaml, findlib, jbuilder, conduit-lwt
+, logs, ppx_sexp_conv
+}:
+
+if !stdenv.lib.versionAtLeast conduit-lwt.version "1.0"
+then conduit-lwt
+else
+
+stdenv.mkDerivation rec {
+	name = "ocaml${ocaml.version}-conduit-lwt-unix-${version}";
+	inherit (conduit-lwt) version src installPhase meta;
+
+	buildInputs = [ ocaml findlib jbuilder ppx_sexp_conv ];
+
+	propagatedBuildInputs = [ conduit-lwt logs ];
+
+	buildPhase = "jbuilder build -p conduit-lwt-unix";
+}
diff --git a/pkgs/development/ocaml-modules/conduit/lwt.nix b/pkgs/development/ocaml-modules/conduit/lwt.nix
new file mode 100644
index 000000000000..8ee3d827ecc1
--- /dev/null
+++ b/pkgs/development/ocaml-modules/conduit/lwt.nix
@@ -0,0 +1,16 @@
+{ stdenv, ocaml, findlib, jbuilder, ppx_sexp_conv, conduit, lwt3 }:
+
+if !stdenv.lib.versionAtLeast conduit.version "1.0"
+then conduit
+else
+
+stdenv.mkDerivation rec {
+	name = "ocaml${ocaml.version}-conduit-lwt-${version}";
+	inherit (conduit) version src installPhase meta;
+
+	buildInputs = [ ocaml findlib jbuilder ppx_sexp_conv ];
+
+	propagatedBuildInputs = [ conduit lwt3 ];
+
+	buildPhase = "jbuilder build -p conduit-lwt";
+}
diff --git a/pkgs/development/ocaml-modules/git-http/default.nix b/pkgs/development/ocaml-modules/git-http/default.nix
index 7df47b093b35..5b93b9607658 100644
--- a/pkgs/development/ocaml-modules/git-http/default.nix
+++ b/pkgs/development/ocaml-modules/git-http/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, ocaml, findlib, jbuilder, git, cohttp }:
+{ stdenv, ocaml, findlib, jbuilder, git, cohttp-lwt }:
 
 stdenv.mkDerivation rec {
 	name = "ocaml${ocaml.version}-git-http-${version}";
@@ -6,7 +6,7 @@ stdenv.mkDerivation rec {
 
 	buildInputs = [ ocaml findlib jbuilder ];
 
-	propagatedBuildInputs = [ git cohttp ];
+	propagatedBuildInputs = [ git cohttp-lwt ];
 
 	buildPhase = "jbuilder build -p git-http";
 
diff --git a/pkgs/development/ocaml-modules/git-unix/default.nix b/pkgs/development/ocaml-modules/git-unix/default.nix
index 1fd4fd926492..189388efe324 100644
--- a/pkgs/development/ocaml-modules/git-unix/default.nix
+++ b/pkgs/development/ocaml-modules/git-unix/default.nix
@@ -1,5 +1,6 @@
 { stdenv, ocaml, findlib, jbuilder, git-http
-, ocaml_lwt, tls, conduit, magic-mime, cmdliner, mtime
+, cohttp-lwt-unix
+, tls, magic-mime, cmdliner, mtime
 }:
 
 stdenv.mkDerivation rec {
@@ -8,7 +9,7 @@ stdenv.mkDerivation rec {
 
 	buildInputs = [ ocaml findlib jbuilder cmdliner mtime ];
 
-	propagatedBuildInputs = [ conduit git-http magic-mime ocaml_lwt tls ];
+	propagatedBuildInputs = [ cohttp-lwt-unix git-http tls ];
 
 	buildPhase = "jbuilder build -p git-unix";
 
diff --git a/pkgs/development/ocaml-modules/git/default.nix b/pkgs/development/ocaml-modules/git/default.nix
index e3b4b4333e1a..4d4f86e57eb4 100644
--- a/pkgs/development/ocaml-modules/git/default.nix
+++ b/pkgs/development/ocaml-modules/git/default.nix
@@ -3,14 +3,14 @@
 }:
 
 stdenv.mkDerivation rec {
-	version = "1.11.1";
+	version = "1.11.2";
 	name = "ocaml${ocaml.version}-git-${version}";
 
 	src = fetchFromGitHub {
 		owner = "mirage";
 		repo = "ocaml-git";
 		rev = version;
-		sha256 = "04az2bpbhgdhh7y6pagqx4wf3jbmqrm8w20dgimpbj5h3hnak744";
+		sha256 = "1z5b0g4vck1sh1w076i2p3ppxrmb9h30q3nip5snw2r9prkm6y1j";
 	};
 
 	buildInputs = [ ocaml findlib jbuilder ];
diff --git a/pkgs/top-level/ocaml-packages.nix b/pkgs/top-level/ocaml-packages.nix
index ba75adb77d0c..64656990d0e4 100644
--- a/pkgs/top-level/ocaml-packages.nix
+++ b/pkgs/top-level/ocaml-packages.nix
@@ -137,6 +137,10 @@ let
       then callPackage ../development/ocaml-modules/cohttp { }
       else cohttp_p4;
 
+    cohttp-lwt = callPackage ../development/ocaml-modules/cohttp/lwt.nix { };
+
+    cohttp-lwt-unix = callPackage ../development/ocaml-modules/cohttp/lwt-unix.nix { };
+
     conduit_p4 = callPackage ../development/ocaml-modules/conduit/0.10.0.nix {
        lwt = lwt2;
     };
@@ -146,6 +150,10 @@ let
       then callPackage ../development/ocaml-modules/conduit { }
       else conduit_p4;
 
+    conduit-lwt = callPackage ../development/ocaml-modules/conduit/lwt.nix { };
+
+    conduit-lwt-unix = callPackage ../development/ocaml-modules/conduit/lwt-unix.nix { };
+
     config-file = callPackage ../development/ocaml-modules/config-file { };
 
     containers = callPackage ../development/ocaml-modules/containers { };