feat(profile): improve dbus rule in the gnome profiles.

This commit is contained in:
Alexandre Pujol 2025-05-01 20:39:10 +02:00
parent df6378cec0
commit a98b8bbc0d
No known key found for this signature in database
GPG key ID: C5469996F0DF68EC
20 changed files with 71 additions and 30 deletions

View file

@ -23,6 +23,11 @@ profile deja-dup-monitor @{exec_path} {
#aa:dbus own bus=session name=org.gnome.DejaDup.Monitor #aa:dbus own bus=session name=org.gnome.DejaDup.Monitor
#aa:dbus talk bus=session name=org.gnome.DejaDup interface+=org.gtk.Actions label=deja-dup #aa:dbus talk bus=session name=org.gnome.DejaDup interface+=org.gtk.Actions label=deja-dup
dbus send bus=session path=/org/gnome/DejaDup
interface=org.gtk.Actions
member=Activate
peer=(name=org.gnome.DejaDup),
dbus send bus=system path=/org/freedesktop/NetworkManager dbus send bus=system path=/org/freedesktop/NetworkManager
interface=org.freedesktop.DBus.Properties interface=org.freedesktop.DBus.Properties
member=GetAll member=GetAll
@ -30,6 +35,9 @@ profile deja-dup-monitor @{exec_path} {
@{exec_path} mr, @{exec_path} mr,
@{bin}/chrt rix,
@{bin}/ionice rix,
/usr/share/glib-2.0/schemas/gschemas.compiled r, /usr/share/glib-2.0/schemas/gschemas.compiled r,
/var/tmp/ r, /var/tmp/ r,

View file

@ -57,11 +57,6 @@ profile evolution-calendar-factory @{exec_path} {
member=Complete member=Complete
peer=(name=org.freedesktop.DBus, label=gnome-calendar), peer=(name=org.freedesktop.DBus, label=gnome-calendar),
dbus send bus=session path=/org/gtk/vfs/metadata
interface=org.gtk.vfs.Metadata
member=Move
peer=(name=:*, label=gvfsd-metadata),
dbus receive bus=session dbus receive bus=session
interface=org.freedesktop.DBus.Introspectable interface=org.freedesktop.DBus.Introspectable
member=Introspect member=Introspect

View file

@ -50,7 +50,7 @@ profile gdm-session-worker @{exec_path} flags=(attach_disconnected) {
unix bind type=stream addr=@@{udbus}/bus/gdm-session-wor/system, unix bind type=stream addr=@@{udbus}/bus/gdm-session-wor/system,
#aa:dbus talk bus=system name=org.freedesktop.Accounts label=accounts-daemon #aa:dbus talk bus=system name=org.freedesktop.Accounts label=accounts-daemon
#aa:dbus talk bus=system name=org.freedesktop.home1.Manager label=systemd-homed #aa:dbus talk bus=system name=org.freedesktop.home1 interface=org.freedesktop.home1.Manager label=systemd-homed
dbus send bus=system path=/org/freedesktop/login1 dbus send bus=system path=/org/freedesktop/login1
interface=org.freedesktop.login1.Manager interface=org.freedesktop.login1.Manager

View file

@ -14,6 +14,7 @@ profile gnome-calendar @{exec_path} {
include <abstractions/bus/org.freedesktop.NetworkManager> include <abstractions/bus/org.freedesktop.NetworkManager>
include <abstractions/bus/org.freedesktop.portal.Desktop> include <abstractions/bus/org.freedesktop.portal.Desktop>
include <abstractions/bus/org.freedesktop.timedate1> include <abstractions/bus/org.freedesktop.timedate1>
include <abstractions/bus/org.gtk.vfs.MountTracker>
include <abstractions/common/gnome> include <abstractions/common/gnome>
include <abstractions/nameservice-strict> include <abstractions/nameservice-strict>
include <abstractions/p11-kit> include <abstractions/p11-kit>
@ -22,6 +23,7 @@ profile gnome-calendar @{exec_path} {
network netlink raw, network netlink raw,
#aa:dbus own bus=session name=org.gnome.Calendar #aa:dbus own bus=session name=org.gnome.Calendar
#aa-dbus own bus=session name=org.gnome.Calendar.SearchProvider interface+=org.gnome.Shell.SearchProvider2
#aa:dbus talk bus=session name=org.gnome.evolution.dataserver.AddressBook@{int} label=evolution-addressbook-factory #aa:dbus talk bus=session name=org.gnome.evolution.dataserver.AddressBook@{int} label=evolution-addressbook-factory
#aa:dbus talk bus=session name=org.gnome.evolution.dataserver.Calendar@{int} label=evolution-calendar-factory #aa:dbus talk bus=session name=org.gnome.evolution.dataserver.Calendar@{int} label=evolution-calendar-factory

View file

@ -11,11 +11,13 @@ profile gnome-characters @{exec_path} {
include <abstractions/base> include <abstractions/base>
include <abstractions/bus-system> include <abstractions/bus-system>
include <abstractions/bus/org.freedesktop.portal.Desktop> include <abstractions/bus/org.freedesktop.portal.Desktop>
include <abstractions/bus/org.gtk.vfs.MountTracker>
include <abstractions/common/gnome> include <abstractions/common/gnome>
include <abstractions/fontconfig-cache-read> include <abstractions/fontconfig-cache-read>
include <abstractions/nameservice-strict> include <abstractions/nameservice-strict>
#aa:dbus own bus=session name=org.gnome.Characters interface+=org.gnome.Shell.SearchProvider2 #aa:dbus own bus=session name=org.gnome.Characters
#aa-dbus own bus=session name=org.gnome.Characters.SearchProvider interface+=org.gnome.Shell.SearchProvider2
@{exec_path} mr, @{exec_path} mr,

View file

@ -20,6 +20,7 @@ profile gnome-clocks @{exec_path} {
network netlink raw, network netlink raw,
#aa:dbus own bus=session name=org.gnome.clocks interface+=org.gtk.Actions #aa:dbus own bus=session name=org.gnome.clocks interface+=org.gtk.Actions
#aa:dbus own bus=session name=org.gnome.clocks.SearchProvider interface+=org.gnome.Shell.SearchProvider2
@{exec_path} mr, @{exec_path} mr,
@{open_path} rPx -> child-open-help, @{open_path} rPx -> child-open-help,

View file

@ -10,11 +10,12 @@ include <tunables/global>
profile gnome-control-center-search-provider @{exec_path} { profile gnome-control-center-search-provider @{exec_path} {
include <abstractions/base> include <abstractions/base>
include <abstractions/bus-session> include <abstractions/bus-session>
include <abstractions/bus/org.gtk.vfs.MountTracker>
include <abstractions/dconf-write> include <abstractions/dconf-write>
include <abstractions/gnome-strict> include <abstractions/gnome-strict>
include <abstractions/graphics> include <abstractions/graphics>
#aa:dbus own bus=session name=org.gnome.Settings.SearchProvider #aa:dbus own bus=session name=org.gnome.Settings.SearchProvider interface+=org.gnome.Shell.SearchProvider2
@{exec_path} mr, @{exec_path} mr,

View file

@ -31,6 +31,11 @@ profile gnome-initial-setup @{exec_path} {
#aa:dbus own bus=session name=org.gnome.InitialSetup interface+=org.gtk.Actions #aa:dbus own bus=session name=org.gnome.InitialSetup interface+=org.gtk.Actions
dbus send bus=system path=/com/canonical/UbuntuAdvantage/Manager
interface=org.freedesktop.DBus.Properties
member=Get
peer=(name=com.canonical.UbuntuAdvantage),
@{exec_path} mr, @{exec_path} mr,
@{bin}/df rPx, @{bin}/df rPx,

View file

@ -28,6 +28,7 @@ profile gnome-session @{exec_path} {
@{bin}/manpath rix, @{bin}/manpath rix,
@{bin}/readlink rix, @{bin}/readlink rix,
@{bin}/realpath rix, @{bin}/realpath rix,
@{bin}/run-parts rix,
@{bin}/sed rix, @{bin}/sed rix,
@{bin}/tput rix, @{bin}/tput rix,
@{bin}/tr rix, @{bin}/tr rix,

View file

@ -75,6 +75,7 @@ profile gnome-shell @{exec_path} flags=(attach_disconnected,mediate_deleted) {
#aa:dbus own bus=session name=com.canonical.{U,u}nity #aa:dbus own bus=session name=com.canonical.{U,u}nity
#aa:dbus own bus=session name=com.rastersoft.dingextension #aa:dbus own bus=session name=com.rastersoft.dingextension
#aa:dbus own bus=session name=org.ayatana.NotificationItem #aa:dbus own bus=session name=org.ayatana.NotificationItem
#aa:dbus own bus=session name=org.freedesktop.a11y.Manager
#aa:dbus own bus=session name=org.gtk.Actions path=/** #aa:dbus own bus=session name=org.gtk.Actions path=/**
#aa:dbus own bus=session name=org.gtk.MountOperationHandler #aa:dbus own bus=session name=org.gtk.MountOperationHandler
#aa:dbus own bus=session name=org.gtk.Notifications #aa:dbus own bus=session name=org.gtk.Notifications
@ -90,10 +91,11 @@ profile gnome-shell @{exec_path} flags=(attach_disconnected,mediate_deleted) {
#aa:dbus talk bus=session name=com.rastersoft.ding label=gnome-extension-ding #aa:dbus talk bus=session name=com.rastersoft.ding label=gnome-extension-ding
#aa:dbus talk bus=session name=org.gnome.* label=gnome-* #aa:dbus talk bus=session name=org.gnome.* label=gnome-*
#aa:dbus talk bus=session name=org.gnome.*.SearchProvider interface+=org.gnome.Shell.SearchProvider2 label="*"
#aa:dbus talk bus=session name=org.gnome.Nautilus label=nautilus
#aa:dbus talk bus=session name=org.gnome.ScreenSaver label=gjs-console #aa:dbus talk bus=session name=org.gnome.ScreenSaver label=gjs-console
#aa:dbus talk bus=session name=org.gnome.SettingsDaemon.* label=gsd-* #aa:dbus talk bus=session name=org.gnome.SettingsDaemon.* label=gsd-*
#aa:dbus talk bus=session name=org.gtk.vfs label="gvfsd{,-*}" #aa:dbus talk bus=session name=org.gtk.vfs label="gvfsd{,-*}"
#aa:dbus talk bus=session name=org.gnome.Nautilus label=nautilus
# System bus # System bus
@ -113,6 +115,9 @@ profile gnome-shell @{exec_path} flags=(attach_disconnected,mediate_deleted) {
# Session bus # Session bus
dbus send bus=session path=/org/gnome/**
peer=(name=org.gnome.*),
dbus send bus=session path=/org/freedesktop/DBus dbus send bus=session path=/org/freedesktop/DBus
interface=org.freedesktop.DBus.Properties interface=org.freedesktop.DBus.Properties
member=GetAll member=GetAll
@ -373,7 +378,7 @@ profile gnome-shell @{exec_path} flags=(attach_disconnected,mediate_deleted) {
capability sys_ptrace, capability sys_ptrace,
ptrace (read), ptrace read,
@{sh_path} mr, @{sh_path} mr,

View file

@ -10,10 +10,11 @@ include <tunables/global>
profile gsd-housekeeping @{exec_path} flags=(attach_disconnected) { profile gsd-housekeeping @{exec_path} flags=(attach_disconnected) {
include <abstractions/base> include <abstractions/base>
include <abstractions/app-launcher-user> include <abstractions/app-launcher-user>
include <abstractions/consoles>
include <abstractions/bus-session> include <abstractions/bus-session>
include <abstractions/bus/org.freedesktop.systemd1-session>
include <abstractions/bus/org.gnome.SessionManager> include <abstractions/bus/org.gnome.SessionManager>
include <abstractions/bus/org.gtk.vfs.MountTracker> include <abstractions/bus/org.gtk.vfs.MountTracker>
include <abstractions/consoles>
include <abstractions/dconf-write> include <abstractions/dconf-write>
include <abstractions/gnome-strict> include <abstractions/gnome-strict>
include <abstractions/thumbnails-cache-write> include <abstractions/thumbnails-cache-write>

View file

@ -9,7 +9,6 @@ include <tunables/global>
@{exec_path} = @{lib}/gsd-power @{exec_path} = @{lib}/gsd-power
profile gsd-power @{exec_path} flags=(attach_disconnected) { profile gsd-power @{exec_path} flags=(attach_disconnected) {
include <abstractions/base> include <abstractions/base>
include <abstractions/consoles>
include <abstractions/audio-client> include <abstractions/audio-client>
include <abstractions/bus-accessibility> include <abstractions/bus-accessibility>
include <abstractions/bus-session> include <abstractions/bus-session>
@ -20,11 +19,13 @@ profile gsd-power @{exec_path} flags=(attach_disconnected) {
include <abstractions/bus/org.freedesktop.login1.Session> include <abstractions/bus/org.freedesktop.login1.Session>
include <abstractions/bus/org.freedesktop.login1> include <abstractions/bus/org.freedesktop.login1>
include <abstractions/bus/org.freedesktop.systemd1> include <abstractions/bus/org.freedesktop.systemd1>
include <abstractions/bus/org.freedesktop.UPower.PowerProfiles>
include <abstractions/bus/org.freedesktop.UPower> include <abstractions/bus/org.freedesktop.UPower>
include <abstractions/bus/org.gnome.Mutter.IdleMonitor> include <abstractions/bus/org.gnome.Mutter.IdleMonitor>
include <abstractions/bus/org.gnome.ScreenSaver> include <abstractions/bus/org.gnome.ScreenSaver>
include <abstractions/bus/org.gnome.SessionManager> include <abstractions/bus/org.gnome.SessionManager>
include <abstractions/bus/org.gtk.vfs.MountTracker> include <abstractions/bus/org.gtk.vfs.MountTracker>
include <abstractions/consoles>
include <abstractions/dconf-write> include <abstractions/dconf-write>
include <abstractions/fontconfig-cache-write> include <abstractions/fontconfig-cache-write>
include <abstractions/gnome-strict> include <abstractions/gnome-strict>

View file

@ -26,6 +26,7 @@ profile localsearch @{exec_path} flags=(attach_disconnected) {
network netlink raw, network netlink raw,
#aa:dbus own bus=session name=org.freedesktop.Tracker3.Miner.Files
#aa:dbus own bus=session name=org.freedesktop.LocalSearch3 #aa:dbus own bus=session name=org.freedesktop.LocalSearch3
@{exec_path} mr, @{exec_path} mr,
@ -61,6 +62,7 @@ profile localsearch @{exec_path} flags=(attach_disconnected) {
@{PROC}/sys/fs/inotify/max_user_watches r, @{PROC}/sys/fs/inotify/max_user_watches r,
owner @{PROC}/@{pid}/cmdline r, owner @{PROC}/@{pid}/cmdline r,
owner @{PROC}/@{pid}/mountinfo r, owner @{PROC}/@{pid}/mountinfo r,
owner @{PROC}/@{pid}/mounts r,
owner @{PROC}/@{pid}/task/@{tid}/comm rw, owner @{PROC}/@{pid}/task/@{tid}/comm rw,
/dev/media@{int} rw, /dev/media@{int} rw,

View file

@ -28,8 +28,9 @@ profile nautilus @{exec_path} flags=(attach_disconnected) {
mqueue r type=posix /, mqueue r type=posix /,
#aa:dbus own bus=session name=org.gnome.Nautilus interface+="org.gtk.{Application,Actions}"
#aa:dbus own bus=session name=org.freedesktop.FileManager1 #aa:dbus own bus=session name=org.freedesktop.FileManager1
#aa:dbus own bus=session name=org.gnome.Nautilus interface+="org.gtk.{Application,Actions}"
#aa:dbus own bus=session name=org.gnome.Nautilus.SearchProvider interface+=org.gnome.Shell.SearchProvider2
#aa:dbus talk bus=session name=org.gtk.MountOperationHandler label=gnome-shell #aa:dbus talk bus=session name=org.gtk.MountOperationHandler label=gnome-shell
#aa:dbus talk bus=session name=org.gtk.vfs label="gvfsd{,-*}" #aa:dbus talk bus=session name=org.gtk.vfs label="gvfsd{,-*}"

View file

@ -16,12 +16,13 @@ profile seahorse @{exec_path} {
include <abstractions/bus/org.freedesktop.Avahi> include <abstractions/bus/org.freedesktop.Avahi>
include <abstractions/bus/org.freedesktop.portal.Desktop> include <abstractions/bus/org.freedesktop.portal.Desktop>
include <abstractions/bus/org.freedesktop.secrets> include <abstractions/bus/org.freedesktop.secrets>
include <abstractions/bus/org.gtk.vfs.MountTracker>
include <abstractions/dconf-write> include <abstractions/dconf-write>
include <abstractions/gnome-strict> include <abstractions/gnome-strict>
include <abstractions/p11-kit> include <abstractions/p11-kit>
include <abstractions/ssl_certs> include <abstractions/ssl_certs>
#aa:dbus own bus=session name=org.gnome.seahorse.Application #aa:dbus own bus=session name=org.gnome.seahorse.Application interface+=org.gnome.Shell.SearchProvider2
@{exec_path} mr, @{exec_path} mr,

View file

@ -18,27 +18,27 @@ profile gvfsd-network @{exec_path} {
dbus send bus=session path=/org/gtk/gvfs/exec_spaw/@{int} dbus send bus=session path=/org/gtk/gvfs/exec_spaw/@{int}
interface=org.gtk.vfs.Spawner interface=org.gtk.vfs.Spawner
member=Spawned member=Spawned
peer=(name=:*, label=gvfsd), peer=(name="@{busname}", label=gvfsd),
dbus receive bus=session path=/org/gtk/vfs/mountable dbus receive bus=session path=/org/gtk/vfs/mountable
interface=org.gtk.vfs.Mountable interface=org.gtk.vfs.Mountable
member=Mount member=Mount
peer=(name=:*, label=gvfsd), peer=(name="@{busname}", label=gvfsd),
dbus send bus=session path=/org/gtk/vfs/mounttracker dbus send bus=session path=/org/gtk/vfs/mounttracker
interface=org.gtk.vfs.MountTracker interface=org.gtk.vfs.MountTracker
member={MountLocation,LookupMount,RegisterMount} member={MountLocation,LookupMount,RegisterMount}
peer=(name=:*, label=gvfsd), peer=(name="@{busname}", label=gvfsd),
dbus send bus=session path=/org/gtk/vfs/Daemon dbus send bus=session path=/org/gtk/vfs/Daemon
interface=org.gtk.vfs.Daemon interface=org.gtk.vfs.Daemon
member=GetConnection member=GetConnection
peer=(name=:*, label=gvfsd-dnssd), peer=(name="@{busname}", label=gvfsd-dnssd),
dbus receive bus=session path=/org/gtk/vfs/Daemon dbus receive bus=session path=/org/gtk/vfs/Daemon
interface=org.gtk.vfs.Daemon interface=org.gtk.vfs.Daemon
member=GetConnection member=GetConnection
peer=(name=:*, label=gnome-control-center), peer=(name="@{busname}", label=gnome-control-center),
@{exec_path} mr, @{exec_path} mr,

View file

@ -23,15 +23,15 @@ profile gvfsd-recent @{exec_path} {
dbus receive bus=session path=/org/gtk/vfs/mountable dbus receive bus=session path=/org/gtk/vfs/mountable
interface=org.gtk.vfs.Mountable interface=org.gtk.vfs.Mountable
member=Mount member=Mount
peer=(name=:*, label=gvfsd), peer=(name="@{busname}", label=gvfsd),
dbus send bus=session path=/org/gtk/gvfs/exec_spaw/@{int} dbus send bus=session path=/org/gtk/gvfs/exec_spaw/@{int}
interface=org.gtk.vfs.Spawner interface=org.gtk.vfs.Spawner
member=Spawned member=Spawned
peer=(name=:*, label=gvfsd), peer=(name="@{busname}", label=gvfsd),
dbus send bus=session path=/org/gtk/vfs/mounttracker dbus send bus=session path=/org/gtk/vfs/mounttracker
interface=org.gtk.vfs.MountTracker interface=org.gtk.vfs.MountTracker
member=RegisterMount member=RegisterMount
peer=(name=:*, label=gvfsd), peer=(name="@{busname}", label=gvfsd),
@{exec_path} mr, @{exec_path} mr,

View file

@ -26,12 +26,12 @@ profile gvfsd-smb-browse @{exec_path} {
dbus receive bus=session path=/org/gtk/vfs/mountable dbus receive bus=session path=/org/gtk/vfs/mountable
interface=org.gtk.vfs.Mountable interface=org.gtk.vfs.Mountable
member=Mount member=Mount
peer=(name=:*, label=gvfsd), peer=(name="@{busname}", label=gvfsd),
dbus send bus=session path=/org/gtk/gvfs/exec_spaw/@{int} dbus send bus=session path=/org/gtk/gvfs/exec_spaw/@{int}
interface=org.gtk.vfs.Spawner interface=org.gtk.vfs.Spawner
member=Spawned member=Spawned
peer=(name=:*, label=gvfsd), peer=(name="@{busname}", label=gvfsd),
@{exec_path} mr, @{exec_path} mr,

View file

@ -24,27 +24,27 @@ profile gvfsd-trash @{exec_path} {
dbus receive bus=session path=/org/gtk/vfs/Daemon dbus receive bus=session path=/org/gtk/vfs/Daemon
interface=org.gtk.vfs.Daemon interface=org.gtk.vfs.Daemon
member=GetConnection member=GetConnection
peer=(name=:*, label="{gnome-shell,nautilus}"), peer=(name="@{busname}", label="{gnome-shell,nautilus}"),
dbus receive bus=session path=/org/gtk/vfs/mountable dbus receive bus=session path=/org/gtk/vfs/mountable
interface=org.gtk.vfs.Mountable interface=org.gtk.vfs.Mountable
member=Mount member=Mount
peer=(name=:*, label=gvfsd), peer=(name="@{busname}", label=gvfsd),
dbus send bus=session path=/org/gtk/gvfs/exec_spaw/@{int} dbus send bus=session path=/org/gtk/gvfs/exec_spaw/@{int}
interface=org.gtk.vfs.Spawner interface=org.gtk.vfs.Spawner
member=Spawned member=Spawned
peer=(name=:*, label=gvfsd), peer=(name="@{busname}", label=gvfsd),
dbus send bus=session path=/org/gtk/vfs/mounttracker dbus send bus=session path=/org/gtk/vfs/mounttracker
interface=org.gtk.vfs.MountTracker interface=org.gtk.vfs.MountTracker
member=RegisterMount member=RegisterMount
peer=(name=:*, label=gvfsd), peer=(name="@{busname}", label=gvfsd),
dbus receive bus=session dbus receive bus=session
interface=org.freedesktop.DBus.Introspectable interface=org.freedesktop.DBus.Introspectable
member=Introspect member=Introspect
peer=(name=:*, label=gnome-shell), peer=(name="@{busname}", label=gnome-shell),
@{exec_path} mr, @{exec_path} mr,

View file

@ -10,11 +10,25 @@ include <tunables/global>
profile gvfsd-wsdd @{exec_path} { profile gvfsd-wsdd @{exec_path} {
include <abstractions/base> include <abstractions/base>
include <abstractions/bus-session> include <abstractions/bus-session>
include <abstractions/bus-system>
include <abstractions/bus/org.gtk.vfs.MountTracker>
network netlink raw, network netlink raw,
#aa:dbus own bus=session name=org.gtk.vfs.mountpoint_wsdd #aa:dbus own bus=session name=org.gtk.vfs.mountpoint_wsdd
#aa:dbus talk bus=session name=org.gtk.vfs.MountTracker label=gvfsd
dbus receive bus=session path=/org/gtk/vfs/mountable
interface=org.gtk.vfs.Mountable
member=Mount
peer=(name="@{busname}", label=gvfsd),
dbus send bus=session path=/org/gtk/gvfs/exec_spaw/@{int}
interface=org.gtk.vfs.Spawner
member=Spawned
peer=(name="@{busname}", label=gvfsd),
dbus send bus=session path=/org/gtk/vfs/mounttracker
interface=org.gtk.vfs.MountTracker
member=RegisterMount
peer=(name="@{busname}", label=gvfsd),
@{exec_path} mr, @{exec_path} mr,
@ -23,6 +37,7 @@ profile gvfsd-wsdd @{exec_path} {
@{run}/mount/utab r, @{run}/mount/utab r,
owner @{run}/user/@{uid}/gvfsd/socket-@{rand8} rw, owner @{run}/user/@{uid}/gvfsd/socket-@{rand8} rw,
owner @{run}/user/@{uid}/gvfsd/wsdd rw,
include if exists <local/gvfsd-wsdd> include if exists <local/gvfsd-wsdd>
} }