summary refs log tree commit diff
path: root/pkgs/development/ocaml-modules
diff options
context:
space:
mode:
authorVincent Laporte <vbgl@users.noreply.github.com>2019-12-20 10:57:07 +0100
committerGitHub <noreply@github.com>2019-12-20 10:57:07 +0100
commit69a40eda5f9f48db6cd92570e5c8b2ea95780b46 (patch)
tree9fbcacbb71a3999a67391b78a441414b09ed1d84 /pkgs/development/ocaml-modules
parentb76720f8937b51f173aaaf8bdf43a78389dbf172 (diff)
parentd6eb9b5e0b73279b2cb948deeb208938581e3697 (diff)
downloadnixpkgs-69a40eda5f9f48db6cd92570e5c8b2ea95780b46.tar
nixpkgs-69a40eda5f9f48db6cd92570e5c8b2ea95780b46.tar.gz
nixpkgs-69a40eda5f9f48db6cd92570e5c8b2ea95780b46.tar.bz2
nixpkgs-69a40eda5f9f48db6cd92570e5c8b2ea95780b46.tar.lz
nixpkgs-69a40eda5f9f48db6cd92570e5c8b2ea95780b46.tar.xz
nixpkgs-69a40eda5f9f48db6cd92570e5c8b2ea95780b46.tar.zst
nixpkgs-69a40eda5f9f48db6cd92570e5c8b2ea95780b46.zip
Merge pull request #75376 from vbgl/ocaml-irmin-2.0.0
ocamlPackages.irmin: init at 2.0.0
Diffstat (limited to 'pkgs/development/ocaml-modules')
-rw-r--r--pkgs/development/ocaml-modules/alcotest/lwt.nix16
-rw-r--r--pkgs/development/ocaml-modules/index/default.nix23
-rw-r--r--pkgs/development/ocaml-modules/irmin-watcher/default.nix23
-rw-r--r--pkgs/development/ocaml-modules/irmin/default.nix31
-rw-r--r--pkgs/development/ocaml-modules/irmin/fs.nix21
-rw-r--r--pkgs/development/ocaml-modules/irmin/git.nix20
-rw-r--r--pkgs/development/ocaml-modules/irmin/graphql.nix20
-rw-r--r--pkgs/development/ocaml-modules/irmin/http.nix23
-rw-r--r--pkgs/development/ocaml-modules/irmin/mem.nix19
-rw-r--r--pkgs/development/ocaml-modules/irmin/pack.nix19
-rw-r--r--pkgs/development/ocaml-modules/irmin/test.nix15
-rw-r--r--pkgs/development/ocaml-modules/irmin/unix.nix26
-rw-r--r--pkgs/development/ocaml-modules/yaml/default.nix24
13 files changed, 280 insertions, 0 deletions
diff --git a/pkgs/development/ocaml-modules/alcotest/lwt.nix b/pkgs/development/ocaml-modules/alcotest/lwt.nix
new file mode 100644
index 00000000000..f005421a6fc
--- /dev/null
+++ b/pkgs/development/ocaml-modules/alcotest/lwt.nix
@@ -0,0 +1,16 @@
+{ lib, buildDunePackage, alcotest, logs, ocaml_lwt }:
+
+buildDunePackage {
+  pname = "alcotest-lwt";
+
+  inherit (alcotest) version src;
+
+  propagatedBuildInputs = [ alcotest logs ocaml_lwt ];
+
+  doCheck = true;
+
+  meta = alcotest.meta // {
+    description = "Lwt-based helpers for Alcotest";
+  };
+
+}
diff --git a/pkgs/development/ocaml-modules/index/default.nix b/pkgs/development/ocaml-modules/index/default.nix
new file mode 100644
index 00000000000..b1141f814a8
--- /dev/null
+++ b/pkgs/development/ocaml-modules/index/default.nix
@@ -0,0 +1,23 @@
+{ lib, fetchurl, buildDunePackage, fmt, logs }:
+
+buildDunePackage rec {
+  pname = "index";
+  version = "1.0.1";
+
+  minimumOCamlVersion = "4.07";
+
+  src = fetchurl {
+    url = "https://github.com/mirage/index/releases/download/${version}/index-${version}.tbz";
+    sha256 = "1006wr3g21s4j2vsd73gphhkrh1fy4swh6gqvlsa9c6q7vz9wbvz";
+  };
+
+  propagatedBuildInputs = [ fmt logs ];
+
+  meta = {
+    homepage = "https://github.com/mirage/index";
+    description = "A platform-agnostic multi-level index";
+    license = lib.licenses.mit;
+    maintainers = [ lib.maintainers.vbgl ];
+  };
+
+}
diff --git a/pkgs/development/ocaml-modules/irmin-watcher/default.nix b/pkgs/development/ocaml-modules/irmin-watcher/default.nix
new file mode 100644
index 00000000000..55dc9ca866b
--- /dev/null
+++ b/pkgs/development/ocaml-modules/irmin-watcher/default.nix
@@ -0,0 +1,23 @@
+{ lib, fetchurl, buildDunePackage
+, astring, fmt, logs, ocaml_lwt
+}:
+
+buildDunePackage rec {
+  pname = "irmin-watcher";
+  version = "0.4.1";
+
+  src = fetchurl {
+    url = "https://github.com/mirage/irmin-watcher/releases/download/${version}/irmin-watcher-${version}.tbz";
+    sha256 = "00d4ph4jbsw6adp3zqdrwi099hfcf7p1xzi0685qr7bgcmandjfv";
+  };
+
+  propagatedBuildInputs = [ astring fmt logs ocaml_lwt ];
+
+  meta = {
+    homepage = "https://github.com/mirage/irmin-watcher";
+    description = "Portable Irmin watch backends using FSevents or Inotify";
+    license = lib.licenses.isc;
+    maintainers = [ lib.maintainers.vbgl ];
+  };
+
+}
diff --git a/pkgs/development/ocaml-modules/irmin/default.nix b/pkgs/development/ocaml-modules/irmin/default.nix
new file mode 100644
index 00000000000..2db57671177
--- /dev/null
+++ b/pkgs/development/ocaml-modules/irmin/default.nix
@@ -0,0 +1,31 @@
+{ lib, fetchurl, buildDunePackage
+, astring, base64, digestif, fmt, jsonm, logs, ocaml_lwt, ocamlgraph, uri
+, alcotest, hex
+}:
+
+buildDunePackage rec {
+
+  pname = "irmin";
+  version = "2.0.0";
+
+  minimumOCamlVersion = "4.06";
+
+  src = fetchurl {
+    url = "https://github.com/mirage/irmin/releases/download/${version}/irmin-${version}.tbz";
+    sha256 = "09qffvgi5yrm3ghiywlbdhjly8xb5x5njnan213q8j033fzmf2dr";
+  };
+
+  propagatedBuildInputs = [ astring base64 digestif fmt jsonm logs ocaml_lwt ocamlgraph uri ];
+
+  checkInputs = lib.optionals doCheck [ alcotest hex ];
+
+  doCheck = true;
+
+  meta = {
+    homepage = "https://irmin.org/";
+    description = "A distributed database built on the same principles as Git";
+    license = lib.licenses.isc;
+    maintainers = [ lib.maintainers.vbgl ];
+  };
+
+}
diff --git a/pkgs/development/ocaml-modules/irmin/fs.nix b/pkgs/development/ocaml-modules/irmin/fs.nix
new file mode 100644
index 00000000000..b1987aa7cbc
--- /dev/null
+++ b/pkgs/development/ocaml-modules/irmin/fs.nix
@@ -0,0 +1,21 @@
+{ lib, buildDunePackage, irmin, irmin-test }:
+
+buildDunePackage rec {
+
+  pname = "irmin-fs";
+
+  inherit (irmin) version src;
+
+  propagatedBuildInputs = [ irmin ];
+
+  checkInputs = lib.optional doCheck irmin-test;
+
+  doCheck = true;
+
+  meta = irmin.meta // {
+    description = "Generic file-system backend for Irmin";
+  };
+
+}
+
+
diff --git a/pkgs/development/ocaml-modules/irmin/git.nix b/pkgs/development/ocaml-modules/irmin/git.nix
new file mode 100644
index 00000000000..bb28042a1f6
--- /dev/null
+++ b/pkgs/development/ocaml-modules/irmin/git.nix
@@ -0,0 +1,20 @@
+{ lib, buildDunePackage, git, irmin, irmin-mem, irmin-test, git-unix }:
+
+buildDunePackage rec {
+
+  pname = "irmin-git";
+
+  inherit (irmin) version src;
+
+  propagatedBuildInputs = [ git irmin ];
+
+  checkInputs = lib.optionals doCheck [ git-unix irmin-mem irmin-test ];
+
+  doCheck = true;
+
+  meta = irmin.meta // {
+    description = "Git backend for Irmin";
+  };
+
+}
+
diff --git a/pkgs/development/ocaml-modules/irmin/graphql.nix b/pkgs/development/ocaml-modules/irmin/graphql.nix
new file mode 100644
index 00000000000..abcdc3d58dd
--- /dev/null
+++ b/pkgs/development/ocaml-modules/irmin/graphql.nix
@@ -0,0 +1,20 @@
+{ lib, buildDunePackage, cohttp-lwt, graphql-cohttp, graphql-lwt, irmin }:
+
+buildDunePackage rec {
+
+  pname = "irmin-graphql";
+
+  inherit (irmin) version src;
+
+  propagatedBuildInputs = [ cohttp-lwt graphql-cohttp graphql-lwt irmin ];
+
+  doCheck = true;
+
+  meta = irmin.meta // {
+    description = "GraphQL server for Irmin";
+  };
+
+}
+
+
+
diff --git a/pkgs/development/ocaml-modules/irmin/http.nix b/pkgs/development/ocaml-modules/irmin/http.nix
new file mode 100644
index 00000000000..c8db6d563c9
--- /dev/null
+++ b/pkgs/development/ocaml-modules/irmin/http.nix
@@ -0,0 +1,23 @@
+{ lib, buildDunePackage, cohttp-lwt, irmin, webmachine
+, checkseum, git-unix, irmin-git, irmin-mem, irmin-test
+}:
+
+buildDunePackage rec {
+
+  pname = "irmin-http";
+
+  inherit (irmin) version src;
+
+  propagatedBuildInputs = [ cohttp-lwt irmin webmachine ];
+
+  checkInputs = lib.optionals doCheck [ checkseum git-unix irmin-git irmin-mem irmin-test ];
+
+  doCheck = true;
+
+  meta = irmin.meta // {
+    description = "HTTP client and server for Irmin";
+  };
+
+}
+
+
diff --git a/pkgs/development/ocaml-modules/irmin/mem.nix b/pkgs/development/ocaml-modules/irmin/mem.nix
new file mode 100644
index 00000000000..b7040b9db0d
--- /dev/null
+++ b/pkgs/development/ocaml-modules/irmin/mem.nix
@@ -0,0 +1,19 @@
+{ lib, buildDunePackage, irmin, irmin-test }:
+
+buildDunePackage rec {
+
+  pname = "irmin-mem";
+
+  inherit (irmin) version src;
+
+  propagatedBuildInputs = [ irmin ];
+
+  checkInputs = lib.optional doCheck irmin-test;
+
+  doCheck = true;
+
+  meta = irmin.meta // {
+    description = "Generic in-memory Irmin stores";
+  };
+
+}
diff --git a/pkgs/development/ocaml-modules/irmin/pack.nix b/pkgs/development/ocaml-modules/irmin/pack.nix
new file mode 100644
index 00000000000..4eacc719cec
--- /dev/null
+++ b/pkgs/development/ocaml-modules/irmin/pack.nix
@@ -0,0 +1,19 @@
+{ lib, buildDunePackage, alcotest-lwt, index, irmin, irmin-test }:
+
+buildDunePackage rec {
+
+  pname = "irmin-pack";
+
+  inherit (irmin) version src;
+
+  propagatedBuildInputs = [ index irmin ];
+
+  checkInputs = lib.optionals doCheck [ alcotest-lwt irmin-test ];
+
+  doCheck = true;
+
+  meta = irmin.meta // {
+    description = "Irmin backend which stores values in a pack file";
+  };
+
+}
diff --git a/pkgs/development/ocaml-modules/irmin/test.nix b/pkgs/development/ocaml-modules/irmin/test.nix
new file mode 100644
index 00000000000..57e33e2db8a
--- /dev/null
+++ b/pkgs/development/ocaml-modules/irmin/test.nix
@@ -0,0 +1,15 @@
+{ buildDunePackage, alcotest, cmdliner, irmin, metrics-unix, mtime }:
+
+buildDunePackage {
+
+  pname = "irmin-test";
+
+  inherit (irmin) version src;
+
+  propagatedBuildInputs = [ alcotest cmdliner irmin metrics-unix mtime ];
+
+  meta = irmin.meta // {
+    description = "Irmin test suite";
+  };
+
+}
diff --git a/pkgs/development/ocaml-modules/irmin/unix.nix b/pkgs/development/ocaml-modules/irmin/unix.nix
new file mode 100644
index 00000000000..5793678bfcf
--- /dev/null
+++ b/pkgs/development/ocaml-modules/irmin/unix.nix
@@ -0,0 +1,26 @@
+{ lib, buildDunePackage
+, checkseum, cmdliner, git-unix, yaml
+, irmin, irmin-fs, irmin-git, irmin-graphql, irmin-http, irmin-mem, irmin-pack, irmin-watcher
+, irmin-test
+}:
+
+buildDunePackage rec {
+
+  pname = "irmin-unix";
+
+  inherit (irmin) version src;
+
+  propagatedBuildInputs = [ checkseum cmdliner git-unix yaml
+    irmin irmin-fs irmin-git irmin-graphql irmin-http irmin-mem irmin-pack irmin-watcher
+  ];
+
+  checkInputs = lib.optional doCheck irmin-test;
+
+  doCheck = true;
+
+  meta = irmin.meta // {
+    description = "Unix backends for Irmin";
+  };
+
+}
+
diff --git a/pkgs/development/ocaml-modules/yaml/default.nix b/pkgs/development/ocaml-modules/yaml/default.nix
new file mode 100644
index 00000000000..31790755357
--- /dev/null
+++ b/pkgs/development/ocaml-modules/yaml/default.nix
@@ -0,0 +1,24 @@
+{ lib, fetchurl, buildDunePackage
+, ppx_sexp_conv
+, bos, ctypes, fmt, logs, rresult, sexplib
+}:
+
+buildDunePackage rec {
+  pname = "yaml";
+  version = "2.0.1";
+
+  src = fetchurl {
+    url = "https://github.com/avsm/ocaml-yaml/releases/download/v${version}/yaml-v${version}.tbz";
+    sha256 = "1r8jj572h416g2zliwmxj2j9hkv73nxnpfb9gmbj9gixg24lskx0";
+  };
+
+  propagatedBuildInputs = [ bos ctypes fmt logs ppx_sexp_conv rresult sexplib ];
+
+  meta = {
+    description = "Parse and generate YAML 1.1 files";
+    homepage = "https://github.com/avsm/ocaml-yaml";
+    license = lib.licenses.isc;
+    maintainers = [ lib.maintainers.vbgl ];
+  };
+
+}