- Replace chip-outline icon with a GPU card shape (PCIe card body,
two cooling fans, gold contact fingers) — fixes color stripping
introduced by Qt 6.11 + KDE Plasma 6.6 tray icon colorization
- Active GPU indicator: yellow-tinted fan disc + bright ring on the
active side in Hybrid mode (replaces the invisible 2px hub dot)
- dGPU process list now scans /proc/<pid>/fd for open NVIDIA devices
instead of nvidia-smi --query-compute-apps, so graphics/rendering
processes (Lutris, games, Vulkan/OpenGL apps) are included
- "Show dGPU processes" menu item is now hidden unless the dGPU is
actually active (was shown whenever mode == hybrid)
- Menu labels changed from AMD/NVIDIA to generic iGPU/dGPU
- Popup dialogs now inherit the tray icon via QApplication.setWindowIcon
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
In hybrid mode, the tray icon chip body now fills red (iGPU active) or
green (dGPU active) based on whether any process has /dev/nvidia0 open,
polled every 5s. Uses fuser instead of runtime_status because
nvidia-drm.modeset=1 keeps the PCI device active regardless of user-space
usage. Also adds a "Show dGPU processes" menu item (nvidia-smi, hybrid
mode only).
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
PyQt6 system tray app for switching between Hybrid and NVIDIA-only
GPU modes via lenovolegionlinux (legion_cli). Includes polkit policy
for passwordless switching, KDE autostart entry, and install script.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>