mirror of
https://github.com/MatMoul/g810-led.git
synced 2024-12-23 17:26:11 +00:00
e5193b5985
Provide make targets and build configuration to create a shared object for other systems/applications to use to control keyboard LEDs without the need for instantiating the g810-led process. Provide make targets for installing library and development files into environments, such as the current system or package builders. Currently preserves precious behavior of building g810-led binary as statically linked. Provides an alternative build target of "bin-linked" which will create a dynamically linked variant. Signed-off-by: Kevin Pearson <pearson.kevin.m@gmail.com>
64 lines
2.0 KiB
Markdown
64 lines
2.0 KiB
Markdown
# Installation :</br>
|
|
|
|
## Build dependencies :</br>
|
|
* git
|
|
* g++
|
|
* make
|
|
|
|
## Dependencies :</br>
|
|
* hidapi or libusb
|
|
|
|
## hidapi vs libusb :</br>
|
|
hidapi is a newer implementation but needs more testing.</br>
|
|
hidapi is more responsive than libusb (~20ms vs ~150ms).</br>
|
|
hidapi seem not work on CentOS, writing on hidraw is not allowed.</br>
|
|
hidapi is recommended but if you encounter problem on your system, switch to libusb.</br>
|
|
|
|
|
|
## Installation by repos :</br>
|
|
ArchLinux (aur) :</br>
|
|
`yaourt -S g810-led-git` # with yaourt</br>
|
|
`pacaur -S g810-led-git` # with pacaur</br>
|
|
|
|
|
|
## Installation of dependencies :</br>
|
|
ArchLinux :</br>
|
|
`sudo pacman -S git gcc make hidapi` # for hidapi</br>
|
|
`sudo pacman -S git gcc make libusb` # for libusb</br>
|
|
Debian :</br>
|
|
`sudo apt-get install git g++ make libhidapi-dev` # for hidapi</br>
|
|
`sudo apt-get install git g++ make libusb-1.0-0-dev` # for libusb</br>
|
|
Fedora :</br>
|
|
`sudo dnf install git make gcc-c++ hidapi-devel` # for hidapi</br>
|
|
`sudo dnf install git make gcc-c++ libusbx-devel` # for libusb</br>
|
|
|
|
## Installation :</br>
|
|
`git clone https://github.com/MatMoul/g810-led.git`</br>
|
|
`cd g810-led`</br>
|
|
`make` # for hidapi</br>
|
|
`make LIB=libusb` # for libusb</br>
|
|
`sudo make install`</br>
|
|
`make install-lib` to install the libg810-led library.</br>
|
|
`make install-dev` to install the libg810-led library and headers for development.</br>
|
|
|
|
## Building the library :</br>
|
|
The library is built by default when running the `make` (default target "all").</br>
|
|
|
|
To specifically build the library as a standalone component: </br>
|
|
`make lib`</br>
|
|
|
|
## Update :</br>
|
|
Same as install, but your profile and reboot files are preserved.</br>
|
|
|
|
## Uninstall :</br>
|
|
`sudo make uninstall`</br>
|
|
|
|
## Boot profiles :</br>
|
|
If your system use systemd, g810-led has 2 systemd units (g810-led and g810-led-reboot).</br>
|
|
These 2 units set the keyboard profile on boot and reboot.</br>
|
|
Profiles are stored in /etc/g810-led :</br>
|
|
* /etc/g810-led/profile
|
|
* /etc/g810-led/reboot
|
|
|
|
Samples can be found in /etc/g810-led/samples.</br>
|