/als-autobrightness

Systemd service providing adaptive brightness feature for KDE

Primary LanguagePythonMIT LicenseMIT

Adaptive brightness service

Adaptive brightness service for laptops running KDE 6.

Ongoing merge request will land adaptive brightness into PowerDevil. Until then current app aims to deliver similar functionality.

Highlights

  • Minimal number of dependencies
  • Requires ambient light sensor (ALS)
  • Efficient, utilizes sensor signals via dbus (no sensor polling)
  • Uses time weighted average to smooth out brigtness changes
  • Runs unpriviledged
  • Allows end-user to set brightness to the liking (offsetting adaptive brightness)
  • Tested with Fedora 40, KDE Plasma 6.2

Prerequisites

Make sure your device has the sensor before proceeding with setup. Check packages below are installed (should be pre-installed in most distros)

sudo dnf install iio-sensor-proxy python3-pip python3-dbus git
systemctl status iio-sensor-proxy.service

Install

pip install -U git+https://github.com/dmy3k/als-autobrightness.git@main

# Setup as service
autobrightnesscli --default-systemd-cfg > ~/.config/systemd/user/autobrightness.service
systemctl --user enable --now autobrightness

# Verify service is running
systemctl --user status autobrightness

# Get logs (e.g for bugreport)
journalctl --user -u autobrightness

Uninstall

# Disable and remove systemd service
systemctl --user disable --now autobrightness
rm ~/.config/systemd/user/autobrightness.service

# Uninstall package
pip uninstall autobrightness

References

Similar projects