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

97 lines
1.4 KiB
Nix

{
lib,
buildDunePackage,
fetchurl,
ke,
duff,
decompress,
cstruct,
optint,
bigstringaf,
checkseum,
logs,
psq,
fmt,
result,
rresult,
fpath,
base64,
bos,
digestif,
alcotest,
crowbar,
alcotest-lwt,
lwt,
findlib,
mirage-flow,
cmdliner,
hxd,
getconf,
substituteAll,
}:
buildDunePackage rec {
pname = "carton";
version = "0.7.0";
minimalOCamlVersion = "4.08";
src = fetchurl {
url = "https://github.com/mirage/ocaml-git/releases/download/${pname}-v${version}/git-${pname}-v${version}.tbz";
hash = "sha256-vWkBJdP4ZpRCEwzrFMzsdHay4VyiXix/+1qzk+7yDvk=";
};
patches = [
(substituteAll {
src = ./carton-find-getconf.patch;
getconf = "${getconf}";
})
];
# remove changelogs for mimic and the git* packages
postPatch = ''
rm CHANGES.md
'';
buildInputs = [
cmdliner
digestif
result
rresult
fpath
bos
hxd
];
propagatedBuildInputs = [
ke
duff
decompress
cstruct
optint
bigstringaf
checkseum
logs
psq
fmt
];
doCheck = true;
nativeBuildInputs = [
findlib
];
checkInputs = [
base64
alcotest
alcotest-lwt
crowbar
lwt
mirage-flow
];
meta = with lib; {
description = "Implementation of PACKv2 file in OCaml";
license = licenses.mit;
homepage = "https://github.com/mirage/ocaml-git";
maintainers = [ maintainers.sternenseemann ];
};
}