AvengeMedia / AvengeMedia/DankMaterialShell

Add a widget for managing EnvyControl profiles

Open
#639 0 comments 0 reactions 0 assignees View on GitHub
feature request
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

Open the contributing 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

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.