Skip to main content
Join the official 2020 Python Developers SurveyStart the survey!

Control Razer devices from the command line

Project description

razer-cli

All Contributors

Command line interface for controlling Razer devices on Linux

About

With this command line interface you can configure your Razer peripherals, such as keyboard and mouse, set their colors and effects, etc.

The most simple use case (for which this tool was originally developed) is to use it in symbiosis with pywal. Then this tool will set your Razer colors to Pywal's colors. See below for more information.

Installation

pip install razer-cli

Usage

$ razer-cli -h
usage: razer-cli [-h] [-e EFFECT] [-v] [-c COLOR [COLOR ...]] [-l] [-ll] [-a]
                 [-d DEVICE [DEVICE ...]] [--dpi DPI] [-b BRIGHTNESS]

optional arguments:
  -h, --help            show this help message and exit
  -e EFFECT, --effect EFFECT
                        set effect
  -v, --verbose         increase output verbosity
  -c COLOR [COLOR ...], --color COLOR [COLOR ...]
                        choose color (default: X color1), use one argument for
                        hex, or three for base10 rgb
  -l, --list_devices    list available devices and their supported effects
  -ll, --list_devices_long
                        list available devices and all their capabilities
  -a, --automatic       try to find colors and set them to all devices without
                        user arguments, uses X or pywal colors
  -d DEVICE [DEVICE ...], --device DEVICE [DEVICE ...]
                        only affect these devices, same name as output of -l
  --dpi DPI             set DPI of device
  -b BRIGHTNESS, --brightness BRIGHTNESS
                        set brightness of device

This might be out of date, just run it with -h yourself to see the newest options.

Example usage with Pywal

To get your mouse and keyboard to use Pywal's colors, simply start razer-cli with the -a flag, after having executed wal: razer-cli -a
Example in action here.

Other examples

$ razer-cli -e ripple -c ff0000
$ razer-cli -e static -c ffffff

You can also leave out the color or the effect:
$ razer-cli -e breath_single
$ razer-cli -c 55ff99

Currently this will imply the -a flag being used for the missing setting. I plan on also having the option to reuse the current color/effect, if the argument is missing, in the future.

Effects

Effects are listed in razer_cli/settings.py. The effects that are supported per device can be listed with razer-cli -l[l]. Some of the built-in effects or not implemented yet. If such an effect is chosen, a notice will be logged. There are also custom effects that do not exist normally, such as multicolor, which is described in the same file.

Here's a showcase of that effect:

Other symbiosis tools

Dependencies

  • openrazer
    • :warning: Do not install openrazer from pip, which is something else.
    • Instead install it from one of the various package managers of your distribution.
  • xrdb
    • Also available on most distros.

Disclaimer

Not all devices have been tested, but basic effects should work everywhere. Some guesswork is being done as to what capabilities are supported on specific devices. If you need more advanced configuration, consider using the GUIs Polychromatic, RazerGenie or RazerCommander which have specific implementations for most devices.

Feel free to open feature request issues or PRs.

Contributors ✨

Thanks goes to these wonderful people (emoji key):


Ansis

💻

Kainoa Kanter

🤔

This project follows the all-contributors specification. Contributions of any kind welcome!

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Files for razer-cli, version 1.3.2
Filename, size File type Python version Upload date Hashes
Filename, size razer_cli-1.3.2-py3-none-any.whl (21.1 kB) File type Wheel Python version py3 Upload date Hashes View
Filename, size razer-cli-1.3.2.tar.gz (10.4 kB) File type Source Python version None Upload date Hashes View

Supported by

Pingdom Pingdom Monitoring Google Google Object Storage and Download Analytics Sentry Sentry Error logging AWS AWS Cloud computing DataDog DataDog Monitoring Fastly Fastly CDN DigiCert DigiCert EV certificate StatusPage StatusPage Status page