aboutsummaryrefslogtreecommitdiff
path: root/straper/db/public/apparmor/apparmor.d/plasmashell
diff options
context:
space:
mode:
Diffstat (limited to 'straper/db/public/apparmor/apparmor.d/plasmashell')
-rw-r--r--straper/db/public/apparmor/apparmor.d/plasmashell47
1 files changed, 47 insertions, 0 deletions
diff --git a/straper/db/public/apparmor/apparmor.d/plasmashell b/straper/db/public/apparmor/apparmor.d/plasmashell
new file mode 100644
index 0000000..43b47e8
--- /dev/null
+++ b/straper/db/public/apparmor/apparmor.d/plasmashell
@@ -0,0 +1,47 @@
+abi <abi/4.0>,
+
+include <tunables/global>
+
+profile plasmashell /usr/bin/plasmashell flags=(complain) {
+ include <abstractions/dbus-session>
+
+ capability,
+ userns,
+ network,
+ dbus,
+ mount,
+ umount,
+ remount,
+ signal,
+ mqueue,
+ unix,
+ ptrace,
+
+ # allow executing QtWebEngineProcess with full permissions including userns (using profile stacking to avoid no_new_privs issues)
+ /usr/lib/x86_64-linux-gnu/qt[56]/libexec/QtWebEngineProcess cx -> &plasmashell//QtWebEngineProcess,
+ /usr/libexec/qt[56]/QtWebEngineProcess cx -> &plasmashell//QtWebEngineProcess,
+
+ # allow to execute all other programs under their own profile, or to run unconfined
+ /** pux,
+
+ /{,**} mrwlk,
+
+ profile QtWebEngineProcess flags=(complain) {
+ capability,
+ userns,
+ network,
+ dbus,
+ mount,
+ umount,
+ remount,
+ signal,
+ mqueue,
+ unix,
+ ptrace,
+ /** pux,
+ /{,**} mrwlk,
+ }
+
+ # Site-specific additions and overrides. See local/README for details.
+ include if exists <local/plasmashell>
+}