{ lib , stdenv , fetchFromGitHub , cmake , catch2_3 }: stdenv.mkDerivation rec { pname = "rapidfuzz-cpp"; version = "1.0.4"; src = fetchFromGitHub { owner = "maxbachmann"; repo = "rapidfuzz-cpp"; rev = "v${version}"; hash = "sha256-ocR88dgRo7dF7scATv8kPYmcK3R6a8DcoJfNHq1hZnM="; }; patches = [ ./dont-fetch-project-options.patch ]; nativeBuildInputs = [ cmake ]; cmakeFlags = lib.optionals doCheck [ "-DRAPIDFUZZ_BUILD_TESTING=ON" ]; checkInputs = [ catch2_3 ]; doCheck = true; meta = { description = "Rapid fuzzy string matching in C++ using the Levenshtein Distance"; homepage = "https://github.com/maxbachmann/rapidfuzz-cpp"; changelog = "https://github.com/maxbachmann/rapidfuzz-cpp/blob/${src.rev}/CHANGELOG.md"; license = lib.licenses.mit; maintainers = with lib.maintainers; [ dotlambda ]; platforms = lib.platforms.unix; }; }