Merge pull request #268619 from tweag/lib-descriptions
[NixPkgs.git] / pkgs / by-name / ra / raft-cowsql / package.nix
blobf4e94d8f4106cd08bc1cc7e474485e8e7a10771b
1 { lib
2 , stdenv
3 , fetchFromGitHub
4 , autoreconfHook
5 , libuv
6 , lz4
7 , pkg-config
8 , incus
9 , gitUpdater
12 stdenv.mkDerivation rec {
13   pname = "raft-cowsql";
14   version = "0.18.2";
16   src = fetchFromGitHub {
17     owner = "cowsql";
18     repo = "raft";
19     rev = "refs/tags/v${version}";
20     hash = "sha256-CMcKXX2u+qiroleg5GIovTOVAg9ycXBsRDqfsOCL3yo=";
21   };
23   nativeBuildInputs = [ autoreconfHook pkg-config ];
24   buildInputs = [ libuv lz4 ];
26   enableParallelBuilding = true;
28   patches = [
29     # network tests either hang indefinitely, or fail outright
30     ./disable-net-tests.patch
32     # missing dir check is flaky
33     ./disable-missing-dir-test.patch
34   ];
36   preConfigure = ''
37     substituteInPlace configure --replace /usr/bin/ " "
38   '';
40   doCheck = true;
42   outputs = [ "dev" "out" ];
44   passthru = {
45     inherit (incus) tests;
47     updateScript = gitUpdater {
48       rev-prefix = "v";
49     };
50   };
52   meta = with lib; {
53     description = "Asynchronous C implementation of the Raft consensus protocol";
54     homepage = "https://github.com/cowsql/raft";
55     license = licenses.lgpl3Only;
56     platforms = platforms.linux;
57     maintainers = with maintainers; [ adamcstephens ];
58   };