diff --git a/apparmor.d/groups/bus/ibus-dconf b/apparmor.d/groups/bus/ibus-dconf index f0186635..8daaaf97 100644 --- a/apparmor.d/groups/bus/ibus-dconf +++ b/apparmor.d/groups/bus/ibus-dconf @@ -40,6 +40,7 @@ profile ibus-dconf @{exec_path} flags=(attach_disconnected) { /var/lib/gdm{3,}/.config/ibus/bus/@{hex}-unix-[0-9]* r, /var/lib/gdm{3,}/.cache/dconf/ w, /var/lib/gdm{3,}/.cache/dconf/user rw, + /var/lib/gdm{3,}/.config/dconf/ w, /var/lib/gdm{3,}/.config/dconf/user rw, /var/lib/gdm{3,}/greeter-dconf-defaults r, diff --git a/apparmor.d/groups/freedesktop/pipewire-media-session b/apparmor.d/groups/freedesktop/pipewire-media-session index 8876c138..0fbe1607 100644 --- a/apparmor.d/groups/freedesktop/pipewire-media-session +++ b/apparmor.d/groups/freedesktop/pipewire-media-session @@ -51,6 +51,7 @@ profile pipewire-media-session @{exec_path} { owner @{HOME}/.local/state/ rw, owner @{HOME}/.local/state/pipewire/{,**} rw, + owner @{user_config_dirs}/pipewire-media-session/ w, owner @{user_config_dirs}/pipewire/ rw, owner @{user_config_dirs}/pipewire/** rw, owner @{user_config_dirs}/pulse/ rw, diff --git a/apparmor.d/groups/freedesktop/pulseaudio b/apparmor.d/groups/freedesktop/pulseaudio index bc10f4a1..afbbc2ef 100644 --- a/apparmor.d/groups/freedesktop/pulseaudio +++ b/apparmor.d/groups/freedesktop/pulseaudio @@ -133,9 +133,11 @@ profile pulseaudio @{exec_path} { owner /var/lib/sddm/.config/pulse/cookie rwk, # For lightdm + owner /var/lib/lightdm/.config/ w, owner /var/lib/lightdm/.config/pulse/{,**} rw, owner /var/lib/lightdm/.config/pulse/cookie k, + owner @{user_config_dirs}/ w, owner @{user_config_dirs}/pulse/{,**} rw, owner @{user_cache_dirs}/gstreamer-1.0/registry.*.bin r, diff --git a/apparmor.d/groups/freedesktop/xdg-permission-store b/apparmor.d/groups/freedesktop/xdg-permission-store index f43e7e01..0f698afc 100644 --- a/apparmor.d/groups/freedesktop/xdg-permission-store +++ b/apparmor.d/groups/freedesktop/xdg-permission-store @@ -48,6 +48,7 @@ profile xdg-permission-store @{exec_path} flags=(attach_disconnected) { @{HOME}/@{XDG_DATA_HOME}/flatpak/db/gnome rw, + owner @{user_share_dirs}/flatpak/ w, owner @{user_share_dirs}/flatpak/db/ rw, owner @{user_share_dirs}/flatpak/db/.goutputstream-* rw, owner @{user_share_dirs}/flatpak/db/background rw, diff --git a/apparmor.d/groups/freedesktop/xdg-user-dirs-update b/apparmor.d/groups/freedesktop/xdg-user-dirs-update index 21d5c2ae..baecbf22 100644 --- a/apparmor.d/groups/freedesktop/xdg-user-dirs-update +++ b/apparmor.d/groups/freedesktop/xdg-user-dirs-update @@ -26,6 +26,16 @@ profile xdg-user-dirs-update @{exec_path} { /var/lib/gdm{3,}/@{XDG_TEMPLATES_DIR}/ rw, /var/lib/gdm{3,}/@{XDG_VIDEOS_DIR}/ rw, + # new user; change to 'c' + owner @{HOME}/@{XDG_DESKTOP_DIR}/ w, + owner @{HOME}/@{XDG_DOCUMENTS_DIR}/ w, + owner @{HOME}/@{XDG_DOWNLOAD_DIR}/ w, + owner @{HOME}/@{XDG_MUSIC_DIR}/ w, + owner @{HOME}/@{XDG_PICTURES_DIR}/ w, + owner @{HOME}/@{XDG_PUBLICSHARE_DIR}/ w, + owner @{HOME}/@{XDG_TEMPLATES_DIR}/ w, + owner @{HOME}/@{XDG_VIDEOS_DIR}/ w, + owner @{user_config_dirs}/user-dirs.dirs r, include if exists diff --git a/apparmor.d/groups/gnome/evolution-calendar-factory b/apparmor.d/groups/gnome/evolution-calendar-factory index 2de9c037..69d2be5e 100644 --- a/apparmor.d/groups/gnome/evolution-calendar-factory +++ b/apparmor.d/groups/gnome/evolution-calendar-factory @@ -42,6 +42,7 @@ profile evolution-calendar-factory @{exec_path} { /usr/share/glib-2.0/schemas/gschemas.compiled r, owner @{user_share_dirs}/evolution/calendar/{,**} rwk, + owner @{user_share_dirs}/evolution/tasks/system/ w, owner @{user_share_dirs}/evolution/tasks/system/tasks.ics r, owner @{user_cache_dirs}/evolution/calendar/{,**} rwk, owner @{user_cache_dirs}/evolution/tasks/{,**} rwk, diff --git a/apparmor.d/groups/gnome/evolution-source-registry b/apparmor.d/groups/gnome/evolution-source-registry index 7375dbe3..536ee8a5 100644 --- a/apparmor.d/groups/gnome/evolution-source-registry +++ b/apparmor.d/groups/gnome/evolution-source-registry @@ -30,6 +30,20 @@ profile evolution-source-registry @{exec_path} { owner @{user_share_dirs}/evolution/{,**} r, owner @{user_share_dirs}/gvfs-metadata/{,*} r, + # new user; change to 'c' + owner @{user_config_dirs}/evolution/ w, + owner @{user_share_dirs}/evolution/ w, + owner @{user_share_dirs}/evolution/addressbook/ w, + owner @{user_share_dirs}/evolution/addressbook/trash/ w, + owner @{user_share_dirs}/evolution/calendar/ w, + owner @{user_share_dirs}/evolution/calendar/trash/ w, + owner @{user_share_dirs}/evolution/mail/ w, + owner @{user_share_dirs}/evolution/mail/trash/ w, + owner @{user_share_dirs}/evolution/memos/ w, + owner @{user_share_dirs}/evolution/memos/trash/ w, + owner @{user_share_dirs}/evolution/tasks/ w, + owner @{user_share_dirs}/evolution/tasks/trash/ w, + @{PROC}/sys/kernel/osrelease r, @{PROC}/cmdline r, diff --git a/apparmor.d/groups/gnome/gnome-keyring-daemon b/apparmor.d/groups/gnome/gnome-keyring-daemon index 1486f616..7534a6d6 100644 --- a/apparmor.d/groups/gnome/gnome-keyring-daemon +++ b/apparmor.d/groups/gnome/gnome-keyring-daemon @@ -75,7 +75,7 @@ profile gnome-keyring-daemon @{exec_path} flags=(attach_disconnected) { /{usr/,}bin/ssh-add rix, /{usr/,}bin/ssh-agent rPx, - /var/lib/gdm{3,}/.local/share/keyrings/ r, + /var/lib/gdm{3,}/.local/share/keyrings/ rw, # Keyrings location owner @{user_share_dirs}/keyrings/ rw, @@ -84,6 +84,9 @@ profile gnome-keyring-daemon @{exec_path} flags=(attach_disconnected) { # Seahorse and SSH keys owner @{HOME}/@{XDG_SSH_DIR}/{,**} r, + owner @{HOME}/.local/ w, + owner @{HOME}/.local/share/ w, + owner @{run}/user/@{uid}/keyring/ rw, owner @{run}/user/@{uid}/keyring/* rw, owner @{run}/user/@{uid}/ssh-askpass.[0-9A-Z]*/{,*} rw, diff --git a/apparmor.d/groups/gnome/gnome-shell b/apparmor.d/groups/gnome/gnome-shell index 84fa67f3..fbabab2b 100644 --- a/apparmor.d/groups/gnome/gnome-shell +++ b/apparmor.d/groups/gnome/gnome-shell @@ -544,6 +544,7 @@ profile gnome-shell @{exec_path} flags=(attach_disconnected) { owner @{user_music_dirs}/**/*.jpg r, + owner @{user_config_dirs}/ibus/ w, owner @{user_config_dirs}/.goutputstream{,*} rw, owner @{user_config_dirs}/monitors.xml{,~} rwl, diff --git a/apparmor.d/groups/gnome/gsd-color b/apparmor.d/groups/gnome/gsd-color index db2fbd33..e9f2f123 100644 --- a/apparmor.d/groups/gnome/gsd-color +++ b/apparmor.d/groups/gnome/gsd-color @@ -129,7 +129,7 @@ profile gsd-color @{exec_path} flags=(attach_disconnected) { /var/lib/gdm{3,}/.local/share/icc/edid-*.icc rw, /var/lib/gdm{3,}/greeter-dconf-defaults r, - owner @{user_share_dirs}/icc/ r, + owner @{user_share_dirs}/icc/ rw, owner @{user_share_dirs}/icc/edid-*.icc rw, owner @{run}/user/@{uid}/gdm/Xauthority r, diff --git a/apparmor.d/groups/gnome/tracker-extract b/apparmor.d/groups/gnome/tracker-extract index 8881030d..ddc650e2 100644 --- a/apparmor.d/groups/gnome/tracker-extract +++ b/apparmor.d/groups/gnome/tracker-extract @@ -93,6 +93,8 @@ profile tracker-extract @{exec_path} { owner @{MOUNTS}/{,**} r, owner /tmp/*/{,**} r, + owner @{user_cache_dirs}/ w, + owner @{user_cache_dirs}/tracker3/ w, owner @{user_cache_dirs}/tracker3/files/{,**} rwk, owner /tmp/tracker-extract-3-files.*/{,*} rw, diff --git a/apparmor.d/groups/gvfs/gvfsd-smb-browse b/apparmor.d/groups/gvfs/gvfsd-smb-browse index a3f58601..e03ce349 100644 --- a/apparmor.d/groups/gvfs/gvfsd-smb-browse +++ b/apparmor.d/groups/gvfs/gvfsd-smb-browse @@ -59,6 +59,7 @@ profile gvfsd-smb-browse @{exec_path} { owner @{run}/samba/gencache.tdb rwk, owner @{run}/user/@{uid}/gvfsd/socket-[a-zA-z0-9]* rw, + owner @{user_cache_dirs}/samba/ w, owner @{user_cache_dirs}/samba/gencache.tdb rwk, include if exists diff --git a/apparmor.d/groups/ubuntu/update-notifier b/apparmor.d/groups/ubuntu/update-notifier index 09f9f433..305c7e36 100644 --- a/apparmor.d/groups/ubuntu/update-notifier +++ b/apparmor.d/groups/ubuntu/update-notifier @@ -62,6 +62,7 @@ profile update-notifier @{exec_path} { /var/lib/snapd/desktop/icons/ r, /var/lib/update-notifier/user.d/ r, + owner @{user_config_dirs}update-notifier/ w, owner @{user_share_dirs}/applications/ r, owner @{run}/user/@{uid}/at-spi/bus rw, @@ -75,4 +76,4 @@ profile update-notifier @{exec_path} { @{PROC}/@{pids}/mountinfo r, include if exists -} \ No newline at end of file +} diff --git a/apparmor.d/profiles-g-l/htop b/apparmor.d/profiles-g-l/htop index 71be4528..12b660b6 100644 --- a/apparmor.d/profiles-g-l/htop +++ b/apparmor.d/profiles-g-l/htop @@ -30,7 +30,7 @@ profile htop @{exec_path} { /etc/sensors.d/ r, /etc/sensors3.conf r, - owner @{user_config_dirs}/ r, + owner @{user_config_dirs}/ rw, owner @{user_config_dirs}/htop/ rw, owner @{user_config_dirs}/htop/htoprc rw,