nixpkgs mirror (for testing)
github.com/NixOS/nixpkgs
nix
1{
2 lib,
3 buildGoModule,
4 fetchFromGitHub,
5 makeWrapper,
6 mercurial,
7 git,
8 openssh,
9 nixosTests,
10 fetchpatch,
11}:
12
13buildGoModule rec {
14 pname = "hound";
15 version = "0.7.1";
16
17 src = fetchFromGitHub {
18 owner = "hound-search";
19 repo = "hound";
20 rev = "v${version}";
21 sha256 = "sha256-Qdk57zLjTXLdDEmB6K+sZAym5s0BekJJa/CpYeOBOcY=";
22 };
23
24 patches = [
25 # add check config flag
26 # https://github.com/hound-search/hound/pull/485/files
27 (fetchpatch {
28 url = "https://github.com/MarcelCoding/hound/commit/b2f1cef335eff235394de336593687236a3b88bb.patch";
29 hash = "sha256-3+EBvnA8JIx2P6YM+8LpojDIX7hNXJ0vwVN4oSAouZ4=";
30 })
31 (fetchpatch {
32 url = "https://github.com/MarcelCoding/hound/commit/f917a457570ad8659d02fca4311cc91cadcadc00.patch";
33 hash = "sha256-CGvcIoSbgiayli5B8JRjvGfLuH2fscNpNTEm7xwkfpo=";
34 })
35 ];
36
37 vendorHash = "sha256-0psvz4bnhGuwwSAXvQp0ju0GebxoUyY2Rjp/D43KF78=";
38
39 nativeBuildInputs = [ makeWrapper ];
40
41 # requires network access
42 doCheck = false;
43
44 postInstall = ''
45 wrapProgram $out/bin/houndd --prefix PATH : ${
46 lib.makeBinPath [
47 mercurial
48 git
49 openssh
50 ]
51 }
52 '';
53
54 passthru.tests = { inherit (nixosTests) hound; };
55
56 meta = with lib; {
57 description = "Lightning fast code searching made easy";
58 homepage = "https://github.com/hound-search/hound";
59 license = licenses.mit;
60 maintainers = with maintainers; [
61 grahamc
62 SuperSandro2000
63 ];
64 };
65}