nixpkgs/pkgs/by-name/nu/nuraft/package.nix
aleksana 571c71e6f7 treewide: migrate packages to pkgs/by-name, take 1
We are migrating packages that meet below requirements:

1. using `callPackage`
2. called path is a directory
3. overriding set is empty (`{ }`)
4. not containing path expressions other than relative path (to
makenixpkgs-vet happy)
5. not referenced by nix files outside of the directory, other
than`pkgs/top-level/all-packages.nix`
6. not referencing nix files outside of the directory
7. not referencing `default.nix` (since it's changed to `package.nix`)
8. `outPath` doesn't change after migration

The tool is here: https://github.com/Aleksanaa/by-name-migrate.
2024-11-09 20:04:51 +08:00

35 lines
995 B
Nix

{ lib, stdenv, fetchFromGitHub, fetchpatch, cmake, boost, asio, openssl, zlib }:
stdenv.mkDerivation rec {
pname = "nuraft";
version = "2.1.0";
src = fetchFromGitHub {
owner = "eBay";
repo = "NuRaft";
rev = "v${version}";
sha256 = "sha256-puO8E7tSLqB0oq/NlzEZqQgIZKm7ZUb4HhR0XuI9dco=";
};
patches = [
# Fix gcc-13 build failure:
# https://github.com/eBay/NuRaft/pull/435
(fetchpatch {
name = "gcc-13.patch";
url = "https://github.com/eBay/NuRaft/commit/fddf33a4d8cd7fcd0306cc838a30893a4df3d58f.patch";
hash = "sha256-JOtR3llE4QwQM7PBx+ILR87zsPB0GZ/aIKbSdHIrePA=";
})
];
nativeBuildInputs = [ cmake ];
buildInputs = [ boost asio openssl zlib ];
meta = with lib; {
homepage = "https://github.com/eBay/NuRaft";
description = "C++ implementation of Raft core logic as a replication library";
license = licenses.asl20;
maintainers = with maintainers; [ wheelsandmetal ];
platforms = platforms.all;
};
}