diff options
author | Jörg Thalheim <joerg@higgsboson.tk> | 2017-01-10 22:47:23 +0100 |
---|---|---|
committer | Jörg Thalheim <joerg@higgsboson.tk> | 2017-01-10 23:01:03 +0100 |
commit | 30a554acfbb8421300dc835761e0e3a51bd7d718 (patch) | |
tree | 4fa32dbff5dda1b53bd04992b15f1410ecc7cf3b /nixos/modules/security/apparmor.nix | |
parent | 3aca77a7f24f8c4e11dc4ef2a9a596e4d84b774d (diff) | |
download | nixlib-30a554acfbb8421300dc835761e0e3a51bd7d718.tar nixlib-30a554acfbb8421300dc835761e0e3a51bd7d718.tar.gz nixlib-30a554acfbb8421300dc835761e0e3a51bd7d718.tar.bz2 nixlib-30a554acfbb8421300dc835761e0e3a51bd7d718.tar.lz nixlib-30a554acfbb8421300dc835761e0e3a51bd7d718.tar.xz nixlib-30a554acfbb8421300dc835761e0e3a51bd7d718.tar.zst nixlib-30a554acfbb8421300dc835761e0e3a51bd7d718.zip |
apparmor: support for lxc profiles
Diffstat (limited to 'nixos/modules/security/apparmor.nix')
-rw-r--r-- | nixos/modules/security/apparmor.nix | 18 |
1 files changed, 13 insertions, 5 deletions
diff --git a/nixos/modules/security/apparmor.nix b/nixos/modules/security/apparmor.nix index 202639f98701..d323a158a4df 100644 --- a/nixos/modules/security/apparmor.nix +++ b/nixos/modules/security/apparmor.nix @@ -18,22 +18,30 @@ in default = []; description = "List of files containing AppArmor profiles."; }; + packages = mkOption { + type = types.listOf types.package; + default = []; + description = "List of packages to be added to apparmor's include path"; + }; }; }; config = mkIf cfg.enable { environment.systemPackages = [ pkgs.apparmor-utils ]; - systemd.services.apparmor = { + systemd.services.apparmor = let + paths = concatMapStrings (s: " -I ${s}/etc/apparmor.d") + ([ pkgs.apparmor-profiles ] ++ cfg.packages); + in { wantedBy = [ "local-fs.target" ]; serviceConfig = { Type = "oneshot"; RemainAfterExit = "yes"; - ExecStart = concatMapStrings (p: - ''${pkgs.apparmor-parser}/bin/apparmor_parser -rKv -I ${pkgs.apparmor-profiles}/etc/apparmor.d "${p}" ; '' + ExecStart = map (p: + ''${pkgs.apparmor-parser}/bin/apparmor_parser -rKv ${paths} "${p}"'' ) cfg.profiles; - ExecStop = concatMapStrings (p: - ''${pkgs.apparmor-parser}/bin/apparmor_parser -Rv "${p}" ; '' + ExecStop = map (p: + ''${pkgs.apparmor-parser}/bin/apparmor_parser -Rv "${p}"'' ) cfg.profiles; }; }; |