diff --git a/apparmor.d/groups/gnome/gjs-console b/apparmor.d/groups/gnome/gjs-console new file mode 100644 index 000000000..2a90474c5 --- /dev/null +++ b/apparmor.d/groups/gnome/gjs-console @@ -0,0 +1,55 @@ +# apparmor.d - Full set of apparmor profiles +# Copyright (C) 2021 Alexandre Pujol +# SPDX-License-Identifier: GPL-3.0-or-later + +abi , + +include + +@{exec_path} = /{usr/,}bin/gjs-console +profile gjs-console @{exec_path} flags=(attach_disconnected) { + include + include + include + include + include + + @{exec_path} mr, + /{usr/,}bin/ r, + /{usr/,}bin/[a-z0-9]* rPix, + /usr/{lib,libexec}/** rPix, + + /usr/share/gnome-shell/{,**} r, + /usr/share/themes/*/gtk-3.0/{,**} r, + /usr/share/gdm/greeter-dconf-defaults r, + /usr/share/glib-2.0/schemas/gschemas.compiled r, + /usr/share/X11/xkb/** r, + /usr/share/dconf/profile/gdm r, + + /var/lib/gdm/.config/dconf/user r, + /var/lib/gdm/.cache/gstreamer-1.0/ rw, + /var/lib/gdm/.cache/gstreamer-1.0/registry.*.bin{,.tmp*} rw, + + owner @{user_share_dirs}/gnome-shell/extensions/{,**} r, + owner @{user_cache_dirs}/gstreamer-1.0/ rw, + owner @{user_cache_dirs}/gstreamer-1.0/registry.*.bin{,.tmp*} rw, + + owner @{PROC}/@{pid}/fd/ r, + owner @{PROC}/@{pid}/task/ r, + owner @{PROC}/@{pid}/task/@{tid}/stat r, + owner @{PROC}/@{pid}/mounts r, + owner @{PROC}/@{pid}/stat r, + + include + owner @{run}/user/[0-9]*/dconf/ rw, + owner @{run}/user/[0-9]*/dconf/user rw, + + @{run}/user/[0-9]*/gdm/Xauthority r, + + /dev/ r, + /dev/dri/ r, + /dev/tty rw, + /dev/tty[0-9]* rw, + + include if exists +}