nixos/incus: fix AppArmor issue (#415057)

Changed files
+12 -2
nixos
modules
virtualisation
tests
+4 -2
nixos/modules/virtualisation/incus.nix
···
profile incusd ${lib.getExe' config.virtualisation.incus.package "incusd"} flags=(unconfined) {
userns,
-
</var/lib/incus/security/apparmor/cache>
-
</var/lib/incus/security/apparmor/profiles>
+
+
include "/var/lib/incus/security/apparmor/cache"
# Site-specific additions and overrides. See local/README for details.
include if exists <local/incusd>
}
+
+
include "/var/lib/incus/security/apparmor/profiles"
'';
};
includes."abstractions/base" =
+8
nixos/tests/incus/incus-tests.nix
···
machine.succeed("incus storage show default")
''
+
+ lib.optionalString appArmor ''
+
with subtest("Verify AppArmor service is started without issue"):
+
# restart AppArmor service since the Incus AppArmor folders are
+
# created after AA service is started
+
machine.systemctl("restart apparmor.service")
+
machine.succeed("systemctl --no-pager -l status apparmor.service")
+
machine.wait_for_unit("apparmor.service")
+
''
+ lib.optionalString instanceContainer (
lib.foldl (
acc: variant: