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

# Allow adjusting brightness of backlight and LEDs

  abi <abi/4.0>,

  @{run}/udev/data/+backlight:* r,        # For display backlights on laptops, monitors, and other screens.
  @{run}/udev/data/+leds:* r,             # Identifies all LEDs (keyboard, mouse, etc.)

  @{sys}/class/ r,
  @{sys}/class/backlight/ r,
  @{sys}/class/leds/ r,

  @{sys}/devices/**/backlight/**/actual_brightness rw,
  @{sys}/devices/**/backlight/**/brightness rw,
  @{sys}/devices/**/backlight/**/brightness_hw_changed r,
  @{sys}/devices/**/backlight/**/enabled r,
  @{sys}/devices/**/backlight/**/max_brightness rw,
  @{sys}/devices/**/backlight/**/type r,
  @{sys}/devices/**/backlight/**/uevent r,

  @{sys}/devices/@{pci}/drm/card@{int}/**/actual_brightness rw,
  @{sys}/devices/@{pci}/drm/card@{int}/**/brightness rw,
  @{sys}/devices/@{pci}/drm/card@{int}/**/brightness_hw_changed r,
  @{sys}/devices/@{pci}/drm/card@{int}/**/enabled r,
  @{sys}/devices/@{pci}/drm/card@{int}/**/max_brightness rw,
  @{sys}/devices/@{pci}/drm/card@{int}/**/type r,
  @{sys}/devices/@{pci}/drm/card@{int}/**/uevent r,

  @{sys}/devices/**/leds/**/actual_brightness rw,
  @{sys}/devices/**/leds/**/brightness rw,
  @{sys}/devices/**/leds/**/brightness_hw_changed r,
  @{sys}/devices/**/leds/**/enabled r,
  @{sys}/devices/**/leds/**/max_brightness rw,
  @{sys}/devices/**/leds/**/type r,
  @{sys}/devices/**/leds/**/uevent r,

  include if exists <abstractions/backlight.d>

# vim:syntax=apparmor
