1{
2 lib,
3 fetchFromGitHub,
4 python3,
5}:
6
7python3.pkgs.buildPythonApplication {
8 pname = "graphpython";
9 version = "1.0-unstable-2024-07-28";
10 pyproject = true;
11
12 src = fetchFromGitHub {
13 owner = "mlcsec";
14 repo = "Graphpython";
15 # https://github.com/mlcsec/Graphpython/issues/1
16 rev = "ee7dbda7fe881a9a207ca8661d42c505b8491ea3";
17 hash = "sha256-64M/Cc49mlceY5roBVuSsDIcbDx+lrX6oSjPAu9YDwA=";
18 };
19
20 build-system = with python3.pkgs; [ setuptools ];
21
22 dependencies = with python3.pkgs; [
23 beautifulsoup4
24 cryptography
25 dnspython
26 pyjwt
27 requests
28 tabulate
29 termcolor
30 tqdm
31 ];
32
33 pythonImportsCheck = [ "Graphpython" ];
34
35 # Project has no tests
36 doCheck = false;
37
38 meta = {
39 description = "Microsoft Graph API (Entra, o365, and Intune) enumeration and exploitation toolkit";
40 homepage = "https://github.com/mlcsec/Graphpython";
41 license = lib.licenses.mit;
42 maintainers = with lib.maintainers; [ fab ];
43 mainProgram = "graphpython";
44 };
45}