summary refs log tree commit diff
path: root/pkgs/development/ocaml-modules
diff options
context:
space:
mode:
authorVincent Laporte <vincent.laporte@gmail.com>2014-08-21 15:24:43 +0200
committerVincent Laporte <vincent.laporte@gmail.com>2014-08-21 15:36:52 +0200
commitb8826951e40626d1ad10958c1428871b97999d3e (patch)
tree16a17e9f699fca3c8d497bb8b0b1bc131838a2e7 /pkgs/development/ocaml-modules
parent99f89d0ec62be558b6d777f6f453e105c1bbbe17 (diff)
downloadnixlib-b8826951e40626d1ad10958c1428871b97999d3e.tar
nixlib-b8826951e40626d1ad10958c1428871b97999d3e.tar.gz
nixlib-b8826951e40626d1ad10958c1428871b97999d3e.tar.bz2
nixlib-b8826951e40626d1ad10958c1428871b97999d3e.tar.lz
nixlib-b8826951e40626d1ad10958c1428871b97999d3e.tar.xz
nixlib-b8826951e40626d1ad10958c1428871b97999d3e.tar.zst
nixlib-b8826951e40626d1ad10958c1428871b97999d3e.zip
Adds ocaml-sqlite3EZ and its dependency ocaml+twt
ocaml+twt is an alternative syntax for OCaml that uses indentation to group
multi-line expressions, like Python and Haskell.

Homepage: http://people.csail.mit.edu/mikelin/ocaml+twt/

sqlite3EZ is a thin wrapper for sqlite3-ocaml with a simplified interface. Query
results are processed with a functional map/fold, transactions are
aborted by exceptions, resource management is handled by the garbage
collector, etc.

Homepage: https://github.com/mlin/ocaml-sqlite3EZ
Diffstat (limited to 'pkgs/development/ocaml-modules')
-rw-r--r--pkgs/development/ocaml-modules/sqlite3EZ/default.nix23
-rw-r--r--pkgs/development/ocaml-modules/twt/default.nix29
2 files changed, 52 insertions, 0 deletions
diff --git a/pkgs/development/ocaml-modules/sqlite3EZ/default.nix b/pkgs/development/ocaml-modules/sqlite3EZ/default.nix
new file mode 100644
index 000000000000..e8ec8e6f5dac
--- /dev/null
+++ b/pkgs/development/ocaml-modules/sqlite3EZ/default.nix
@@ -0,0 +1,23 @@
+{stdenv, fetchurl, ocaml, findlib, twt, ocaml_sqlite3 }:
+
+stdenv.mkDerivation {
+  name = "ocaml-sqlite3EZ-0.1.0";
+
+  src = fetchurl {
+    url = https://github.com/mlin/ocaml-sqlite3EZ/archive/v0.1.0.tar.gz;
+    sha256 = "8ed2c5d5914a65cbd95589ef11bfb8b38a020eb850cdd49b8adce7ee3a563748";
+  };
+
+  buildInputs = [ ocaml findlib twt ];
+
+  propagatedBuildInputs = [ ocaml_sqlite3 ];
+
+  createFindlibDestdir = true;
+
+  meta = {
+    homepage = http://github.com/mlin/ocaml-sqlite3EZ;
+    description = "A thin wrapper for sqlite3-ocaml with a simplified interface";
+    license = stdenv.lib.licenses.mit;
+    platforms = ocaml.meta.platforms;
+  };
+}
diff --git a/pkgs/development/ocaml-modules/twt/default.nix b/pkgs/development/ocaml-modules/twt/default.nix
new file mode 100644
index 000000000000..e2a627aa3609
--- /dev/null
+++ b/pkgs/development/ocaml-modules/twt/default.nix
@@ -0,0 +1,29 @@
+{stdenv, fetchurl, ocaml, findlib }:
+
+stdenv.mkDerivation {
+  name = "ocaml-twt-0.93.2";
+
+  src = fetchurl {
+    url = https://github.com/mlin/twt/archive/v0.93.2.tar.gz;
+    sha256 = "aec091fbd1e6c4d252cf9664237418b4bc8c7d6b7a17475589be78365397e768";
+  };
+
+  buildInputs = [ ocaml findlib ];
+
+  createFindlibDestdir = true;
+
+  configurePhase = ''
+    mkdir $out/bin
+  '';
+
+  installPhase = ''
+    make install PREFIX=$out
+  '';
+
+  meta = {
+    homepage = http://people.csail.mit.edu/mikelin/ocaml+twt/;
+    description = "“The Whitespace Thing” for OCaml";
+    license = stdenv.lib.licenses.mit;
+    platforms = ocaml.meta.platforms;
+  };
+}