Home

Awesome

Optimus Manager Qt logo Optimus Manager Qt

GitHub (pre-)release Crowdin

Optimus Manager Qt is an interface for Optimus Manager that allows to configure and switch GPUs on Optimus laptops using the tray menu.

Note: Please send all non-interface related issues to Optimus Manager repository.

Content

Screenshots

<p align="center"> <img src="https://raw.githubusercontent.com/Shatur95/optimus-manager-qt/master/screenshots/tray.png" alt="Tray screenshot"/> <img src="https://raw.githubusercontent.com/Shatur95/optimus-manager-qt/master/screenshots/tray-menu.png" alt="Tray menu screenshot"/> </p> <p align="center"> <img src="https://raw.githubusercontent.com/Shatur95/optimus-manager-qt/master/screenshots/settings-general.png" width="392px" height="300px" alt="General settings screenshot"/> <img src="https://raw.githubusercontent.com/Shatur95/optimus-manager-qt/master/screenshots/settings-optimus.png" width="392px" height="300px" alt="Optimus settings screenshot"/> </p>

Features

Third-party

Libraries

This project uses SingleApplication (prevents launch of multiple application instances), which will be downloaded automatically at configure time using the built-in CMake FetchContent module.

Icons

circle-flags icons are used for flags.

Masalla icon theme is bundled to provide fallback icons.

Installation

Arch Linux and derivatives

You can install optimus-manager-qt or optimus-manager-qt-git from AUR.

Note: If you are using Plasma, it is recommended to replace in the PKGBUILD _plasma=false with _plasma=true to use additional KDE API features (this also adds additional dependencies).

Manual building

You can build Optimus Manager Qt by using the following commands:

mkdir build
cd build
cmake -D CMAKE_BUILD_TYPE=Release ..
cmake --build .

If you want to build with extended Plasma support you need to define WITH_PLASMA (the same as _plasma=true in the PKGBUILD):

mkdir build
cd build
cmake -D CMAKE_BUILD_TYPE=Release -D WITH_PLASMA=ON ..
cmake --build .

You will then get a binary named optimus-manager-qt.

Localization

To help with localization you can use Crowdin or translate files in data/translations with Qt Linguist directly. To add a new language, write me on the Crowdin project page or copy data/translations/optimus-manager.ts to data/translations/optimus-manager_<ISO 639-1 language code>_<ISO 3166-1 country code>.ts, translate it and send a pull request.