97 lines
1.4 KiB
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 ];
|
|
};
|
|
}
|