From 4f0feb4f5f2f4662a075f015d9675b25865b3ae9 Mon Sep 17 00:00:00 2001
From: sternenseemann <git@lukasepple.de>
Date: Sat, 18 Feb 2017 22:57:45 +0100
Subject: [PATCH] ocaml-logs: init at 0.6.2

---
 .../ocaml-modules/logs/default.nix            | 40 +++++++++++++++++++
 pkgs/top-level/ocaml-packages.nix             |  4 ++
 2 files changed, 44 insertions(+)
 create mode 100644 pkgs/development/ocaml-modules/logs/default.nix

diff --git a/pkgs/development/ocaml-modules/logs/default.nix b/pkgs/development/ocaml-modules/logs/default.nix
new file mode 100644
index 000000000000..ab0b6c8579bd
--- /dev/null
+++ b/pkgs/development/ocaml-modules/logs/default.nix
@@ -0,0 +1,40 @@
+{ stdenv, fetchurl, ocaml, findlib, ocamlbuild, opam
+, topkg, result, lwt, cmdliner, fmt }:
+let
+  pname = "logs";
+  webpage = "http://erratique.ch/software/${pname}";
+in
+
+assert stdenv.lib.versionAtLeast ocaml.version "4.01.0";
+
+stdenv.mkDerivation rec {
+  name = "ocaml-${pname}-${version}";
+  version = "0.6.2";
+
+  src = fetchurl {
+    url = "${webpage}/releases/${pname}-${version}.tbz";
+    sha256 = "1khbn7jqpid83zn8rvyh1x1sirls7zc878zj4fz985m5xlsfy853";
+  };
+
+  unpackCmd = "tar xjf $src";
+
+  buildInputs = [ ocaml findlib ocamlbuild opam topkg fmt cmdliner lwt ];
+  propagatedBuildInputs = [ result ];
+
+  buildPhase = ''
+    ocaml -I ${findlib}/lib/ocaml/${ocaml.version}/site-lib/ pkg/pkg.ml build \
+      --with-js_of_ocaml false
+    '';
+
+  inherit (topkg) installPhase;
+
+  createFindlibDestdir = true;
+
+  meta = with stdenv.lib; {
+    description = "Logging infrastructure for OCaml";
+    homepage = "${webpage}";
+    inherit (ocaml.meta) platforms;
+    maintainers = [ maintainers.sternenseemann ];
+    license = licenses.isc;
+  };
+}
diff --git a/pkgs/top-level/ocaml-packages.nix b/pkgs/top-level/ocaml-packages.nix
index 941b8ebd65de..615268e3778e 100644
--- a/pkgs/top-level/ocaml-packages.nix
+++ b/pkgs/top-level/ocaml-packages.nix
@@ -257,6 +257,10 @@ let
       llvm = pkgs.llvm_37;
     };
 
+    logs = callPackage ../development/ocaml-modules/logs {
+      lwt = ocaml_lwt;
+    };
+
     macaque = callPackage ../development/ocaml-modules/macaque { };
 
     magic-mime = callPackage ../development/ocaml-modules/magic-mime { };