1{
2 buildGoModule,
3 fetchFromGitHub,
4 fetchpatch,
5 lib,
6}:
7
8buildGoModule rec {
9 pname = "git-hound";
10 version = "1.7.2";
11
12 src = fetchFromGitHub {
13 owner = "tillson";
14 repo = "git-hound";
15 rev = "v${version}";
16 hash = "sha256-W+rYDyRIw4jWWO4UZkUHFq/D/7ZXM+y5vdbclk6S0ro=";
17 };
18
19 patches = [
20 # https://github.com/tillson/git-hound/pull/66
21 (fetchpatch {
22 url = "https://github.com/tillson/git-hound/commit/cd8aa19401cfdec9e4d76c1f6eb4d85928ec4b03.patch";
23 hash = "sha256-EkdR2KkxxlMLNtKFGpxsQ/msJT5NcMF7irIUcU2WWJY=";
24 })
25 ];
26
27 # tests fail outside of nix
28 doCheck = false;
29
30 vendorHash = "sha256-8teIa083oMXm0SjzMP+mGOVAel1Hbsp3TSMhdvqVbQs=";
31
32 meta = with lib; {
33 description = "Reconnaissance tool for GitHub code search";
34 longDescription = ''
35 GitHound pinpoints exposed API keys and other sensitive information
36 across all of GitHub using pattern matching, commit history searching,
37 and a unique result scoring system.
38 '';
39 homepage = "https://github.com/tillson/git-hound";
40 license = with licenses; [ mit ];
41 maintainers = with maintainers; [ fab ];
42 mainProgram = "git-hound";
43 };
44}