{ lib, stdenv, fetchFromGitHub, fetchpatch, boost, pkg-config, cmake, catch2 }: stdenv.mkDerivation rec { pname = "grip-search"; version = "0.8"; src = fetchFromGitHub { owner = "sc0ty"; repo = "grip"; rev = "v${version}"; sha256 = "0bkqarylgzhis6fpj48qbifcd6a26cgnq8784hgnm707rq9kb0rx"; }; nativeBuildInputs = [ pkg-config cmake catch2 ]; doCheck = true; buildInputs = [ boost ]; patches = [ # Can be removed after this upstream PR gets merged: https://github.com/sc0ty/grip/pull/6 (fetchpatch { name = "include-cstdint.patch"; url = "https://github.com/sc0ty/grip/commit/da37b3c805306ee4ea617ce3f1487b8ee9876e50.patch"; hash = "sha256-Xh++oDn5qn5NPgng7gfeCkO5FN9OmW+8fGhDLpAJfR8="; }) ]; postPatch = '' substituteInPlace src/general/config.h --replace-fail "CUSTOM-BUILD" "${version}" ''; meta = with lib; { description = "Fast, indexed regexp search over large file trees"; homepage = "https://github.com/sc0ty/grip"; license = licenses.gpl3; platforms = platforms.all; maintainers = with maintainers; [ tex ]; }; }