aws-lc: 1.39.0 -> 1.42.0 (#369942)
[NixPkgs.git] / pkgs / by-name / op / opensnitch-ui / package.nix
blob74440f506d7b348976f06d7483a72abf7472478f
2   python311Packages,
3   fetchFromGitHub,
4   nix-update-script,
5   qt5,
6   lib,
7 }:
9 python311Packages.buildPythonApplication rec {
10   pname = "opensnitch-ui";
11   version = "1.6.7";
13   src = fetchFromGitHub {
14     owner = "evilsocket";
15     repo = "opensnitch";
16     rev = "refs/tags/v${version}";
17     hash = "sha256-2BwFCRbVvs7pAM5SnhynWws2+QthB/F9V6DYPViDICU=";
18   };
20   postPatch = ''
21     substituteInPlace ui/opensnitch/utils/__init__.py \
22       --replace /usr/lib/python3/dist-packages/data ${python311Packages.pyasn}/${python311Packages.python.sitePackages}/pyasn/data
23   '';
25   nativeBuildInputs = [
26     python311Packages.pyqt5
27     qt5.wrapQtAppsHook
28   ];
30   buildInputs = [
31     qt5.qtwayland
32   ];
34   propagatedBuildInputs = with python311Packages; [
35     grpcio-tools
36     notify2
37     pyasn
38     pyinotify
39     pyqt5
40     qt-material
41     unicode-slugify
42     unidecode
43   ];
45   preBuild = ''
46     make -C ../proto ../ui/opensnitch/ui_pb2.py
47     # sourced from ui/Makefile
48     pyrcc5 -o opensnitch/resources_rc.py opensnitch/res/resources.qrc
49     sed -i 's/^import ui_pb2/from . import ui_pb2/' opensnitch/ui_pb2*
50   '';
52   preConfigure = ''
53     cd ui
54   '';
56   preCheck = ''
57     export PYTHONPATH=opensnitch:$PYTHONPATH
58   '';
60   postInstall = ''
61     mv $out/${python311Packages.python.sitePackages}/usr/* $out/
62   '';
64   dontWrapQtApps = true;
65   makeWrapperArgs = [ "\${qtWrapperArgs[@]}" ];
67   # All tests are sandbox-incompatible and disabled for now
68   doCheck = false;
70   passthru.updateScript = nix-update-script { };
72   meta = with lib; {
73     description = "Application firewall";
74     mainProgram = "opensnitch-ui";
75     homepage = "https://github.com/evilsocket/opensnitch/wiki";
76     license = licenses.gpl3Only;
77     maintainers = with maintainers; [ onny ];
78     platforms = platforms.linux;
79   };