nixpkgs/pkgs/development/ocaml-modules/ezxmlm/default.nix
2018-10-06 14:18:51 +00:00

40 lines
1.3 KiB
Nix

{ stdenv, fetchFromGitHub, ocaml, findlib, dune, xmlm }:
stdenv.mkDerivation rec {
version = "1.0.2";
name = "ocaml${ocaml.version}-ezxmlm-${version}";
src = fetchFromGitHub {
owner = "avsm";
repo = "ezxmlm";
rev = "v${version}";
sha256 = "1dgr61f0hymywikn67inq908x5adrzl3fjx3v14l9k46x7kkacl9";
};
propagatedBuildInputs = [ xmlm ];
buildInputs = [ ocaml findlib dune ];
buildFlags = "build";
inherit (dune) installPhase;
meta = with stdenv.lib; {
description = "Combinators to use with xmlm for parsing and selection";
longDescription = ''
An "easy" interface on top of the xmlm library. This version provides
more convenient (but far less flexible) input and output functions
that go to and from [string] values. This avoids the need to write signal
code, which is useful for quick scripts that manipulate XML.
More advanced users should go straight to the Xmlm library and use it
directly, rather than be saddled with the Ezxmlm interface. Since the
types in this library are more specific than Xmlm, it should interoperate
just fine with it if you decide to switch over.
'';
maintainers = [ maintainers.carlosdagos ];
inherit (src.meta) homepage;
inherit (ocaml.meta) platforms;
license = licenses.isc;
};
}