AvengeMedia / AvengeMedia/DankMaterialShell
Control Center wifi does not separate multiple wifi adapters
- Dominant language
- QML
- Stars
- 8.1k
- Forks
- 515
- Avg merge
- 1d 8h
- Merged PRs (30d)
- 102
Description
### Compositor
Niri
### Distribution
Arch Linux
### If Other, please specify
_No response_
### Select your Installation Method
DankInstaller
### Was this your original Installation method?
Yes
### If no, specify
I installed quickshell, then ran the installer, then installed quickshell-git
### dms doctor -vC
Click to expand
## DMS Doctor Report
**System**
- [ok] Operating System: EndeavourOS
- ID: endeavouros, Version: rolling, Arch: amd64
- [ok] Architecture: amd64
- [ok] Display Server: Wayland
- WAYLAND_DISPLAY=wayland-1
**Versions**
- [ok] DMS CLI: dms v1.4.3
- /usr/bin/dms
- [ok] Quickshell: quickshell 0.2.1, revision 5721955686a474b814c27bc0ec743f86e473ac4f, distributed by: AUR (package: quickshell-git)
- /usr/bin/qs
- [ok] DMS Shell: v1.4.3
- /usr/share/quickshell/dms
**Installation**
- [ok] DMS Configuration: Found
- /usr/share/quickshell/dms
- [ok] shell.qml: Present
- /usr/share/quickshell/dms/shell.qml
- [info] Install Type: System package
- /usr/share/quickshell/dms
**Compositor**
- [ok] niri: 25.11
- /usr/bin/niri
- [info] Active: niri
**Quickshell Features**
- [ok] Polkit: Available
- Authentication prompts
- [ok] IdleMonitor: Available
- Idle detection
- [ok] IdleInhibitor: Available
- Prevent idle/sleep
- [ok] ShortcutInhibitor: Available
- Allow shortcut management (niri)
**Optional Features**
- [ok] accountsservice: Available
- User accounts
- [ok] power-profiles-daemon: Available
- Power profile management
- [ok] logind: Available
- Session management
- [warn] cups-pk-helper: Not available (install cups-pk-helper)
- Printer management
- [ok] I2C/DDC: 1 monitor(s) detected
- External monitor brightness control
- [ok] qt6-imageformats: Installed (5 formats)
- Formats: WebP, TIFF, GIF, JP2, ICNS (/usr/lib/qt6/plugins/imageformats:/usr/lib64/qt6/plugins/imageformats)
- [ok] kimageformats: Installed (4 formats)
- Formats: AVIF, HEIF, JXL, EXR (/usr/lib/qt6/plugins/imageformats:/usr/lib64/qt6/plugins/imageformats)
- [ok] Terminal: kitty
- [ok] Network: NetworkManager
- NetworkManager present. Using NM API.
- [ok] matugen: Installed
- Dynamic theming
- [ok] dgop: Installed
- System monitoring
- [ok] cava: Installed
- Audio visualizer
- [info] khal: Not installed
- Calendar events
- [ok] danksearch: Installed
- File search
- [info] fprintd: Not installed
- Fingerprint auth
**Config Files**
- [ok] settings.json: Present
- /home/tranquil/.config/DankMaterialShell/settings.json
- [info] clsettings.json: Not yet created
- /home/tranquil/.config/DankMaterialShell/clsettings.json
- [ok] plugin_settings.json: Present
- /home/tranquil/.config/DankMaterialShell/plugin_settings.json
- [ok] session.json: Present
- /home/tranquil/.local/state/DankMaterialShell/session.json
- [ok] dms-colors.json: Present
- /home/tranquil/.cache/DankMaterialShell/dms-colors.json
**Services**
- [ok] dms.service: enabled, active
- [ok] greetd: enabled
**Environment**
- [info] QT_QPA_PLATFORMTHEME: kde
- [info] QS_ICON_THEME: Not set
---
**Summary:** 0 error(s), 1 warning(s), 31 ok
### Description
When there are two wifi adapters, the wifi module will show both adapters and allow me to connect from either. However, it fails to correctly show this status, as it appears to be determining the network status off of only wlan0. Additionally, if I attempt to connect to a wifi network with wlan1 selected, it will successfully connect; however, that will lead to the screenshot below and dms-shell will show an error (failed to connect to ). In the wifi networks listing below, nothing will change, and it will continue to show it as disconnected even though it is already connected. Because the wifi module appears to be handling 2 adapters as if there were only wlan0, this will also lead to getting the error unable to disconnect from a wifi, as it was connected from a different adapter, or being unable to disconnect from any wifi connected to as wlan1.
If wlan1 is already connected to a network, choosing to connect again from wlan1 (as there is no disconnect option) will reconnect to the same network without showing an error. While it reconnects, this status is reflected in the subtitle, as the connected status is at the end, but this is not reflected in the main text.
Note: Additionally, if the NetworkManager service is restarted, DMS will claim to be not connected to any network at all and fail to find wlan1.
Note: Additionally, DMS also does not show all available connections, as revealed by `nmcli connection show`. Instead, it seems to be showing all SSIDs. This can cause an issue if a connection is restricted to a device, for example, or a wifi network has multiple differently configured connections which are device restricted, etc.
### Expected Behavior
_No response_
### Steps to Reproduce
Plug in a second wifi adapter. Connect to a network with it using either the control center or nmcli (both cause the issue).
### Error Messages/Logs
_No response_
### Screenshots/Recordings
Contributor guide
Research direction
Start at the Control Center Wi-Fi module and reproduce the issue with two adapters, comparing its state with NetworkManager and `nmcli connection show` after connecting through the module and after restarting NetworkManager. Done means wlan0 and wlan1 report the correct connection and disconnection state, all device-specific connections are listed, and the module recovers after a NetworkManager restart.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- arch-linux
- Domain
- desktop, networking
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 48/100