If you’re running KDE Plasma on Arch Linux, you might encounter two very frustrating issues: your screen freezing randomly, and brightness controls stopping working after your screen automatically locks. I’ve been battling both problems recently and want to share my experience, setup, and a practical workaround that helped me with these issues.
My Hardware and System Specs
Note: I’m not sure if these issues are specific to my setup, but I’m sharing my hardware info here for anyone curious or facing similar problems.
Motherboard: ASUS TUF GAMING B650M-PLUS WIFI
CPU: AMD Ryzen 7 8700G w/ Radeon 780M Graphics (using integrated graphics)
16 cores (8 physical cores, 2 threads per core)
Max frequency: 5177 MHz
GPU: Integrated AMD Radeon Graphics (radeonsi, phoenix)
RAM: 64 GB Kingston FURY Beast (2 x 32 GB modules)
Monitors: Two Lenovo D27-40, 1920×1080 resolution, connected via HDMI and DisplayPort
Storage: Two NVMe drives (931.5 GB and 1.8 TB)
Kernel Version: 6.14.9-arch1-1
Linux Distribution: Arch Linux
The Problems
Screen Freezing After Automatic Screen Lock
The most annoying issue I face is my screen freezing when I unlock after the screen has locked automatically. This interrupts my workflow significantly.
Brightness Control Stops Working After Automatic Screen Lock
Brightness keys and KDE’s brightness controls stop working only after the screen locks automatically and I unlock it. Before locking and even when locking the screen manually, brightness control works fine.
What I Found Out
Both issues appear related to KDE’s power management daemon: plasma-powerdevil.service.
Logs show repeated errors involving brightness control, especially linked with the libddcutil library that communicates with monitors via DDC/CI.
Brightness control and freezing happen after automatic locking/unlocking, not when locking manually.
The Workaround for Both Issues
Restarting the plasma-powerdevil.service after unlocking the screen restores brightness control and can help with the freezing issue.
You can run this manually like this:
systemctl --user restart plasma-powerdevil.service
Automating Restart on Screen Unlock
To avoid manually restarting the service every time, you can automate it with systemd user units that trigger on screen unlock events.
Create the following two files in your ~/.config/systemd/user/
directory:
1. restart-powerdevil-on-unlock.service
[Unit]
Description=Restart plasma-powerdevil on screen unlock
[Service]
Type=oneshot
ExecStart=/usr/bin/systemctl --user restart plasma-powerdevil.service
2. restart-powerdevil-on-unlock.path
[Unit]
Description=Watch for screen unlock event to restart plasma-powerdevil
[Path]
PathChanged=/run/user/%U/kscreen-locking-portal/unlocked
[Install]
WantedBy=default.target
How to enable
1. Reload systemd user units:
systemctl --user daemon-reload
2. Enable and start the path watcher:
systemctl --user enable --now restart-powerdevil-on-unlock.path
This path unit watches KDE’s lock screen portal unlock event file and triggers the restart service automatically.