A simple GUI for controlling RGB settings of the Acer-WMI kernel module via the acer-gkbbl-0 character device (4 zone RGB keyboards)
Visit JafarAkhondali's project page for information on the required kernel module
KDE Plasma user? Check out the corresponding plasma widget.
- Configure RGB settings of the Acer-WMI kernel module via the acer-gkbbl-0 character device
- Supports all available RGB modes (Static, Breath, Neon, Wave, Shifting and Zoom)
- Settings can be saved as profiles
- Tray icon for quick profile change (on supported systems)
- Last used settings can be automatically restored upon application start
- Animated preview for selected RGB mode
- Compatible Acer-WMI kernel module must be installed separately
- Compatibility depends on the specific laptop model and its compatibility with the kernel module
- The tray icon only works in desktop environments that are compatible with classic system tray
⚠ Make sure you have the acer-gkbbl-0 RGB device available before you proceed with the installation of this application, otherwise it will have no effect. Visit JafarAkhondali's project page for more information on the required kernel module.
RGB-Config-Acer-gkbbl-0 is written in Python3, using the wxPython framework. Python3 is usually provided by most Linux distributions, wxPython must often be installed separately.
For systems that use the apt package manager a .deb package is provided. Simply download the .deb file from the releases page and run the installation. In many systems .deb files can run directly from the file manager by (double) clicking.
Alternatively install the application from the command line:
sudo dpkg -i ./RGB_Config_acer-gkbbl-0_v<VERSION>_deb.deb
A Fedora specific .rpm package can be found on the releases page. Download the file that ends on _fedora.rpm. Most setups should allow the execution of .rpm files via the file manager.
Alternatively install the application from the command line:
sudo dnf install ./RGB_Config_acer-gkbbl-0_v<VERSION>_fedora.rpm
⚠ Under openSUSE the package must be installed from command line because the package is not signed.
A openSUSE Leap specific .rpm package can be found on the releases page. Download the file that ends on _openSUSE_Leap.rpm.
Install the application by running the following command from the command line:
sudo zypper install ./RGB_Config_acer-gkbbl-0_v<VERSION>_openSUSE_Leap.rpm
zypper will show a warning:
Package header is not signed!
Signature verification failed [6-File is unsigned]
Input I (ignore) to continue with the installation.
⚠ Under openSUSE the package must be installed from command line because the package is not signed.
A openSUSE Tumbleweed specific .rpm package can be found on the releases page. Download the file that ends on _openSUSE_TW.rpm.
Install the application by running the following command from the command line:
sudo zypper install ./RGB_Config_acer-gkbbl-0_v<VERSION>_openSUSE_TW.rpm
zypper will show a warning:
Package header is not signed!
Signature verification failed [6-File is unsigned]
Input I (ignore) to continue with the installation.
For Arch Linux based systems that use the pacman package manager a PKGBUILD is provided. Download the file that ends on _PKGBUILD.tar.gz from the releases page.
The installation will proceed via the command line:
Extract the archive
tar -xf RGB_Config_acer-gkbbl-0_v<VERSION>_PKGBUILD.tar.gz
Change into the newly extracted folder
cd RGB_Config_acer-gkbbl-0_v<VERSION>_PKGBUILD
Run makepkg with external dependencies and install the package via pacman
makepkg -si
After installation RGB Config (acer-gkbbl-0) should show up in your application launcher under both the Settings and Utils sections.
Alternatively run the application from the command line:
rgb_config_acer_gkbbl_0
Follow these steps in case none of the above installation methods work for you or you want to run the Python script directly without installation.
Download the RGB_Config_acer-gkbbl-0_<VERSION>.tar.gz file from the releases page and extract it somewhere on your hard drive.
The required dependencies can be installed via your distributions package manager.
Debian / Ubuntu / Linux Mint / Pop!_OS
sudo apt install python3-wxgtk4.0
Fedora
sudo dnf install python3-wxpython4
openSUSE Leap
sudo zypper install python3-wxPython
openSUSE Tumbleweed
sudo zypper install python310-wxPython
Arch Linux
sudo pacman -S python-wxpython
After that you should be able to start the application by running:
./rgb_config_acer_gkbbl_0.py
Or alternatively:
python3 ./rgb_config_acer_gkbbl_0.py
Display a tray icon in the notification area where to RGB-Config-Acer-gkbbl-0 can be hidden. The tray icon also provides quick access to saved profiles.
- Left click on the tray icon to hide or restore RGB-Config-Acer-gkbbl-0
- Right click to show the tray menu
- The tray icon only works in desktop environments that are compatible with classic system tray (it does not work on a stock Gnome 3 installation).
- The tray icon has been tested to work on the following desktop environments:
- KDE (X11), LXQT, LXDE, XFCE, MATE, Cinnamon, Gnome Flashback, Gnome3 Pop!_OS
Automatically hide application upton start. Intended for setups where the application is run on boot up (e.g. placed in your desktops auto start).
- Only activate this option when your system is compatible with the tray icon. Otherwise the application will be permanently hidden.
- Should the need arise, options can be turned off in the config file:
- ~/.config/rgb_config_acer_gkbbl_0/preferences.json
Hide the application to tray instead of closing it when the close button in the title bar is pressed.
Select between different styles for the tray icon.
Automatically apply the last used RGB settings when the application is started. See the "Profiles" section for more information regarding profiles.
Official Acer software only allows animation speeds between 0 and 9. The acer-gkbbl-0 character device actually accepts values between 0 and 255, which depending on your specific system may or may not have an effect. Since speed values above 9 are not officially supported they are hidden by default. The "Extend max speed" option extends the speed range from 0-9 to 0-255. Results may vary.
RGB settings can be saved as profiles. Simply configure your preferred settings and click on the Save as profile button. The application will ask for a profile name and store it in the profile directory.
Saved profiles are listed in the profile list on the right side of the application. Click on a profile and press the Load button to restore the profile settings. Loaded profiles are not automatically applied to the character device and must first be activated via the Apply button.
- Profiles that are selected via the tray icon are directly applied and must not be activated separately.
Select the profile you want to delete from the profile list and press the Delete button. The profile will be removed from the profile directory.
The [ACTIVE] profile is automatically generated whenever settings are written to the character device. The [ACTIVE] profile thus represents the last used settings and is automatically restored whenever the application is started.
The profiles that this application generates are compatible with the facer_rgb script that is provided by JafarAkhondali's acer-predator-turbo-and-rgb-keyboard-linux-module, with the exception of static mode for which RGB-Config-Acer-gkbbl-0 has implemented multiple colors per profile (one for each section of the keyboard). A static mode profile that was generated with RGB-Config-Acer-gkbbl-0 would only apply the color of the first section when run with facer_rgb.
In compatibility with facer_rgb, profiles are stored in:
~/.config/predator/saved profiles/
RGB-Config-Acer-gkbbl-0 saves user preferences in:
~/.config/rgb_config_acer_gkbbl_0/preferences.json
- The UI was designed with wxFormBuilder
- Open ui.fbp in wxFormBuilder to make changes to the UI
- All application logic is handled in rgb_config_acer_gkbbl_0.py, mainly in the AcerRGBGUI_Frame class
- The lib/ui.py file is automatically generated by wxFormBuilder and should not be edited manually
The "scripts" folder contains the build_linux.py script which generates the .zip, .tar.gz, .deb and .rpm files that are attached to the release page.
Also included are the rgb_config_acer_gkbbl_0 shell script (which is placed in /usr/bin/ when installed via the .deb/.rpm package) and the rgb_config_acer_gkbbl_0.desktop file (which gets installed under /usr/share/applications/).
The .deb/.rpm packages installs the actual application files to /usr/lib/rgb_config_acer_gkbbl_0/.
RGB-Config-Acer-gkbbl-0 has support for multiple languages. Available languages can be found in the assets/locale/ folder.
To update the translation files run the i18n_gen.py script in the scripts folder.
To add a new language, extend the languages list at the top of the i18n_gen.py script with the two letter language code you want to add and run the script. A new translation template will be generated at:
assets/locale/<LANGUAGE>/LC_MESSAGES/rgb_config_acer_gkbbl_0.po
This translation template can be loaded with a compatible software like Poedit.
Once saved in Poedit, the new language will show up in the Options menu of RGB-Config-Acer-gkbbl-0. Poedit automatically generates the compiled .mo language file that is used by the program code.
Libraries
- wxPython
- Python3
- Python3-polib
Tools
- wxFormBuilder
- Poedit
- rpmbuild
- dpkg-deb
Debian/Ubuntu/Mint
sudo apt install python3-wxgtk4.0 python3-polib rpm