# apparmor.d - Full set of apparmor profiles
# Copyright (C) 2022-2024 Alexandre Pujol <alexandre@pujol.io>
# SPDX-License-Identifier: GPL-2.0-only

# Permissions for querying dconf settings with write access; use the dconf
# abstraction first, and dconf-write only for specific application's profile.

  dbus send bus=session path=/ca/desrt/dconf/Writer/user
       interface=ca.desrt.dconf.Writer
       member=Change
       peer=(name=ca.desrt.dconf), # no peer's labels

  dbus receive bus=session path=/ca/desrt/dconf/Writer/user
       interface=ca.desrt.dconf.Writer
       member=Notify
       peer=(name=:*, label=dconf-service),

  /usr/share/dconf/profile/gdm r,

  /etc/dconf/** r,

  owner @{user_config_dirs}/dconf/user r,

  owner @{run}/user/@{uid}/dconf/ rw,
  owner @{run}/user/@{uid}/dconf/user rw,

  include if exists <abstractions/dconf-write.d>

# vim:syntax=apparmor
