AvengeMedia / AvengeMedia/DankMaterialShell
Add a widget for managing EnvyControl profiles
- Dominant language
- QML
- Stars
- 8.1k
- Forks
- 515
- Avg merge
- 1d 8h
- Merged PRs (30d)
- 102
Description
## Feature Description
Add a widget for managing EnvyControl profiles (NVIDIA / Hybrid / Integrated) directly from the interface. The widget should display the currently active mode and allow users to switch GPU configurations without using the terminal.
## Use Case
Many laptop users with hybrid graphics (Intel + NVIDIA) rely on EnvyControl to switch between “integrated”, “hybrid”, and “nvidia” modes.
## Compositor
Is this feature specific to one compositor?
- [X] All compositors
- [ ] niri
- [ ] Hyprland
- [ ] dwl (MangoWC)
- [ ] sway
## Proposed Solution
Implement an EnvyControl Widget that:
Displays the currently active GPU profile (via icon or text);
Allows switching between “integrated / hybrid / nvidia” using buttons or a dropdown;
Executes sudo envycontrol -s in the background with a visual feedback message (e.g., “Switching to NVIDIA mode…”);
Optionally shows a warning if a reboot is required after switching.
## Alternatives/Existing Solutions
Using envycontrol manually via terminal commands (sudo envycontrol -s hybrid, etc.);
https://github.com/bayasdev/envycontrol?tab=readme-ov-file#-guis
[EnvyControl applet](https://cinnamon-spices.linuxmint.com/applets/view/414)
Contributor guide
Research direction
Start by reviewing the EnvyControl README linked in the issue and its documented profile commands, then inspect the repository's existing widget patterns and command-execution entry points. Done means the interface shows the active profile, offers integrated, hybrid, and nvidia switching with feedback, and handles the possible reboot requirement.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- linux
- Domain
- desktop
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100