summary refs log tree commit diff
diff options
context:
space:
mode:
authorVincent Laporte <Vincent.Laporte@gmail.com>2018-07-22 07:00:45 +0000
committerVincent Laporte <vbgl@users.noreply.github.com>2018-07-29 07:47:21 +0000
commit1747b29a4ce7c757bf8388fed6f7e492b954171c (patch)
treefe9873af2aaa4b830b03ec399c1ef0a04a2d4adc
parent51d90811235cb5557e76f5d9665cd3337bc82e53 (diff)
downloadnixpkgs-1747b29a4ce7c757bf8388fed6f7e492b954171c.tar
nixpkgs-1747b29a4ce7c757bf8388fed6f7e492b954171c.tar.gz
nixpkgs-1747b29a4ce7c757bf8388fed6f7e492b954171c.tar.bz2
nixpkgs-1747b29a4ce7c757bf8388fed6f7e492b954171c.tar.lz
nixpkgs-1747b29a4ce7c757bf8388fed6f7e492b954171c.tar.xz
nixpkgs-1747b29a4ce7c757bf8388fed6f7e492b954171c.tar.zst
nixpkgs-1747b29a4ce7c757bf8388fed6f7e492b954171c.zip
ocamlPackages.httpaf: init at 0.4.1
http/af is a high-performance, memory-efficient, and scalable web server for
OCaml.

Homepage: https://github.com/inhabitedtype/httpaf
-rw-r--r--pkgs/development/ocaml-modules/httpaf/default.nix33
-rw-r--r--pkgs/top-level/ocaml-packages.nix2
2 files changed, 35 insertions, 0 deletions
diff --git a/pkgs/development/ocaml-modules/httpaf/default.nix b/pkgs/development/ocaml-modules/httpaf/default.nix
new file mode 100644
index 00000000000..bb712d40827
--- /dev/null
+++ b/pkgs/development/ocaml-modules/httpaf/default.nix
@@ -0,0 +1,33 @@
+{ stdenv, fetchFromGitHub, ocaml, findlib, jbuilder
+, angstrom, faraday, alcotest
+}:
+
+stdenv.mkDerivation rec {
+  version = "0.4.1";
+  name = "ocaml${ocaml.version}-httpaf-${version}";
+
+  src = fetchFromGitHub {
+    owner = "inhabitedtype";
+    repo = "httpaf";
+    rev = version;
+    sha256 = "0i2r004ihj00hd97475y8nhjqjln58xx087zcjl0dfp0n7q80517";
+  };
+
+  buildInputs = [ ocaml findlib jbuilder alcotest ];
+  propagatedBuildInputs = [ angstrom faraday ];
+
+  buildPhase = "dune build -p httpaf";
+
+  doCheck = true;
+  checkPhase = "dune runtest -p httpaf";
+
+  inherit (jbuilder) installPhase;
+
+  meta = {
+    description = "A high-performance, memory-efficient, and scalable web server for OCaml";
+    license = stdenv.lib.licenses.bsd3;
+    maintainers = [ stdenv.lib.maintainers.vbgl ];
+    inherit (src.meta) homepage;
+    inherit (ocaml.meta) platforms;
+  };
+}
diff --git a/pkgs/top-level/ocaml-packages.nix b/pkgs/top-level/ocaml-packages.nix
index fcf7e1487dd..8c265013f47 100644
--- a/pkgs/top-level/ocaml-packages.nix
+++ b/pkgs/top-level/ocaml-packages.nix
@@ -319,6 +319,8 @@ let
 
     hex = callPackage ../development/ocaml-modules/hex { };
 
+    httpaf = callPackage ../development/ocaml-modules/httpaf { };
+
     inifiles = callPackage ../development/ocaml-modules/inifiles { };
 
     iri = callPackage ../development/ocaml-modules/iri { };