summary refs log tree commit diff
path: root/pkgs/os-specific/linux/apparmor
diff options
context:
space:
mode:
authorcorpix <corpix@users.noreply.github.com>2018-01-20 08:29:03 +0000
committerFrederik Rietdijk <freddyrietdijk@fridh.nl>2018-01-20 09:29:03 +0100
commit0db68e5d42c4426ccc2933e982836cba0bef0b48 (patch)
tree17791c3a57f53fb3029b2b4f3d8e3c2598db5d07 /pkgs/os-specific/linux/apparmor
parentb86412d04245e3fe295340e6fa3e47a512754e19 (diff)
downloadnixpkgs-0db68e5d42c4426ccc2933e982836cba0bef0b48.tar
nixpkgs-0db68e5d42c4426ccc2933e982836cba0bef0b48.tar.gz
nixpkgs-0db68e5d42c4426ccc2933e982836cba0bef0b48.tar.bz2
nixpkgs-0db68e5d42c4426ccc2933e982836cba0bef0b48.tar.lz
nixpkgs-0db68e5d42c4426ccc2933e982836cba0bef0b48.tar.xz
nixpkgs-0db68e5d42c4426ccc2933e982836cba0bef0b48.tar.zst
nixpkgs-0db68e5d42c4426ccc2933e982836cba0bef0b48.zip
apparmor: updating utilities to fresh python (#34049)
* apparmor: updating utilities to fresh python

* apparmor: better way to depend on python

* apparmor: override python derivation on the top-level
Diffstat (limited to 'pkgs/os-specific/linux/apparmor')
-rw-r--r--pkgs/os-specific/linux/apparmor/default.nix46
1 files changed, 38 insertions, 8 deletions
diff --git a/pkgs/os-specific/linux/apparmor/default.nix b/pkgs/os-specific/linux/apparmor/default.nix
index b026e91cc0b..29e1357d38a 100644
--- a/pkgs/os-specific/linux/apparmor/default.nix
+++ b/pkgs/os-specific/linux/apparmor/default.nix
@@ -2,14 +2,15 @@
 , pkgconfig, which
 , flex, bison
 , linuxHeaders ? stdenv.cc.libc.linuxHeaders
-, pythonPackages
+, python
+, gawk
 , perl
 , swig
+, ncurses
 , pam
 }:
 
 let
-
   apparmor-series = "2.12";
   apparmor-patchver = "0";
   apparmor-version = apparmor-series + "." + apparmor-patchver;
@@ -46,12 +47,13 @@ let
       flex
       pkgconfig
       swig
+      ncurses
       which
     ];
 
     buildInputs = [
       perl
-      pythonPackages.python
+      python
     ];
 
     # required to build apparmor-parser
@@ -61,7 +63,6 @@ let
       substituteInPlace ./libraries/libapparmor/src/Makefile.am --replace "/usr/include/netinet/in.h" "${stdenv.cc.libc.dev}/include/netinet/in.h"
       substituteInPlace ./libraries/libapparmor/src/Makefile.in --replace "/usr/include/netinet/in.h" "${stdenv.cc.libc.dev}/include/netinet/in.h"
     '';
-
     postPatch = "cd ./libraries/libapparmor";
     configureFlags = "--with-python --with-perl";
 
@@ -83,7 +84,7 @@ let
 
     buildInputs = [
       perl
-      pythonPackages.python
+      python
       libapparmor
       libapparmor.python
     ];
@@ -95,7 +96,7 @@ let
 
     postInstall = ''
       for prog in aa-audit aa-autodep aa-cleanprof aa-complain aa-disable aa-enforce aa-genprof aa-logprof aa-mergeprof aa-status aa-unconfined ; do
-        wrapProgram $out/bin/$prog --prefix PYTHONPATH : "$out/lib/${pythonPackages.python.libPrefix}/site-packages:$PYTHONPATH"
+        wrapProgram $out/bin/$prog --prefix PYTHONPATH : "$out/lib/${python.libPrefix}/site-packages:$PYTHONPATH"
       done
 
       for prog in aa-notify ; do
@@ -106,6 +107,29 @@ let
     meta = apparmor-meta "user-land utilities";
   };
 
+  apparmor-bin-utils = stdenv.mkDerivation {
+    name = "apparmor-bin-utils-${apparmor-version}";
+    src = apparmor-sources;
+
+    nativeBuildInputs = [
+      pkgconfig
+      libapparmor
+      gawk
+      which
+    ];
+
+    buildInputs = [
+      libapparmor
+    ];
+
+    prePatch = prePatchCommon;
+    postPatch = "cd ./binutils";
+    makeFlags = ''LANGS= USE_SYSTEM=1'';
+    installFlags = ''DESTDIR=$(out) BINDIR=$(out)/bin'';
+
+    meta = apparmor-meta "binary user-land utilities";
+  };
+
   apparmor-parser = stdenv.mkDerivation {
     name = "apparmor-parser-${apparmor-version}";
     src = apparmor-sources;
@@ -172,6 +196,12 @@ let
 in
 
 {
-  inherit libapparmor apparmor-utils apparmor-parser apparmor-pam
-  apparmor-profiles apparmor-kernel-patches;
+  inherit
+    libapparmor
+    apparmor-utils
+    apparmor-bin-utils
+    apparmor-parser
+    apparmor-pam
+    apparmor-profiles
+    apparmor-kernel-patches;
 }