OpenRGB
From NixOS Wiki
Installation
Add to /etc/nixos/configuration.nix
:
services.hardware.openrgb.enable = true;
No need to add OpenRGB to systemPackages.
Plugins
Currently there is no functioning option to install individual plugins, but there is a way to install all of them.
Add this systemPackage to /etc/nixos/configuration.nix
:
environment.systemPackages = with pkgs; [ openrgb-with-all-plugins ];
Turn off RGB
If you'd like to turn off all RGB devices supported by OpenRGB, consider something like:
{ pkgs, lib, ... }:
let
no-rgb = pkgs.writeScriptBin "no-rgb" ''
#!/bin/sh
NUM_DEVICES=$(${pkgs.openrgb}/bin/openrgb --noautoconnect --list-devices | grep -E '^[0-9]+: ' | wc -l)
for i in $(seq 0 $(($NUM_DEVICES - 1))); do
${pkgs.openrgb}/bin/openrgb --noautoconnect --device $i --mode static --color 000000
done
'';
in {
config = {
services.udev.packages = [ pkgs.openrgb ];
boot.kernelModules = [ "i2c-dev" ];
hardware.i2c.enable = true;
systemd.services.no-rgb = {
description = "no-rgb";
serviceConfig = {
ExecStart = "${no-rgb}/bin/no-rgb";
Type = "oneshot";
};
wantedBy = [ "multi-user.target" ];
};
};
}