nixpkgs mirror (for testing)
github.com/NixOS/nixpkgs
nix
1{
2 fetchFromGitHub,
3 freerdp,
4 nmap,
5 openvpn,
6 python3Packages,
7 lib,
8 tigervnc,
9}:
10
11python3Packages.buildPythonApplication {
12 pname = "crowbar";
13 version = "unstable-2020-04-23";
14 format = "pyproject";
15
16 src = fetchFromGitHub {
17 owner = "galkan";
18 repo = "crowbar";
19 rev = "500d633ff5ddfcbc70eb6d0b4d2181e5b8d3c535";
20 sha256 = "05m9vywr9976pc7il0ak8nl26mklzxlcqx0p8rlfyx1q766myqzf";
21 };
22
23 build-system = [ python3Packages.setuptools ];
24
25 dependencies = [ python3Packages.paramiko ];
26
27 patchPhase = ''
28 sed -i 's,/usr/bin/xfreerdp,${freerdp}/bin/xfreerdp,g' lib/main.py
29 sed -i 's,/usr/bin/vncviewer,${tigervnc}/bin/vncviewer,g' lib/main.py
30 sed -i 's,/usr/sbin/openvpn,${openvpn}/bin/openvpn,g' lib/main.py
31
32 sed -i 's,/usr/bin/nmap,${nmap}/bin/nmap,g' lib/nmap.py
33 '';
34
35 # Sanity check
36 checkPhase = ''
37 $out/bin/crowbar --help > /dev/null
38 '';
39
40 meta = with lib; {
41 homepage = "https://github.com/galkan/crowbar";
42 description = "Brute forcing tool that can be used during penetration tests";
43 mainProgram = "crowbar";
44 license = licenses.mit;
45 maintainers = with maintainers; [ pamplemousse ];
46 };
47}