Open-Awesome
CategoriesAlternativesStacksSelf-HostedExplore
Open-Awesome

© 2026 Open-Awesome. Curated for the developer elite.

TermsPrivacyAboutGitHubRSS
  1. Home
  2. Rust
  3. system76-power

system76-power

GPL-3.0Rust

A utility for managing graphics modes and power profiles on Linux laptops and all-in-one PCs.

GitHubGitHub
639 stars78 forks0 contributors

What is system76-power?

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.

Target Audience

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.

Value Proposition

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.

Overview

Power profile management for Linux

Use Cases

Best For

  • Optimizing battery life on Linux laptops with NVIDIA switchable graphics by switching to Integrated graphics mode.
  • Maximizing graphical performance for gaming or GPU-intensive applications by switching to NVIDIA-only graphics mode.
  • Enabling PRIME render offloading to run specific applications on the dGPU while using the iGPU as the primary renderer (Hybrid mode).
  • Using external displays connected to dGPU ports on laptops, with automatic hotplug detection prompting mode switches.
  • Managing power profiles (Balanced, Performance, Battery) to adjust system behavior like disk sync intervals, laptop mode, and screen brightness.
  • Reducing GPU power consumption on idle for compatible NVIDIA hardware (Turing and newer) via runtime power management.

Not Ideal For

  • Desktop systems without switchable graphics support
  • Users needing instant graphics mode changes without reboots
  • Systems with non-NVIDIA GPUs or older NVIDIA cards lacking runtime power management
  • Developers using non-GNOME desktop environments where hotplug detection is unavailable

Pros & Cons

Pros

Unified Graphics Control

Centralizes multiple graphics modes (Integrated, NVIDIA, Hybrid, Compute) into a single utility, simplifying management for switchable graphics laptops as described in the README.

Power Profile Management

Offers Balanced, Performance, and Battery profiles to adjust system settings like disk sync intervals and screen brightness, optimizing for different usage scenarios.

Hotplug Detection Integration

Automatically detects displays connected to dGPU ports and prompts mode switches via a GNOME extension, enhancing user experience for external display setups.

Runtime Power Management

Supports GPU power management on compatible NVIDIA hardware (Turing and newer), reducing power consumption when idle, as verified through driver JSON files.

Cons

Reboot Requirement

Switching graphics modes requires a system reboot, which is inconvenient and disrupts workflow compared to more seamless solutions.

Hardware and Driver Dependencies

Limited to specific NVIDIA GPUs and driver versions (e.g., 435.17+ for PRIME offloading), making it unsuitable for diverse or older hardware setups.

Complex Hotplug Setup

Configuring hotplug detection involves manual steps like using coreboot-collector and understanding GPIO mappings, which can be technical and error-prone for non-experts.

Frequently Asked Questions

Quick Stats

Stars639
Forks78
Contributors0
Open Issues76
Last commit11 days ago
CreatedSince 2018

Tags

#power-management#hardware-control#nvidia#dbus#linux

Included in

Rust56.6k
Auto-fetched 18 hours ago

Related Projects

BatBat

A cat(1) clone with wings.

Stars59,853
Forks1,600
Last commit23 days ago
fdfd

A simple, fast and user-friendly alternative to 'find'

Stars43,855
Forks1,100
Last commit1 day ago
nushellnushell

A new type of shell

Stars40,071
Forks2,187
Last commit1 day ago
zoxidezoxide

A smarter cd command. Supports all major shells.

Stars38,203
Forks853
Last commit4 days ago
Community-curated · Updated weekly · 100% open source

Found a gem we're missing?

Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.

Submit a projectStar on GitHub