Smart NVIDIA Driver Manager & System Monitor for Linux
Features • Installation • Building • Contributing • License
ro-Control is a native KDE Plasma desktop application built with C++20 and Qt6/QML that simplifies NVIDIA GPU driver management and system monitoring on Linux. It provides a modern, Plasma-native interface for installing, updating, and monitoring graphics drivers — with full PolicyKit integration for secure privilege escalation.
- One-click install — NVIDIA driver setup via RPM Fusion (
akmod-nvidia) - Driver update — Detect and apply newer driver versions
- Clean removal — Remove old driver artifacts to prevent conflicts
- Secure Boot — Detection and warnings for unsigned kernel modules
- Real-time GPU temperature, load, and VRAM usage
- CPU load and temperature tracking
- RAM usage monitoring
- Color-coded progress indicators
- Wayland support — Automatic
nvidia-drm.modeset=1GRUB configuration - Hybrid graphics — Switch between NVIDIA, Intel, and On-Demand modes
- PolicyKit integration — Secure privilege escalation without running as root
- Runtime locale loading with Qt translations (
.ts/.qm) - English source strings with Turkish translation included
- Extensible translation workflow for additional languages
ro-control helpfor usagero-control versionfor application versionro-control statusfor concise system and driver statero-control diagnostics --jsonfor machine-readable diagnosticsro-control driver install|remove|update|deep-cleanfor scripted driver management- Installed
man ro-controlpage and Bash/Zsh/Fish shell completions
Preview assets are available under docs/screenshots/.
Additional PNG screenshots should be added before wider store distribution.
Download the latest .rpm from Releases:
sudo dnf install ./ro-control-*.rpmSee docs/BUILDING.md for full instructions.
ro-control help
ro-control version
ro-control status
ro-control diagnostics --json
ro-control driver install --proprietary --accept-license
ro-control driver updateQuick start:
# Install dependencies
sudo dnf install cmake extra-cmake-modules gcc-c++ \
qt6-qtbase-devel \
qt6-qtdeclarative-devel \
qt6-qttools-devel \
qt6-qtwayland-devel \
kf6-qqc2-desktop-style \
polkit-devel
# Clone and build
git clone https://github.com/Project-Ro-ASD/ro-Control.git
cd ro-Control
mkdir build && cd build
cmake .. -DCMAKE_BUILD_TYPE=Release
make -j$(nproc)
# Install
sudo make installro-Control/
├── src/
│ ├── backend/ # C++ business logic
│ │ ├── nvidia/ # Driver detection, install, update
│ │ ├── monitor/ # GPU/CPU/RAM statistics
│ │ └── system/ # Polkit, DNF, command runner
│ ├── qml/ # Qt Quick UI
│ │ ├── pages/ # Main application pages
│ │ └── components/ # Reusable UI components
│ └── main.cpp
├── data/ # Icons, .desktop, PolicyKit, AppStream
├── packaging/rpm/ # RPM packaging
├── docs/ # Architecture and build docs
├── tests/ # Unit tests
└── CMakeLists.txt
Contributions are welcome! Please read CONTRIBUTING.md before submitting a pull request. For release flow details, see docs/RELEASE.md. For localization scaffolding, see i18n/README.md.
Quick contribution flow:
git checkout dev
git checkout -b feature/your-feature-name
# ... make your changes ...
git commit -m "feat: describe your change"
git push origin feature/your-feature-name
# Open a Pull Request → dev| Component | Minimum Version |
|---|---|
| Qt | 6.6+ |
| CMake | 3.22+ |
| GCC | 13+ (C++20) |
| GPU | NVIDIA (any) |
This project is licensed under the GNU General Public License v3.0.