{
stdenv,
lib,
fetchFromGitHub,
ocaml,
findlib,
astring,
pprint,
}:
if lib.versionOlder ocaml.version "4.02" then
throw "ocp-ocamlres is not available for OCaml ${ocaml.version}"
else
stdenv.mkDerivation rec {
pname = "ocaml${ocaml.version}-ocp-ocamlres";
version = "0.4";
src = fetchFromGitHub {
owner = "OCamlPro";
repo = "ocp-ocamlres";
rev = "v${version}";
sha256 = "0smfwrj8qhzknhzawygxi0vgl2af4vyi652fkma59rzjpvscqrnn";
};
nativeBuildInputs = [
ocaml
findlib
];
buildInputs = [
astring
pprint
strictDeps = true;
createFindlibDestdir = true;
installFlags = [ "BINDIR=$(out)/bin" ];
preInstall = "mkdir -p $out/bin";
meta = {
description = "Simple tool and library to embed files and directories inside OCaml executables";
homepage = "https://www.typerex.org/ocp-ocamlres.html";
license = lib.licenses.lgpl3Plus;
maintainers = [ lib.maintainers.vbgl ];
mainProgram = "ocp-ocamlres";
inherit (ocaml.meta) platforms;
}