A utility for managing graphics modes and power profiles on Linux laptops and all-in-one PCs.
system76-power is a Linux utility that provides centralized control over graphics switching and power management settings. It is designed to optimize performance and battery life on systems with switchable graphics, particularly those with NVIDIA GPUs, by simplifying complex hardware interactions.
Linux users, particularly on laptops and all-in-one PCs with switchable graphics (especially NVIDIA GPUs), who need granular control over graphics modes and power profiles to balance performance and battery life.
Developers choose system76-power for its unified, user-friendly interface that consolidates graphics mode switching (Integrated, NVIDIA, Hybrid, Compute) and power profile management (Balanced, Performance, Battery) into a single utility, with features like hotplug detection and runtime power management for modern NVIDIA hardware.
Power profile management for Linux
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.
Centralizes multiple graphics modes (Integrated, NVIDIA, Hybrid, Compute) into a single utility, simplifying management for switchable graphics laptops as described in the README.
Offers Balanced, Performance, and Battery profiles to adjust system settings like disk sync intervals and screen brightness, optimizing for different usage scenarios.
Automatically detects displays connected to dGPU ports and prompts mode switches via a GNOME extension, enhancing user experience for external display setups.
Supports GPU power management on compatible NVIDIA hardware (Turing and newer), reducing power consumption when idle, as verified through driver JSON files.
Switching graphics modes requires a system reboot, which is inconvenient and disrupts workflow compared to more seamless solutions.
Limited to specific NVIDIA GPUs and driver versions (e.g., 435.17+ for PRIME offloading), making it unsuitable for diverse or older hardware setups.
Configuring hotplug detection involves manual steps like using coreboot-collector and understanding GPIO mappings, which can be technical and error-prone for non-experts.