At present there is a CLI version (alienfx) and a gtk GUI version (alienfx-gtk). And has been tested on Debian/Ubuntu/Kali/Mint, Fedora and Arch Linux.
AlienFX is written in python and has been tested on
python 3.9. It requires
the following python packages to run:
On Arch Linux:
$ sudo pacman -S python-pyusb python-setuptools python-gobject python-cairo python-future
On other distributions you need to install
pkg_resources using pip:
You can install
pkg_resourcesusing the following command:
$ pip install setuptools
pyusb >= 1.0.0b1.
Note that your distribution may only provide
the pre-1.0version of
this is the case, you can install
pyusb 1.0using the
$ pip install --pre pyusb
You can install
futureusing the following command:
$ pip install future
You can install all of these by running the command:
$ pip install -r requirements.txt
And then install following packages using package manager:
$ sudo apt install libcairo2-dev python-gi python-gi-cairo
$ sudo dnf install cairo-devel python3-gobject cairo-gobject
On Arch Linux you can install package from AUR: alienfx
For manual installation of AlienFX, use the following commands:
$ sudo python3 setup.py install
$ sudo python3 setup.py install_data
Note that the second invocation is required to ensure that icon files etc. are
The installation includes a udev rules file that allows AlienFX to access the
AlienFX USB controller on your computer without needing root permissions. If
you run the install commands without sudo, then the udev rules file will not
Lighting configurations are stored in "theme files", which are simple json
files stored in
XDG_CONFIG_HOME is not set, then
~/.config/alienfx is used. Both the CLI and GUI programs use these theme
files, and the GUI program allows you to create new themes as well.
See the man page of alienfx
$ man alienfx for the cli options supported.
If you run the CLI-version of alienfx on a currently unsupported device, the program will ask you if you wish to perform a zonescan.
Please consider using this feature to determine the correct zone-codes for your device.