Compatibility wrapper that provides a prime-select interface using
envycontrol for the TUXEDO Control Center.
This project is an initial scratch implementation. It currently works in basic scenarios but has not been thoroughly tested yet.
Expect rough edges, missing checks, and potential bugs. The code and behavior may change significantly as the project evolves.
The intention of this project was to enable the GPU switching options in
the TUXEDO Control Center tray icon on Arch-based distributions.
Since the Control Center expects Ubuntu's prime-select from
nvidia-prime, these options normally do not appear on distributions
that do not ship it.
This wrapper provides a compatible prime-select command that
internally uses envycontrol.
- https://github.com/canonical/nvidia-prime
- https://github.com/bayasdev/envycontrol
- https://github.com/tuxedocomputers/tuxedo-control-center
The wrapper exposes the prime-select CLI and forwards commands to envycontrol.
prime-select command |
envycontrol equivalent |
|---|---|
intel |
envycontrol --switch integrated |
nvidia |
envycontrol --switch nvidia |
on-demand |
envycontrol --switch hybrid |
query |
envycontrol --query |
Additionally the file
/var/lib/ubuntu-drivers-common/requires_offloading
must exist so the TUXEDO Control Center detects offloading support.
- NVIDIA drivers
- envycontrol
- TUXEDO Control Center
Install the wrapper:
sudo install -m 755 prime-select /usr/local/bin/prime-selectCreate the offloading marker:
sudo mkdir -p /var/lib/ubuntu-drivers-common
sudo touch /var/lib/ubuntu-drivers-common/requires_offloadingQuery mode:
prime-select querySwitch GPU:
sudo prime-select intel
sudo prime-select nvidia
sudo prime-select on-demandInternally these commands are translated to envycontrol.