evcc: 0.131.4 -> 0.131.5
[NixPkgs.git] / pkgs / by-name / se / setools / package.nix
blob7442815f3a7da12db3d1dd65a83cd0c5480f7a85
1 { lib, fetchFromGitHub, python3
2 , libsepol, libselinux, checkpolicy
3 , withGraphics ? false
4 }:
6 python3.pkgs.buildPythonApplication rec {
7   pname = "setools";
8   version = "4.5.1";
10   src = fetchFromGitHub {
11     owner = "SELinuxProject";
12     repo = pname;
13     rev = "refs/tags/${version}";
14     hash = "sha256-/6dOzSz2Do4d6TSS50fuak0CysoQ532zJ0bJ532BUCE=";
15   };
17   nativeBuildInputs = [ python3.pkgs.cython ];
18   buildInputs = [ libsepol ];
19   propagatedBuildInputs = with python3.pkgs; [ enum34 libselinux networkx setuptools ]
20     ++ lib.optionals withGraphics [ pyqt5 ];
22   nativeCheckInputs = [ python3.pkgs.tox checkpolicy ];
23   preCheck = ''
24     export CHECKPOLICY=${checkpolicy}/bin/checkpolicy
25   '';
27   setupPyBuildFlags = [ "-i" ];
29   preBuild = ''
30     export SEPOL="${lib.getLib libsepol}/lib/libsepol.a"
31   '';
33   meta = with lib; {
34     description = "SELinux Policy Analysis Tools";
35     homepage = "https://github.com/SELinuxProject/setools";
36     license = licenses.gpl2Only;
37     platforms = platforms.linux;
38   };