A simple GPU manager for Linux.
Choose which GPU an application or game should run on.
- Automatic GPU discovery using
/sys/class/drm,lspci, and/dev/dri/renderD*. - Renderer inspection via
glxinfo -B, with Vulkan fallback support. - Application indexing from standard
.desktoplocations:
/usr/share/applications
/usr/local/share/applications
~/.local/share/applications
/var/lib/flatpak/exports/share/applications
~/.local/share/flatpak/exports/share/applications
- Searchable interface with per-application GPU selection.
- User-level overrides that never modify system files.
Kaede integrates with several Linux application ecosystems:
| Target | Method |
|---|---|
| Native applications | Creates .desktop overrides in ~/.local/share/applications |
| Flatpak | Uses flatpak override --user to inject environment variables |
| Steam (Proton) | Updates LaunchOptions in localconfig.vdf |
| Heroic Launcher | Edits environment configuration inside GamesConfig |
Kaede configures environment variables used by common Linux GPU stacks.
Mesa / Open drivers
DRI_PRIME
MESA_VK_DEVICE_SELECT
MESA_VK_DEVICE_SELECT_FORCE_DEFAULT_DEVICE
Steam runtime
PRESSURE_VESSEL_IMPORT_VARS
NVIDIA Prime Render Offload
__NV_PRIME_RENDER_OFFLOAD=1
__GLX_VENDOR_LIBRARY_NAME=nvidia
__VK_LAYER_NV_optimus=NVIDIA_only
git clone https://github.com/SterTheStar/kaede.git
cd kaede
cargo build --release
./target/release/kaedeConfiguration is stored in:
~/.config/kaede/config.toml
Released under the GNU General Public License v3.0.
See LICENSE for details.
Developed by Esther

