base16-schemes: unstable-2024-06-21 -> unstable-2024-11-12 (#356361)
[NixPkgs.git] / pkgs / tools / networking / dnsviz / default.nix
blobb275734f8889a3b5db5ebcd3baf12f62ef5ef6b1
1 { lib
2 , buildPythonApplication
3 , fetchFromGitHub
4 , dnspython
5 , m2crypto
6 , pygraphviz
7 }:
9 buildPythonApplication rec {
10   pname = "dnsviz";
11   version = "0.9.4";
13   src = fetchFromGitHub {
14     owner = "dnsviz";
15     repo = "dnsviz";
16     rev = "v${version}";
17     sha256 = "sha256-x6LdPVQFfsJIuKde1+LbFKz5bBEi+Mri9sVH0nGsbCU=";
18   };
20   patches = [
21     # override DNSVIZ_INSTALL_PREFIX with $out
22     ./fix-path.patch
23   ];
25   propagatedBuildInputs = [
26     dnspython
27     m2crypto
28     pygraphviz
29   ];
31   postPatch = ''
32     substituteInPlace dnsviz/config.py.in --replace '@out@' $out
33   '';
35   # Tests require network connection and /etc/resolv.conf
36   doCheck = false;
38   pythonImportsCheck = [ "dnsviz" ];
40   meta = with lib; {
41     description = "Tool suite for analyzing and visualizing DNS and DNSSEC behavior";
42     mainProgram = "dnsviz";
43     longDescription = ''
44       DNSViz is a tool suite for analysis and visualization of Domain Name System (DNS) behavior,
45       including its security extensions (DNSSEC).
47       This tool suite powers the Web-based analysis available at https://dnsviz.net/
48     '';
49     license = licenses.gpl2Plus;
50     maintainers = with maintainers; [ jojosch ];
51   };