nixpkgs mirror (for testing) github.com/NixOS/nixpkgs
nix
at python-updates 85 lines 1.8 kB view raw
1{ 2 lib, 3 makeWrapper, 4 gawk, 5 perl, 6 runtimeShellPackage, 7 stdenv, 8 which, 9 linuxHeaders ? stdenv.cc.libc.linuxHeaders, 10 python3Packages, 11 buildPackages, 12 13 # apparmor deps 14 apparmor-parser, 15 apparmor-teardown, 16}: 17let 18 inherit (python3Packages) libapparmor; 19in 20python3Packages.buildPythonApplication { 21 pname = "apparmor-utils"; 22 inherit (libapparmor) version src; 23 24 postPatch = '' 25 patchShebangs common 26 cd utils 27 28 substituteInPlace aa-remove-unknown \ 29 --replace-fail "/lib/apparmor/rc.apparmor.functions" "${apparmor-parser}/lib/apparmor/rc.apparmor.functions" 30 substituteInPlace Makefile \ 31 --replace-fail "/usr/include/linux/capability.h" "${linuxHeaders}/include/linux/capability.h" 32 sed -i -E 's/^(DESTDIR|BINDIR|PYPREFIX)=.*//g' Makefile 33 sed -i aa-unconfined -e "/my_env\['PATH'\]/d" 34 '' 35 + (lib.optionalString stdenv.hostPlatform.isMusl '' 36 sed -i Makefile -e "/\<vim\>/d" 37 ''); 38 39 pyproject = false; 40 strictDeps = true; 41 42 doCheck = true; 43 44 nativeBuildInputs = [ 45 makeWrapper 46 which 47 python3Packages.setuptools 48 ]; 49 50 buildInputs = [ 51 perl 52 runtimeShellPackage 53 ]; 54 55 pythonPath = [ 56 python3Packages.notify2 57 python3Packages.psutil 58 libapparmor 59 ]; 60 61 makeFlags = [ 62 "LANGS=" 63 "POD2MAN=${lib.getExe' buildPackages.perl "pod2man"}" 64 "POD2HTML=${lib.getExe' buildPackages.perl "pod2html"}" 65 "MANDIR=share/man" 66 ]; 67 68 installFlags = [ 69 "DESTDIR=$(out)" 70 "BINDIR=$(out)/bin" 71 "VIM_INSTALL_PATH=$(out)/share" 72 "PYPREFIX=" 73 ]; 74 75 postInstall = '' 76 wrapProgram $out/bin/aa-remove-unknown \ 77 --prefix PATH : ${lib.makeBinPath [ gawk ]} 78 79 ln -s ${lib.getExe apparmor-teardown} $out/bin/aa-teardown 80 ''; 81 82 meta = libapparmor.meta // { 83 description = "Mandatory access control system - script user-land utilities"; 84 }; 85}