summary refs log tree commit diff
diff options
context:
space:
mode:
authorVincent Laporte <Vincent.Laporte@gmail.com>2017-03-17 02:37:38 +0000
committerVincent Laporte <Vincent.Laporte@gmail.com>2017-03-17 02:39:15 +0000
commitcc012b227f47cb1913a446d95bb699967f027e71 (patch)
tree879f3265d43e88a025a04398b49cebd3b1e9de9e
parent2eb48daa94227ff10aeca8fdccc6e570c2f0f7c4 (diff)
downloadnixpkgs-cc012b227f47cb1913a446d95bb699967f027e71.tar
nixpkgs-cc012b227f47cb1913a446d95bb699967f027e71.tar.gz
nixpkgs-cc012b227f47cb1913a446d95bb699967f027e71.tar.bz2
nixpkgs-cc012b227f47cb1913a446d95bb699967f027e71.tar.lz
nixpkgs-cc012b227f47cb1913a446d95bb699967f027e71.tar.xz
nixpkgs-cc012b227f47cb1913a446d95bb699967f027e71.tar.zst
nixpkgs-cc012b227f47cb1913a446d95bb699967f027e71.zip
ocamlPackages.functoria: init at 2.0.2
Functoria is a DSL to describe a set of modules and functors, their
types and how to apply them in order to produce a complete application.

Homepage: https://github.com/mirage/functoria
-rw-r--r--pkgs/development/ocaml-modules/functoria/default.nix27
-rw-r--r--pkgs/top-level/ocaml-packages.nix2
2 files changed, 29 insertions, 0 deletions
diff --git a/pkgs/development/ocaml-modules/functoria/default.nix b/pkgs/development/ocaml-modules/functoria/default.nix
new file mode 100644
index 00000000000..bfcdd4168ca
--- /dev/null
+++ b/pkgs/development/ocaml-modules/functoria/default.nix
@@ -0,0 +1,27 @@
+{ stdenv, fetchurl, ocaml, findlib, ocamlbuild, opam, topkg
+, bos, cmdliner, ocamlgraph
+}:
+
+stdenv.mkDerivation rec {
+	name = "ocaml${ocaml.version}-functoria-${version}";
+	version = "2.0.2";
+	src = fetchurl {
+		url = "http://github.com/mirage/functoria/releases/download/${version}/functoria-${version}.tbz";
+		sha256 = "019rl4rir4lwgjyqj2wq3ylw4daih1kxxgbc6ld6kzcq66mwr747";
+	};
+
+	unpackCmd = "tar xjf $src";
+
+	buildInputs = [ ocaml findlib ocamlbuild opam topkg ];
+	propagatedBuildInputs = [ bos cmdliner ocamlgraph ];
+
+	inherit (topkg) buildPhase installPhase;
+
+	meta = {
+		description = "A DSL to organize functor applications";
+		homepage = https://github.com/mirage/functoria;
+		license = stdenv.lib.licenses.isc;
+		maintainers = [ stdenv.lib.maintainers.vbgl ];
+		inherit (ocaml.meta) platforms;
+	};
+}
diff --git a/pkgs/top-level/ocaml-packages.nix b/pkgs/top-level/ocaml-packages.nix
index 4cd041564f9..03afec1870f 100644
--- a/pkgs/top-level/ocaml-packages.nix
+++ b/pkgs/top-level/ocaml-packages.nix
@@ -198,6 +198,8 @@ let
 
     fpath = callPackage ../development/ocaml-modules/fpath { };
 
+    functoria = callPackage ../development/ocaml-modules/functoria { };
+
     functory = callPackage ../development/ocaml-modules/functory { };
 
     gen = callPackage ../development/ocaml-modules/gen { };