Bug 493044 - With autorandr installed, NightLight automatically turns on upon login, even when disabled through the GUI
Summary: With autorandr installed, NightLight automatically turns on upon login, even ...
Status: RESOLVED UPSTREAM
Alias: None
Product: plasmashell
Classification: Plasma
Component: Brightness and Color widget (show other bugs)
Version: 6.1.4
Platform: Arch Linux Linux
: NOR normal
Target Milestone: 1.0
Assignee: Plasma Bugs List
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2024-09-13 03:10 UTC by nathan
Modified: 2024-11-20 18:19 UTC (History)
4 users (show)

See Also:
Latest Commit:
Version Fixed In:
Sentry Crash Report:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description nathan 2024-09-13 03:10:14 UTC
STEPS TO REPRODUCE
1.  Install kde in a minimal configuration state
2.  log in
3.  Find that night light has been turned on automatically. Turning it off and on again fixes this issue until the next login.

OBSERVED RESULT

Night Light turns on automatically, and at almost full strength.

EXPECTED RESULT

Night Light should not turn on upon login.

SOFTWARE/OS VERSIONS
Windows: 
macOS: 
(available in the Info Center app, or by running `kinfo` in a terminal window)
Linux/KDE Plasma: 
KDE Plasma Version: 6.1.4
KDE Frameworks Version: 
Qt Version: 6.7.2

ADDITIONAL INFORMATION

When the kernel is updated, this also triggers the bug.

Output from DBUS while the bug is active (eg. Night Light is extraordinarily orange): 

  Arguments: [Argument: a{sv} {"available" = [Variant(bool): true], "currentTemperature" = [Variant(uint): 6500], "daylight" = [Variant(bool): false], "enabled" = [Variant(bool): false], "inhibited" = [Variant(bool): false], "mode" = [Variant(uint): 2], "previousTransitionDateTime" = [Variant(qulonglong): 1726189200], "previousTransitionDuration" = [Variant(uint): 1800000], "running" = [Variant(bool): false], "scheduledTransitionDateTime" = [Variant(qulonglong): 1726232400], "scheduledTransitionDuration" = [Variant(uint): 1800000], "targetTemperature" = [Variant(uint): 3200]}]
Comment 1 nathan 2024-09-21 06:15:19 UTC
After some further troubleshooting, I've found that the udevadm hook is the culprit, specifically when it runs this command: 

>sudo /usr/bin/udevadm trigger -c change /dev/dri/*

It seems to trigger night light to run at full strength regardless of the device in the /dev/dri/ directory. Here is what my directory looks like:

>$ ll /dev/dri
>total 0
>drwxr-xr-x   3 root root        160 Sep 20 17:11 ./
>drwxr-xr-x  22 root root       4860 Sep 20 17:32 ../
>drwxr-xr-x   2 root root        140 Sep 20 17:11 by-path/
>crw-rw----+  1 root video  226,   0 Sep 20 22:58 card0
>crw-rw----+  1 root video  226,   1 Sep 20 22:58 card1
>crw-rw----+  1 root video  226,   2 Sep 20 22:55 card2
>crw-rw-rw-   1 root render 226, 128 Sep 20 22:57 renderD128
>crw-rw-rw-   1 root render 226, 129 Sep 20 22:58 renderD129

Output of sudo udevadm test /dev/dri/renderD128

>$ sudo udevadm test /dev/dri/renderD128
This program is for debugging only, it does not run any program
specified by a RUN key. It may show incorrect results, because
some values may be different, or not available at a simulation run.

Trying to open "/etc/systemd/hwdb/hwdb.bin"...
Trying to open "/etc/udev/hwdb.bin"...
Trying to open "/usr/lib/systemd/hwdb/hwdb.bin"...
Trying to open "/usr/lib/udev/hwdb.bin"...
=== trie on-disk ===
tool version:          256
file size:        13112251 bytes
header size             80 bytes
strings            2658779 bytes
nodes             10453392 bytes
Loading kernel module index.
Loaded 'libkmod.so.2' via dlopen()
Found cgroup2 on /sys/fs/cgroup/, full unified hierarchy
Found container virtualization none.
Using default interface naming scheme 'v255'.
Parsed configuration file "/usr/lib/systemd/network/99-default.link"
Parsed configuration file "/usr/lib/systemd/network/80-vm-vt.link"
Parsed configuration file "/usr/lib/systemd/network/80-namespace-ns.link"
Parsed configuration file "/usr/lib/systemd/network/80-iwd.link"
Parsed configuration file "/usr/lib/systemd/network/80-container-vz.link"
Parsed configuration file "/usr/lib/systemd/network/80-container-ve.link"
Parsed configuration file "/usr/lib/systemd/network/80-container-vb.link"
Parsed configuration file "/usr/lib/systemd/network/80-6rd-tunnel.link"
Created link configuration context.
Reading rules file: /usr/lib/udev/rules.d/01-md-raid-creating.rules
Reading rules file: /usr/lib/udev/rules.d/10-dm.rules
Reading rules file: /usr/lib/udev/rules.d/11-dm-lvm.rules
Reading rules file: /usr/lib/udev/rules.d/13-dm-disk.rules
Reading rules file: /usr/lib/udev/rules.d/39-usbmuxd.rules
Reading rules file: /usr/lib/udev/rules.d/40-brscan5.rules
Reading rules file: /usr/lib/udev/rules.d/40-gphoto.rules
Reading rules file: /usr/lib/udev/rules.d/40-monitor-hotplug.rules
Reading rules file: /usr/lib/udev/rules.d/40-usb-media-players.rules
Reading rules file: /usr/lib/udev/rules.d/45-i2c-tools.rules
Reading rules file: /usr/lib/udev/rules.d/50-udev-default.rules
Reading rules file: /usr/lib/udev/rules.d/51-android.rules
Reading rules file: /usr/lib/udev/rules.d/60-autosuspend.rules
Reading rules file: /usr/lib/udev/rules.d/60-block.rules
Reading rules file: /usr/lib/udev/rules.d/60-cdrom_id.rules
Reading rules file: /usr/lib/udev/rules.d/60-ddcutil-i2c.rules
Reading rules file: /usr/lib/udev/rules.d/60-ddcutil-usb.rules
Reading rules file: /usr/lib/udev/rules.d/60-dmi-id.rules
Reading rules file: /usr/lib/udev/rules.d/60-drm.rules
Reading rules file: /usr/lib/udev/rules.d/60-evdev.rules
Reading rules file: /usr/lib/udev/rules.d/60-fido-id.rules
Reading rules file: /usr/lib/udev/rules.d/60-infiniband.rules
Reading rules file: /usr/lib/udev/rules.d/60-input-id.rules
Reading rules file: /usr/lib/udev/rules.d/60-nvidia.rules
Reading rules file: /usr/lib/udev/rules.d/60-persistent-alsa.rules
Reading rules file: /usr/lib/udev/rules.d/60-persistent-input.rules
Reading rules file: /usr/lib/udev/rules.d/60-persistent-storage-mtd.rules
Reading rules file: /usr/lib/udev/rules.d/60-persistent-storage-tape.rules
Reading rules file: /usr/lib/udev/rules.d/60-persistent-storage.rules
Reading rules file: /usr/lib/udev/rules.d/60-persistent-v4l.rules
Reading rules file: /usr/lib/udev/rules.d/60-rfkill.rules
Reading rules file: /usr/lib/udev/rules.d/60-sensor.rules
Reading rules file: /usr/lib/udev/rules.d/60-serial.rules
Reading rules file: /etc/udev/rules.d/60-steam-input.rules
Reading rules file: /etc/udev/rules.d/60-steam-vr.rules
Reading rules file: /usr/lib/udev/rules.d/60-tpm-udev.rules
Reading rules file: /usr/lib/udev/rules.d/60-upower-battery.rules
Reading rules file: /usr/lib/udev/rules.d/60-vboxdrv.rules
Reading rules file: /usr/lib/udev/rules.d/63-md-raid-arrays.rules
Reading rules file: /usr/lib/udev/rules.d/64-btrfs-dm.rules
Reading rules file: /usr/lib/udev/rules.d/64-btrfs-zoned.rules
Reading rules file: /usr/lib/udev/rules.d/64-btrfs.rules
Reading rules file: /usr/lib/udev/rules.d/64-ext4.rules
Reading rules file: /usr/lib/udev/rules.d/64-md-raid-assembly.rules
Reading rules file: /usr/lib/udev/rules.d/65-libwacom.rules
Reading rules file: /usr/lib/udev/rules.d/65-sane.rules
Reading rules file: /usr/lib/udev/rules.d/66-saned.rules
Reading rules file: /usr/lib/udev/rules.d/69-dm-lvm.rules
Reading rules file: /usr/lib/udev/rules.d/69-libmtp.rules
Reading rules file: /usr/lib/udev/rules.d/69-md-clustered-confirm-device.rules
Reading rules file: /usr/lib/udev/rules.d/70-camera.rules
Reading rules file: /usr/lib/udev/rules.d/70-infrared.rules
Reading rules file: /usr/lib/udev/rules.d/70-joystick.rules
Reading rules file: /usr/lib/udev/rules.d/70-memory.rules
Reading rules file: /usr/lib/udev/rules.d/70-mouse.rules
Reading rules file: /usr/lib/udev/rules.d/70-power-switch.rules
Reading rules file: /usr/lib/udev/rules.d/70-steam-input.rules
Reading rules file: /usr/lib/udev/rules.d/70-steam-vr.rules
Reading rules file: /usr/lib/udev/rules.d/70-touchpad.rules
Reading rules file: /usr/lib/udev/rules.d/70-uaccess.rules
Reading rules file: /usr/lib/udev/rules.d/71-seat.rules
Reading rules file: /usr/lib/udev/rules.d/73-seat-late.rules
Reading rules file: /usr/lib/udev/rules.d/75-net-description.rules
Reading rules file: /usr/lib/udev/rules.d/75-probe_mtd.rules
Reading rules file: /usr/lib/udev/rules.d/78-sound-card.rules
Reading rules file: /usr/lib/udev/rules.d/80-drivers.rules
Reading rules file: /usr/lib/udev/rules.d/80-libinput-device-groups.rules
Reading rules file: /usr/lib/udev/rules.d/80-net-setup-link.rules
Reading rules file: /usr/lib/udev/rules.d/80-udisks2.rules
Reading rules file: /usr/lib/udev/rules.d/81-net-dhcp.rules
Reading rules file: /usr/lib/udev/rules.d/85-regulatory.rules
Reading rules file: /usr/lib/udev/rules.d/90-iocost.rules
Reading rules file: /usr/lib/udev/rules.d/90-libinput-fuzz-override.rules
Reading rules file: /usr/lib/udev/rules.d/90-pipewire-alsa.rules
Reading rules file: /usr/lib/udev/rules.d/90-vconsole.rules
Reading rules file: /usr/lib/udev/rules.d/95-dm-notify.rules
Reading rules file: /usr/lib/udev/rules.d/95-upower-hid.rules
Reading rules file: /usr/lib/udev/rules.d/95-upower-wup.rules
Reading rules file: /usr/lib/udev/rules.d/96-e2scrub.rules
Reading rules file: /usr/lib/udev/rules.d/99-fuse.rules
Reading rules file: /usr/lib/udev/rules.d/99-fuse3.rules
Reading rules file: /usr/lib/udev/rules.d/99-systemd.rules
renderD128: /usr/lib/udev/rules.d/50-udev-default.rules:56 GROUP 989
renderD128: /usr/lib/udev/rules.d/50-udev-default.rules:56 MODE 0666
renderD128: /usr/lib/udev/rules.d/60-drm.rules:3 Importing properties from results of builtin command 'path_id'
renderD128: /usr/lib/udev/rules.d/60-drm.rules:10 Added SYMLINK 'dri/by-path/pci-0000:01:00.0-render'
Properties:
  DEVPATH=/devices/pci0000:00/0000:00:01.1/0000:01:00.0/drm/renderD128
  DEVNAME=/dev/dri/renderD128
  DEVTYPE=drm_minor
  MAJOR=226
  MINOR=128
  SUBSYSTEM=drm
  ACTION=add
  ID_PATH=pci-0000:01:00.0
  ID_PATH_TAG=pci-0000_01_00_0
  DEVLINKS=/dev/dri/by-path/pci-0000:01:00.0-render
  USEC_INITIALIZED=6072254
Device node symlinks: (priority=0)
  /dev/dri/by-path/pci-0000:01:00.0-render
Inotify watch:
  disabled
Device node group:
  render (gid=989)
Device node permission:
  0666
Unload kernel module index.
Unloaded link configuration context.
Comment 2 nathan 2024-09-21 06:41:50 UTC
Solved by removing autorandr.
Comment 3 TraceyC 2024-11-20 18:19:57 UTC
Since this issue is caused by autorandr, it's not something KDE can fix.