Back to browse
GitHub Repository

A Rust port of switcheroo-control

2 starsRust

Switcheroo-control-rs, a Linux hybrid graphics manager in Rust

by LuMarans30·Jun 14, 2026·2 points·0 comments

AI Analysis

●●SolidCozyNiche Gem

Rust rewrite of switcheroo-control when the Python original already works fine.

Strengths
  • Full D-Bus interface compatibility with original Python daemon.
  • Clean workspace split into daemon, CLI, and common crates.
  • Uses mature Rust crates like udev, nix, zbus for low-level access.
Weaknesses
  • Author admits original tool works fine, no problem being solved.
  • Zero forks or stars suggests limited community interest so far.
Target Audience

Linux developers, Rust learners, system programmers

Similar To

switcheroo-control · prime-select · optimus-manager

Post Description

Hi HN,

This is a working WIP Rust port of switcheroo-control, a Linux hybrid graphics manager. It provides a daemon and a CLI to list GPUs and launch applications on the discrete GPU (e.g. switcherooctl launch --gpu 1 glmark2).

The original tool works fine so I didn't start this project to solve any particular problems. I mostly built it because I wanted to see how a system-level Linux tool like this would look in Rust. It was a fun learning exercise in working with udev, ioctl calls and zbus for D-Bus communication. I expected it to be a struggle, but I was pleasantly surprised by how painless it actually was. I didn’t expect to find such mature abstractions for low-level Linux components.

Also, since it implements the same D-Bus interface (net.hadess.SwitcherooControl) as the original project, the components are fully interoperable. This means the Rust daemon works with the original Python client and the Rust client works with the original C daemon.

I hope you like it!

Similar Projects

Security●●Solid

Minimal Linux sandboxes to manage AI-Generated Code with ease

Embedded Rust sandbox with seccomp and DNS rebinding protection, no VM required.

Big BrainSolve My ProblemShip It
bugthesystem
101mo ago
Infrastructure●●●Banger

Oxmgr – a lightweight PM2 alternative written in Rust

PM2 replacement in Rust: 42x faster crash recovery, 21x lower memory, reproducible benchmarks against live competitor.

WizardryShip ItSolve My Problem
vladimir-urik
403mo ago
DataMid

Grammar of Graphics CLI tool made in Rust

Grammar of graphics in CLI form when Vega-Lite and ggplot2 exist.

Niche Gem
williamcotton
101mo ago