summary refs log tree commit diff
path: root/pkgs/development/ocaml-modules
diff options
context:
space:
mode:
Diffstat (limited to 'pkgs/development/ocaml-modules')
-rw-r--r--pkgs/development/ocaml-modules/cow/default.nix1
-rw-r--r--pkgs/development/ocaml-modules/ezjsonm/default.nix14
-rw-r--r--pkgs/development/ocaml-modules/janestreet/0.13.nix66
-rw-r--r--pkgs/development/ocaml-modules/janestreet/sexp.patch30
-rw-r--r--pkgs/development/ocaml-modules/mirage-block/default.nix24
-rw-r--r--pkgs/development/ocaml-modules/mirage-bootvar-unix/default.nix22
-rw-r--r--pkgs/development/ocaml-modules/mirage-net/default.nix24
-rw-r--r--pkgs/development/ocaml-modules/mirage/runtime.nix6
-rw-r--r--pkgs/development/ocaml-modules/mustache/default.nix1
-rw-r--r--pkgs/development/ocaml-modules/parse-argv/default.nix28
10 files changed, 207 insertions, 9 deletions
diff --git a/pkgs/development/ocaml-modules/cow/default.nix b/pkgs/development/ocaml-modules/cow/default.nix
index 787854f8e41..13ee99804d8 100644
--- a/pkgs/development/ocaml-modules/cow/default.nix
+++ b/pkgs/development/ocaml-modules/cow/default.nix
@@ -2,6 +2,7 @@
 , uri, xmlm, omd, ezjsonm }:
 
 buildDunePackage rec {
+  useDune2 = true;
   minimumOCamlVersion = "4.02.3";
 
   version = "2.4.0";
diff --git a/pkgs/development/ocaml-modules/ezjsonm/default.nix b/pkgs/development/ocaml-modules/ezjsonm/default.nix
index 781af8a4c98..269288ef3cd 100644
--- a/pkgs/development/ocaml-modules/ezjsonm/default.nix
+++ b/pkgs/development/ocaml-modules/ezjsonm/default.nix
@@ -1,15 +1,17 @@
-{ stdenv, fetchzip, buildDunePackage, jsonm, hex, sexplib }:
+{ stdenv, fetchurl, buildDunePackage, jsonm, hex, sexplib0 }:
 
 buildDunePackage rec {
   pname = "ezjsonm";
-  version = "0.6.0";
+  version = "1.2.0";
 
-  src = fetchzip {
-    url = "https://github.com/mirage/${pname}/archive/${version}.tar.gz";
-    sha256 = "18g64lhai0bz65b9fil12vlgfpwa9b5apj7x6d7n4zzm18qfazvj";
+  useDune2 = true;
+
+  src = fetchurl {
+    url = "https://github.com/mirage/ezjsonm/releases/download/v${version}/ezjsonm-v${version}.tbz";
+    sha256 = "1q6cf63cc614lr141rzhm2w4rhi1snfqai6fmkhvfjs84hfbw2w7";
   };
 
-  propagatedBuildInputs = [ jsonm hex sexplib ];
+  propagatedBuildInputs = [ jsonm hex sexplib0 ];
 
   meta = {
     description = "An easy interface on top of the Jsonm library";
diff --git a/pkgs/development/ocaml-modules/janestreet/0.13.nix b/pkgs/development/ocaml-modules/janestreet/0.13.nix
index 175651f6960..9ab45aa5b30 100644
--- a/pkgs/development/ocaml-modules/janestreet/0.13.nix
+++ b/pkgs/development/ocaml-modules/janestreet/0.13.nix
@@ -6,6 +6,7 @@
 , ppxlib
 , re
 , openssl
+, zarith
 }:
 
 rec {
@@ -498,6 +499,71 @@ rec {
     meta.description = "Process library and s-expression based shell";
   };
 
+  csvfields = janePackage {
+    pname = "csvfields";
+    hash = "19pnq9m9lkdgqfy9l21w779d6c8djr1dvvjq7r9kbgfwb04symmr";
+    propagatedBuildInputs = [ core expect_test_helpers ];
+    meta.description = "Runtime support for ppx_xml_conv and ppx_csv_conv";
+  };
+
+  sexp_diff_kernel = janePackage {
+    pname = "sexp_diff_kernel";
+    hash = "125gssd24vfcfbkpjlqbxijlc4jyw2n0wv1cnddcfvpn1f7cghzb";
+    propagatedBuildInputs = [ core_kernel ];
+    meta.description = "Code for computing the diff of two sexps";
+  };
+
+  sexp_macro = janePackage {
+    pname = "sexp_macro";
+    hash = "1rqs2r2ihwsqzgnqsdr0db6dqzz4q6s9hi1hvnwf0cb2vnkhsjln";
+    propagatedBuildInputs = [ async sexplib ];
+    meta.description = "Sexp macros";
+  };
+
+  sexp_select = janePackage {
+    pname = "sexp_select";
+    hash = "02yckmin937scqs2i45r2qqp56rqa6j2q04nfhnnxvn3bkb0qnb1";
+    propagatedBuildInputs = [ base ppx_jane ];
+    meta.description = "A library to use CSS-style selectors to traverse sexp trees";
+  };
+
+  sexp = janePackage {
+    pname = "sexp";
+    hash = "0cqp6syc4ap2nxgg1mvwwz2pmib48kp3gigzpjwh20wr38qq0p1r";
+    propagatedBuildInputs = [
+      async
+      core
+      csvfields
+      re2
+      sexp_diff_kernel
+      sexp_macro
+      sexp_pretty
+      sexp_select
+    ];
+    patches = ./sexp.patch;
+    meta.description = "S-expression swiss knife";
+  };
+
+  zarith_stubs_js = janePackage {
+    pname = "zarith_stubs_js";
+    hash = "0dldnf85rfyx8z63qjly9n8plj8nnkw4i5zrj5vbm7s2wjcfjzj1";
+    meta.description = "Javascripts stubs for the Zarith library";
+  };
+
+  bignum = janePackage {
+    pname = "bignum";
+    hash = "0qldyl5mhlffnyps7n9y8qykm0ylrdiw5ii8zlww82zmmpp8zv5x";
+    propagatedBuildInputs = [ core_kernel zarith zarith_stubs_js ];
+    meta.description = "Core-flavoured wrapper around zarith's arbitrary-precision rationals";
+  };
+
+  delimited_parsing = janePackage {
+    pname = "delimited_parsing";
+    hash = "0siz746q28241wk0sv435lfvvips7sl151z5a1sbqanr3lm4s17w";
+    propagatedBuildInputs = [ async core_extended ];
+    meta.description = "Parsing of character (e.g., comma) separated and fixed-width values";
+  };
+
   ### Packages at version 0.11, with dependencies at version 0.12
 
   configurator = janePackage {
diff --git a/pkgs/development/ocaml-modules/janestreet/sexp.patch b/pkgs/development/ocaml-modules/janestreet/sexp.patch
new file mode 100644
index 00000000000..e56ce6508db
--- /dev/null
+++ b/pkgs/development/ocaml-modules/janestreet/sexp.patch
@@ -0,0 +1,30 @@
+diff --git a/lazy_list/src/dune b/lazy_list/src/dune
+index f1650ad..df90914 100644
+--- a/lazy_list/src/dune
++++ b/lazy_list/src/dune
+@@ -1,2 +1,3 @@
+ (library (name lazy_list) (libraries core_kernel)
++ (public_name sexp.lazy_list)
+  (preprocess (pps ppx_jane)))
+\ No newline at end of file
+diff --git a/sexp_app/pattern/dune b/sexp_app/pattern/dune
+index b7d2c3b..baf136b 100644
+--- a/sexp_app/pattern/dune
++++ b/sexp_app/pattern/dune
+@@ -1,4 +1,5 @@
+ (library (name sexp_app_pattern) (libraries core re2 sexplib str)
++ (public_name sexp.sexp_app_pattern)
+  (preprocess (pps ppx_jane)))
+ 
+ (ocamllex lexer)
+diff --git a/sexp_app/src/dune b/sexp_app/src/dune
+index b91ff40..a07a4e7 100644
+--- a/sexp_app/src/dune
++++ b/sexp_app/src/dune
+@@ -1,4 +1,5 @@
+ (library (name sexp_app) (libraries core lazy_list re2 sexplib str)
++ (public_name sexp.sexp_app)
+  (preprocess (pps ppx_jane -allow-unannotated-ignores)))
+ 
+ (ocamllex csv_lexeme)
+\ No newline at end of file
diff --git a/pkgs/development/ocaml-modules/mirage-block/default.nix b/pkgs/development/ocaml-modules/mirage-block/default.nix
new file mode 100644
index 00000000000..28eb4d6b28e
--- /dev/null
+++ b/pkgs/development/ocaml-modules/mirage-block/default.nix
@@ -0,0 +1,24 @@
+{ lib, fetchurl, buildDunePackage
+, cstruct, lwt, mirage-device
+}:
+
+buildDunePackage rec {
+  pname = "mirage-block";
+  version = "2.0.1";
+
+  useDune2 = true;
+
+  src = fetchurl {
+    url = "https://github.com/mirage/mirage-block/releases/download/v${version}/mirage-block-v${version}.tbz";
+    sha256 = "1wp8wmixaz9i2sbvq6nkx903lbnpdgb2w404pz1wk8kcg9p3ilcc";
+  };
+
+  propagatedBuildInputs = [ cstruct lwt mirage-device ];
+
+  meta = with lib; {
+    description = "Block signatures and implementations for MirageOS";
+    homepage = "https://github.com/mirage/mirage-block";
+    license = licenses.isc;
+    maintainers = with maintainers; [ vbgl ];
+  };
+}
diff --git a/pkgs/development/ocaml-modules/mirage-bootvar-unix/default.nix b/pkgs/development/ocaml-modules/mirage-bootvar-unix/default.nix
new file mode 100644
index 00000000000..9b9a1ae185e
--- /dev/null
+++ b/pkgs/development/ocaml-modules/mirage-bootvar-unix/default.nix
@@ -0,0 +1,22 @@
+{ lib, fetchurl, buildDunePackage
+, lwt, parse-argv
+}:
+
+buildDunePackage rec {
+  pname = "mirage-bootvar-unix";
+  version = "0.1.0";
+
+  src = fetchurl {
+    url = "https://github.com/mirage/mirage-bootvar-unix/releases/download/${version}/mirage-bootvar-unix-${version}.tbz";
+    sha256 = "0r92s6y7nxg0ci330a7p0hii4if51iq0sixn20cnm5j4a2clprbf";
+  };
+
+  propagatedBuildInputs = [ lwt parse-argv ];
+
+  meta = {
+    description = "Unix implementation of MirageOS Bootvar interface";
+    homepage = "https://github.com/mirage/mirage-bootvar-unix";
+    license = lib.licenses.isc;
+    maintainers = [ lib.maintainers.vbgl ];
+  };
+}
diff --git a/pkgs/development/ocaml-modules/mirage-net/default.nix b/pkgs/development/ocaml-modules/mirage-net/default.nix
new file mode 100644
index 00000000000..a29727d7ee1
--- /dev/null
+++ b/pkgs/development/ocaml-modules/mirage-net/default.nix
@@ -0,0 +1,24 @@
+{ lib, fetchurl, buildDunePackage
+, cstruct, fmt, lwt, macaddr, mirage-device
+}:
+
+buildDunePackage rec {
+  pname = "mirage-net";
+  version = "3.0.1";
+
+  useDune2 = true;
+
+  src = fetchurl {
+    url = "https://github.com/mirage/mirage-net/releases/download/v${version}/mirage-net-v${version}.tbz";
+    sha256 = "0yfvl0fgs7xy5i7kkparaa7a315a2h7kb1z24fmmnwnyaji57dg3";
+  };
+
+  propagatedBuildInputs = [ cstruct fmt lwt macaddr mirage-device ];
+
+  meta = {
+    description = "Network signatures for MirageOS";
+    homepage = "https://github.com/mirage/mirage-net";
+    license = lib.licenses.isc;
+    maintainers = [ lib.maintainers.vbgl ];
+  };
+}
diff --git a/pkgs/development/ocaml-modules/mirage/runtime.nix b/pkgs/development/ocaml-modules/mirage/runtime.nix
index 816e85d3c9a..b3f308979f4 100644
--- a/pkgs/development/ocaml-modules/mirage/runtime.nix
+++ b/pkgs/development/ocaml-modules/mirage/runtime.nix
@@ -3,13 +3,13 @@
 
 buildDunePackage rec {
   pname = "mirage-runtime";
-  version = "3.8.1";
+  version = "3.9.0";
 
-  minimumOCamlVersion = "4.06";
+  minimumOCamlVersion = "4.08";
 
   src = fetchurl {
     url = "https://github.com/mirage/mirage/releases/download/v${version}/mirage-v${version}.tbz";
-    sha256 = "1sx9df041jb2rdrsibybifhml6h6kpzw9d2bw6vvv0ml500070ww";
+    sha256 = "1hznh49v1jlkwww6xi9f2f4yjzlh9qfvdrrdzvddnwsh3g00flla";
   };
 
   propagatedBuildInputs = [ ipaddr functoria-runtime fmt logs ocaml_lwt ];
diff --git a/pkgs/development/ocaml-modules/mustache/default.nix b/pkgs/development/ocaml-modules/mustache/default.nix
index 267aa17e9e4..005e26926d1 100644
--- a/pkgs/development/ocaml-modules/mustache/default.nix
+++ b/pkgs/development/ocaml-modules/mustache/default.nix
@@ -3,6 +3,7 @@
 buildDunePackage rec {
   pname = "mustache";
   version = "3.1.0";
+  useDune2 = true;
   src = fetchFromGitHub {
     owner = "rgrinberg";
     repo = "ocaml-mustache";
diff --git a/pkgs/development/ocaml-modules/parse-argv/default.nix b/pkgs/development/ocaml-modules/parse-argv/default.nix
new file mode 100644
index 00000000000..64cc7c0c6b7
--- /dev/null
+++ b/pkgs/development/ocaml-modules/parse-argv/default.nix
@@ -0,0 +1,28 @@
+{ lib, fetchurl, buildDunePackage, ocaml
+, astring
+, ounit
+}:
+
+buildDunePackage rec {
+  pname = "parse-argv";
+  version = "0.2.0";
+
+  minimumOCamlVersion = "4.03";
+
+  src = fetchurl {
+    url = "https://github.com/mirage/parse-argv/releases/download/v${version}/parse-argv-v${version}.tbz";
+    sha256 = "06dl04fcmwpkydzni2fzwrhk0bqypd55mgxfax9v82x65xrgj5gw";
+  };
+
+  propagatedBuildInputs = [ astring ];
+
+  doCheck = lib.versionAtLeast ocaml.version "4.04";
+  checkInputs = [ ounit ];
+
+  meta = {
+    description = "Process strings into sets of command-line arguments";
+    homepage = "https://github.com/mirage/parse-argv";
+    license = lib.licenses.isc;
+    maintainers = [ lib.maintainers.vbgl ];
+  };
+}