AvengeMedia / AvengeMedia/DankMaterialShell

Night mode (wlr-gamma-control) works on Intel, fails on AMD desktop (no gamma LUT)

Open
#1,458 2 comments 1 reaction 0 assignees View on GitHub
bug
Dominant language
QML
Stars
8.1k
Forks
515
Avg merge
1d 8h
Merged PRs (30d)
102

Description

### Compositor

- [ ] Niri
- [x] Hyprland
- [ ] MangoWC (dwl)
- [ ] Sway

### Distribution

- [ ] Arch Linux
- [ ] CachyOS
- [ ] Fedora
- [x] NixOS
- [ ] Debian
- [ ] Ubuntu
- [ ] Gentoo
- [ ] OpenSUSE
- [ ] Other (specify below)

### If Other, please specify

_No response_

### dms doctor -v

System
● Operating System ····· NixOS 26.05 (Yarara)
└─ Supported for runtime (install via NixOS module or Flake)
● Architecture ········· amd64
● Display Server ······· Wayland
└─ WAYLAND_DISPLAY=wayland-1

Versions
● DMS CLI ·············· dms v1.2.2
└─ /nix/store/6m2626j64vg0jh3c027n3pavdf5npkjm-dms-shell-1.2.2/bin/.dms-wrapped
● Quickshell ··········· quickshell 0.2.1, revision tag-v0.2.1, distributed by: Nixpkgs
└─ /run/current-system/sw/bin/qs
● DMS Shell ············ v1.2.2
└─ /nix/store/6m2626j64vg0jh3c027n3pavdf5npkjm-dms-shell-1.2.2/share/quickshell/dms

Installation
● DMS Configuration ···· Found
└─ /nix/store/6m2626j64vg0jh3c027n3pavdf5npkjm-dms-shell-1.2.2/share/quickshell/dms
● shell.qml ············ Present
└─ /nix/store/6m2626j64vg0jh3c027n3pavdf5npkjm-dms-shell-1.2.2/share/quickshell/dms/shell.qml
○ Install Type ········· Nix store
└─ /nix/store/6m2626j64vg0jh3c027n3pavdf5npkjm-dms-shell-1.2.2/share/quickshell/dms

Compositor
● Hyprland ············· 0.53.1
└─ /run/current-system/sw/bin/hyprland
○ Active ··············· Hyprland

Quickshell Features
○ Polkit ··············· Not available
└─ Authentication prompts
○ IdleMonitor ·········· Not available
└─ Idle detection
○ IdleInhibitor ········ Not available
└─ Prevent idle/sleep
○ ShortcutInhibitor ···· Not available
└─ Allow shortcut management (niri)

Optional Features
● accountsservice ······ Running
└─ User accounts
● power-profiles-daemon Running
└─ Power profile management
● I2C/DDC ·············· 1 monitor(s) detected
└─ External monitor brightness control
● Terminal ············· kitty
● matugen ·············· Installed
└─ Dynamic theming
● dgop ················· Installed
└─ System monitoring
● cava ················· Installed
└─ Audio visualizer
● khal ················· Installed
└─ Calendar events
● Network ·············· NetworkManager (active)
└─ NetworkManager present. Using NM API.
○ danksearch ··········· Not installed
└─ File search
● loginctl ············· Installed
└─ Session management
○ fprintd ·············· Not installed
└─ Fingerprint auth

Config Files
● settings.json ········ Present
└─ /home/linuxboss/.config/DankMaterialShell/settings.json
○ clsettings.json ······ Not yet created
└─ /home/linuxboss/.config/DankMaterialShell/clsettings.json
○ plugin_settings.json · Not yet created
└─ /home/linuxboss/.config/DankMaterialShell/plugin_settings.json
● session.json ········· Present
└─ /home/linuxboss/.local/state/DankMaterialShell/session.json
● dms-colors.json ······ Present
└─ /home/linuxboss/.cache/DankMaterialShell/dms-colors.json

Services
● dms.service ·········· enabled, inactive
○ greetd ··············· Not installed
└─ Optional greeter service

Environment
○ QT_QPA_PLATFORMTHEME · qt6ct
○ QS_ICON_THEME ········ Not set

──────────────────────────────────────
1 error(s), 1 warning(s), 21 ok

→ Consider using quickshell-git for full feature support

### Description

Night Mode in Dank Material Shell (DMS) has no effect on my desktop system, while it works correctly on another machine with the same OS, compositor, and kernel. All night-light tools relying on `wlr-gamma-control` (including DMS Night Mode) fail on the desktop system.

Investigation shows that on the affected system the DRM stack exposes no gamma LUT, so gamma-based night mode cannot work. `dms doctor` reports a clean and supported setup, so this does not appear to be a DMS configuration or installation issue.

### Expected Behavior

- DMS Night Mode should gradually adjust color temperature (with fading), as it does on the working system.
- If gamma control is unavailable, DMS should ideally warn the user instead of silently doing nothing.

### Steps to Reproduce & Installation Method

**Installation method**

OS: NixOS 26.05
Compositor: Hyprland (Wayland)
Kernel: LTS
DMS: v1.2.2 (installed via Nix store / NixOS module)

**Failing system (desktop)**

CPU/GPU: AMD Radeon RX 6600 XT (amdgpu)
Monitor: ASUS X32UCWMG
Connection: DisplayPort

**Working system (laptop)**

Model: MacBook Pro A1502
GPU: Intel iGPU

**Steps**

1. Boot into Hyprland on the desktop system.
2. Enable Night Mode in DMS.
3. Observe no visual change (no fading, no color temperature shift).
4. Run:

`wlsunset -t 5500`
_reports gamma control failure_.

5. Check DRM gamma LUT availability:

`find /sys/class/drm -name gamma_lut_size`
_no output on desktop system_.

On the Intel laptop, Night Mode works and `gamma_lut_size` is present.

### Error Messages/Logs

wlsunset:

`gamma control of output DP-2 failed`

DMS Night Mode: no explicit error (no effect)

### Screenshots/Recordings

dms doctor: no relevant errors

Contributor guide

Open the contributing guide

Research direction

Start by examining DMS Night Mode and its gamma-control behavior, then compare it with the reported wlsunset failure and the absence of gamma_lut_size under /sys/class/drm. Check how dms doctor currently reports this condition. Done should include a clear warning when gamma control is unavailable instead of silently producing no effect.

Written by the indexing model from the issue text.

Assessment

Domain
desktop
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
42/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.