LinuxでもLEDLightningしてPCを光らす　その2[GKraken]

# はじめに
以前、[OpenRGBを利用したUbuntuでLEDLightningする方法](https://qiita.com/yakitatata/items/786e8f6be1ffd2cc681a#openrgb%E3%81%AE%E3%82%A4%E3%83%B3%E3%82%B9%E3%83%88%E3%83%BC%E3%83%AB)に触れました。
今回はその続編として、簡易水冷CPUクーラーのNZXT KRAKENを制御する方法を書いていきたいと思います。

#GKraken
pythonで作成されたオープンソースでGKrakenというものがあります。
そいつでNZXT KRAKENのRMP制御やLED制御ができます。

https://gitlab.com/leinardi/gkraken


# 環境
OS : Ubuntu 20.10
Kernel : 5.8.0-49-generic
Python 3.8.6 
使用する製品：NZXT KRAKEN RL-KRZ73-01

# GKrakenのインストール
以下、インストール方法です。
※当記事はちょろっと整理しているだけで、全部公式に書いてます。

自分はアクティビティに出したかったのと、ソースで遊びたかったので②の方法で入れました。
※①と③のremote使う方はアクティビティに出ない


## 入れ方① flatpakでFlathubから入れる

```bash:flatpakのインストール（入れてない方のみ）
sudo apt install flatpak
sudo apt install gnome-software-plugin-flatpak
flatpak remote-add --if-not-exists flathub https://flathub.org/repo/flathub.flatpakrepo
```

```bash:
# gkrakenのインストール
flatpak --user remote-add --if-not-exists flathub https://flathub.org/repo/flathub.flatpakrepo
flatpak --user install flathub com.leinardi.gkraken
# 起動
flatpak run com.leinardi.gkraken
```

## 入れ方② ソースコードから入れる

```bash:ビルドと実行に必要なものを入れる
sudo apt install pkg-config
sudo apt install libgirepository1.0-dev
sudo apt install meson
# sudo apt install ninja-build #mesonで入る
sudo apt install appstream-util
sudo apt install libusb-1.0-0-dev
sudo apt install libudev-dev
# pythonとpipはpython3.6以上が入っていなければ。
# sudo apt install python3
# sudo apt install python3-pip
```


```bash:インストール
git clone --recurse-submodules -j4 https://gitlab.com/leinardi/gkraken.git
cd gkraken
git checkout release
sudo -H pip3 install -r requirements.txt
meson . build --prefix /usr
ninja -v -C build
sudo ninja -v -C build install
```

```bash:更新
cd gkraken
git fetch
git checkout release
git reset --hard origin/release
git submodule init
git submodule update
sudo -H pip3 install -r requirements.txt
meson . build --prefix /usr
ninja -v -C build
sudo ninja -v -C build install
```

```bash:rule適用
gkraken --add-udev-rule
````

```bash:起動
gkraken
```
アクティビティからでも起動可能
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/238561/ae9c10cf-cc5c-e9f0-b591-2023e805aced.png)



## 入れ方③ ソースからFlatpakでビルドして入れる

```bash:ビルドに必要なもの
sudo apt install appstream-util
sudo apt install flatpak-builder
```

```bash:
flatpak --user remote-add --if-not-exists flathub https://flathub.org/repo/flathub.flatpakrepo
git clone --recurse-submodules -j4 https://gitlab.com/leinardi/gkraken.git
cd gkraken
./build.sh --flatpak-local --flatpak-install
# もしくは
# ./build.sh --flatpak-remote --flatpak-install
# 起動
flatpak run com.leinardi.gkraken
```
--flatpak-localの場合は②の方法でビルドしておかないと必要なファイルがなくて怒られるみたいです



# 実行イメージ

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/238561/23bb4a88-13ae-313e-ad37-55ac5760d4a0.png)

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/238561/b2b858b4-8209-c088-d66a-fe040bef60e8.png)

残念ながら現時点（2021/4/14） では私の使用している製品はLED制御はまだサポートされていませんでした。
これは、使用ライブラリの[liquidctl](https://github.com/liquidctl/liquidctl/blob/master/docs/kraken-x3-z3-guide.md
)に依存しています。
公式ページに以下のようにありました。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/238561/2f65ad9f-c612-7383-9d5d-37d943de3411.png)
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/238561/d36da75d-3d06-75fa-37b2-50bfa7eeb565.png)


サポートされるのが楽しみです。

# memo
liquidctl コマンド

```bash:
liquidctl initialize
liquidctl status
liquidctl --match kraken set ring color fading 350017 ff2608
```