apparmor-profile-everything is an AppArmor policy to confine all user space processes on the system. This allows users to enforce a strong security model and follow the principle of least privilege. An AppArmor policy for the init and systemd is loaded in the initramfs, which then applies to all other processes. Specific policies for many system services/applications are also enforced.
This full system AppArmor policy imitates design ideas that are already present in other operating systems such as Android and attempts to make something similar available on desktop Linux.
In addition to locking down user space, this also protects the kernel as it restricts access to kernel interfaces like
/sys, thereby making kernel pointer and other leaks much less likely. However, this does not and cannot confine the kernel or initramfs.
This AppArmor policy is expected to be used in combination with other security technologies such as a hardened kernel, strong sandboxing architecture, verified boot and so on.
apparmor-profile-everything supports different boot modes: aadebug and superroot. aadebug allows certain permissions necessary for advanced debugging and superroot relaxes the policy substantially, even making bypasses possible. It is highly recommended to stick to the default boot mode.
It also contains a wrapper to restrict apt, as apt requires permissions that may be abused to circumvent the policy. When updating or installing applications, the rapt command must be used.
apparmor-profile-everything is currently broken in Qubes-Whonix ™. Whonix ™ developer madaidan has only developed it for Non-Qubes-Whonix ™.
Nobody is working on Qubes-Whonix ™ support at present, see: Qubes-Whonix Security Disadvantages - Help Wanted!