1{
2 lib,
3 buildGoModule,
4 fetchFromGitHub,
5 git,
6 stdenv,
7}:
8
9buildGoModule rec {
10 pname = "gitjacker";
11 version = "0.1.0";
12
13 src = fetchFromGitHub {
14 owner = "liamg";
15 repo = "gitjacker";
16 rev = "v${version}";
17 sha256 = "sha256-rEn9FpcRfEt2yGepIPEAO9m8JeVb+nMhYMBWhC/barc=";
18 };
19
20 vendorHash = null;
21
22 propagatedBuildInputs = [ git ];
23
24 nativeCheckInputs = [ git ];
25
26 doCheck = !stdenv.hostPlatform.isDarwin;
27
28 preCheck = ''
29 export PATH=$TMPDIR/usr/bin:$PATH
30 '';
31
32 meta = with lib; {
33 description = "Leak git repositories from misconfigured websites";
34 mainProgram = "gitjacker";
35 longDescription = ''
36 Gitjacker downloads git repositories and extracts their contents
37 from sites where the .git directory has been mistakenly uploaded.
38 It will still manage to recover a significant portion of a repository
39 even where directory listings are disabled.
40 '';
41 homepage = "https://github.com/liamg/gitjacker";
42 license = with licenses; [ unlicense ];
43 maintainers = with maintainers; [ fab ];
44 };
45}