AvengeMedia / AvengeMedia/DankMaterialShell
AppsDock application icons show "?" after upgrading to 1.6.1 (niri; required delegate properties fix locally)
- Dominant language
- QML
- Stars
- 8.1k
- Forks
- 515
- Avg merge
- 1d 8h
- Merged PRs (30d)
- 102
Description
### Compositor
Niri
### Distribution
Debian
### If Other, please specify
_No response_
### Select your Installation Method
Distro Packaging
### Was this your original Installation method?
No (specify below)
### If no, specify
Initially installed using the installation script from the official website; subsequently updated through APT.
### dms doctor -vC
dms doctor -v (summary; collected after applying local workaround)
The -C option copies to the clipboard, so diagnostic output was collected with -v instead. User-specific paths are omitted.
- OS: Debian GNU/Linux 13 (trixie), amd64
- Display server: Wayland
- DMS CLI: v1.6.1 (/usr/bin/dms)
- DMS Shell: v1.6.1 (local copy with the two-line workaround below)
- Quickshell: 0.3.1 (revision empty, distributed by Unset), /usr/bin/qs
- niri: 26.04, /usr/bin/niri; active compositor: niri
- Install type: System package; upgraded using APT
- Polkit, IdleMonitor, IdleInhibitor, ShortcutInhibitor, BackgroundBlur: available
- qt6-imageformats: installed (GIF); kimageformats: not installed
- Network: NetworkManager
- matugen, cava, danksearch: installed
- dms.service: enabled, active
- QT_QPA_PLATFORMTHEME, QS_ICON_THEME, XDG_MENU_PREFIX: not set
- Fonts: Noto Sans, JetBrains Mono
- Doctor result: 1 warning, 32 ok
### Description
After upgrading the Debian package from 1.5.3db1 to 1.6.1db1, the AppsDock widget in DankBar showed a literal "?" for every running application. System tray icons on the right remained visible. Restarting DMS did not fix it.
niri correctly reported app IDs (Alacritty, google-chrome, QQ). Papirus was installed. Fixing a separate malformed GTK settings header and restarting also did not resolve this issue.
A minimal local change to quickshell/Modules/DankBar/Widgets/AppsDock.qml restored the application icons:
```diff
id: dockDelegate
Item {
id: delegateItem
+ required property var modelData
+ required property int index
property bool isSeparator: modelData.type === "separator"
```
The existing fallback returns "?" when appItem.appId is falsy. This suggests a delegate/model-data binding or scope issue; I have not traced the QML engine internals or tested whether this affects other environments.
To test, I copied the packaged shell to a local directory, applied only these two lines, and loaded it through DMS_SHELL_DIR. After restarting, a screenshot confirmed the Alacritty and Chrome icons rendered normally. This is a temporary workaround, not a claim that the patch has been fully regression-tested.
### Expected Behavior
Running applications should display their application icons in DankBar, as before the upgrade.
### Steps to Reproduce
1. On an existing Debian 13 / niri setup using the AppsDock widget in DankBar, upgrade dms from 1.5.3db1 to 1.6.1db1 via APT.
2. Start/restart DMS and open applications such as Alacritty and Chrome.
3. Observe question marks in place of application icons, while system tray icons remain visible.
4. Add the two required properties shown above to dockDelegate, load that local shell copy, and restart DMS: the icons render normally.
Observed on this existing configuration; not reproduced on a clean installation. Initially installed using the installation script from the official website; subsequently updated through APT.
### Error Messages/Logs
No direct QML binding exception was found in the inspected service logs. The patched shell reported Configuration Loaded and rendered the application icons correctly.
### Screenshots/Recordings
_No response_
Contributor guide
Research direction
Start in quickshell/Modules/DankBar/Widgets/AppsDock.qml, at the dockDelegate and its existing appItem.appId fallback. Reproduce the upgrade scenario with AppsDock under niri, then verify the delegate/model-data behavior and the proposed required properties. Done means running applications such as Alacritty and Chrome show their icons instead of question marks, while system tray icons remain unaffected.
Written by the indexing model from the issue text.
Assessment
- Domain
- desktop
- Issue type
- Bug
- Difficulty
- 2/5
- Estimated time
- 1-3 hours
- Activity status
- Active
- Clarity
- Mostly clear
- Newbie friendliness
- 78/100