1{ lib, buildDunePackage, ocaml, fetchurl
2, ctypes, result
3, alcotest
4, file
5}:
6
7buildDunePackage rec {
8 pname = "luv";
9 version = "0.5.11";
10 useDune2 = true;
11
12 src = fetchurl {
13 url = "https://github.com/aantron/luv/releases/download/${version}/luv-${version}.tar.gz";
14 sha256 = "sha256-zOz0cxGzhLi3Q36qyStNCz8JGXHtECQfZysMKiyKOkM=";
15 };
16
17 postConfigure = ''
18 for f in src/c/vendor/configure/{ltmain.sh,configure}; do
19 substituteInPlace "$f" --replace /usr/bin/file file
20 done
21 '';
22
23 nativeBuildInputs = [ file ];
24 propagatedBuildInputs = [ ctypes result ];
25 checkInputs = [ alcotest ];
26 doCheck = lib.versionAtLeast ocaml.version "4.08";
27
28 meta = with lib; {
29 homepage = "https://github.com/aantron/luv";
30 description = "Binding to libuv: cross-platform asynchronous I/O";
31 # MIT-licensed, extra licenses apply partially to libuv vendor
32 license = with licenses; [ mit bsd2 bsd3 cc-by-sa-40 ];
33 maintainers = with maintainers; [ locallycompact sternenseemann ];
34 };
35}