depot/third_party/nixpkgs/pkgs/development/ocaml-modules/erm_xmpp/default.nix

69 lines
1.3 KiB
Nix

{
stdenv,
lib,
fetchFromGitHub,
ocaml,
findlib,
camlp4,
ocamlbuild,
erm_xml,
mirage-crypto,
mirage-crypto-rng,
base64,
digestif,
}:
stdenv.mkDerivation rec {
version = "0.3+20241009";
pname = "ocaml${ocaml.version}-erm_xmpp";
src = fetchFromGitHub {
owner = "hannesm";
repo = "xmpp";
rev = "54418f77abf47b175e9c1b68a4f745a12b640d6a";
sha256 = "sha256-AbzZjNkW1VH/FOnzNruvelZeo3IYg/Usr3enQEknTQs=";
};
nativeBuildInputs = [
ocaml
findlib
ocamlbuild
camlp4
];
buildInputs = [ camlp4 ];
propagatedBuildInputs = [
erm_xml
mirage-crypto
mirage-crypto-rng
base64
digestif
];
strictDeps = true;
configurePhase = ''
runHook preConfigure
ocaml setup.ml -configure --prefix $out
runHook postConfigure
'';
buildPhase = ''
runHook preBuild
ocaml setup.ml -build
runHook postBuild
'';
installPhase = ''
runHook preInstall
ocaml setup.ml -install
runHook postInstall
'';
createFindlibDestdir = true;
meta = {
homepage = "https://github.com/hannesm/xmpp";
description = "OCaml based XMPP implementation (fork)";
license = lib.licenses.bsd3;
maintainers = with lib.maintainers; [ sternenseemann ];
inherit (ocaml.meta) platforms;
};
}