summary refs log tree commit diff
path: root/pkgs/development/ocaml-modules/yaml/default.nix
diff options
context:
space:
mode:
Diffstat (limited to 'pkgs/development/ocaml-modules/yaml/default.nix')
-rw-r--r--pkgs/development/ocaml-modules/yaml/default.nix31
1 files changed, 31 insertions, 0 deletions
diff --git a/pkgs/development/ocaml-modules/yaml/default.nix b/pkgs/development/ocaml-modules/yaml/default.nix
new file mode 100644
index 00000000000..43481e4c7f3
--- /dev/null
+++ b/pkgs/development/ocaml-modules/yaml/default.nix
@@ -0,0 +1,31 @@
+{ lib, fetchurl, buildDunePackage, ocaml
+, dune-configurator
+, bos, ctypes, fmt, logs, rresult
+, mdx, alcotest, crowbar, junit_alcotest, ezjsonm
+}:
+
+buildDunePackage rec {
+  pname = "yaml";
+  version = "3.0.0";
+
+  useDune2 = true;
+
+  src = fetchurl {
+    url = "https://github.com/avsm/ocaml-yaml/releases/download/v${version}/yaml-v${version}.tbz";
+    sha256 = "1iws6lbnrrd5hhmm7lczfvqp0aidx5xn7jlqk2s5rjfmj9qf4j2c";
+  };
+
+  buildInputs = [ dune-configurator ];
+  propagatedBuildInputs = [ bos ctypes rresult ];
+  # crowbar is not available for OCaml < 4.08
+  doCheck = lib.versionAtLeast ocaml.version "4.08";
+  checkInputs = [ fmt logs mdx.bin alcotest crowbar junit_alcotest ezjsonm ];
+
+  meta = {
+    description = "Parse and generate YAML 1.1 files";
+    homepage = "https://github.com/avsm/ocaml-yaml";
+    license = lib.licenses.isc;
+    maintainers = [ lib.maintainers.vbgl ];
+  };
+
+}