1{
2 lib,
3 beautifulsoup4,
4 buildPythonPackage,
5 fetchFromGitHub,
6 impacket,
7 ldap3-bleeding-edge,
8 lxml,
9 pyasn1,
10 pycryptodome,
11 pythonOlder,
12 setuptools,
13}:
14
15buildPythonPackage rec {
16 pname = "pywerview";
17 version = "0.7.3";
18 pyproject = true;
19
20 disabled = pythonOlder "3.7";
21
22 src = fetchFromGitHub {
23 owner = "the-useless-one";
24 repo = "pywerview";
25 tag = "v${version}";
26 hash = "sha256-ZIv0IW7oruMBwinXvH/n1YEtbBFyLb8h/Qlh4JxvV4k=";
27 };
28
29 build-system = [ setuptools ];
30
31 dependencies = [
32 beautifulsoup4
33 impacket
34 ldap3-bleeding-edge
35 lxml
36 pycryptodome
37 pyasn1
38 ];
39
40 optional-dependencies = {
41 kerberos = [ ldap3-bleeding-edge ] ++ ldap3-bleeding-edge.optional-dependencies.kerberos;
42 };
43
44 # Module has no tests
45 doCheck = false;
46
47 pythonImportsCheck = [ "pywerview" ];
48
49 meta = with lib; {
50 description = "Module for PowerSploit's PowerView support";
51 homepage = "https://github.com/the-useless-one/pywerview";
52 changelog = "https://github.com/the-useless-one/pywerview/releases/tag/v${version}";
53 license = licenses.gpl3Plus;
54 maintainers = with maintainers; [ fab ];
55 mainProgram = "pywerview";
56 };
57}