1{
2 lib,
3 attrs,
4 azure-common,
5 azure-core,
6 azure-identity,
7 azure-keyvault-secrets,
8 azure-kusto-data,
9 azure-mgmt-keyvault,
10 azure-mgmt-subscription,
11 azure-monitor-query,
12 beautifulsoup4,
13 bokeh,
14 buildPythonPackage,
15 cache,
16 cryptography,
17 deprecated,
18 dnspython,
19 fetchFromGitHub,
20 folium,
21 geoip2,
22 html5lib,
23 httpx,
24 importlib-resources,
25 ipython,
26 ipywidgets,
27 keyring,
28 lxml,
29 markdown,
30 msal-extensions,
31 msal,
32 msrest,
33 msrestazure,
34 nest-asyncio,
35 networkx,
36 packaging,
37 pandas,
38 panel,
39 pydantic,
40 pygments,
41 pyjwt,
42 pythonOlder,
43 pyyaml,
44 setuptools,
45 tldextract,
46 tqdm,
47 typing-extensions,
48 urllib3,
49}:
50
51buildPythonPackage rec {
52 pname = "msticpy";
53 version = "2.17.0";
54 pyproject = true;
55
56 disabled = pythonOlder "3.8";
57
58 src = fetchFromGitHub {
59 owner = "microsoft";
60 repo = "msticpy";
61 tag = "v${version}";
62 hash = "sha256-f2aCVD3EPRFjbpN+HcM3be46fPbVXkIFUFw/xoRzGfg=";
63 };
64
65 pythonRelaxDeps = [
66 "azure-kusto-data"
67 "bokeh"
68 ];
69
70 build-system = [ setuptools ];
71
72 dependencies = [
73 attrs
74 azure-common
75 azure-core
76 azure-identity
77 azure-keyvault-secrets
78 azure-kusto-data
79 azure-mgmt-keyvault
80 azure-mgmt-subscription
81 azure-monitor-query
82 beautifulsoup4
83 bokeh
84 cryptography
85 deprecated
86 dnspython
87 folium
88 geoip2
89 html5lib
90 httpx
91 importlib-resources
92 ipython
93 ipywidgets
94 keyring
95 lxml
96 msal
97 msal-extensions
98 msrest
99 msrestazure
100 nest-asyncio
101 networkx
102 packaging
103 pandas
104 panel
105 pydantic
106 pygments
107 pyjwt
108 pyyaml
109 tldextract
110 tqdm
111 typing-extensions
112 urllib3
113 ];
114
115 # Test requires network access
116 doCheck = false;
117
118 pythonImportsCheck = [ "msticpy" ];
119
120 meta = {
121 description = "Microsoft Threat Intelligence Security Tools";
122 homepage = "https://github.com/microsoft/msticpy";
123 changelog = "https://github.com/microsoft/msticpy/releases/tag/${src.tag}";
124 license = lib.licenses.mit;
125 maintainers = with lib.maintainers; [ fab ];
126 };
127}