1{
2 lib,
3 buildPythonPackage,
4 fetchFromGitHub,
5 setuptools,
6 netbox,
7 pythonAtLeast,
8}:
9buildPythonPackage rec {
10 pname = "netbox-topology-views";
11 version = "4.2.1";
12 pyproject = true;
13
14 disabled = pythonAtLeast "3.13";
15
16 src = fetchFromGitHub {
17 owner = "netbox-community";
18 repo = "netbox-topology-views";
19 tag = "v${version}";
20 hash = "sha256-ysupqyRFOKVa+evNbfSdW2W57apI0jVEU92afz6+AaE=";
21 };
22
23 build-system = [ setuptools ];
24
25 nativeCheckInputs = [ netbox ];
26
27 preFixup = ''
28 export PYTHONPATH=${netbox}/opt/netbox/netbox:$PYTHONPATH
29 '';
30
31 pythonImportsCheck = [ "netbox_topology_views" ];
32
33 meta = {
34 description = "Netbox plugin for generate topology views/maps from your devices";
35 homepage = "https://github.com/netbox-community/netbox-topology-views";
36 changelog = "https://github.com/netbox-community/netbox-topology-views/releases/tag/${src.tag}";
37 license = lib.licenses.asl20;
38 platforms = lib.platforms.linux;
39 maintainers = with lib.maintainers; [ felbinger ];
40 };
41}