61 lines
1.5 KiB
Nix
61 lines
1.5 KiB
Nix
{
|
|
config,
|
|
lib,
|
|
...
|
|
}: {
|
|
options = {
|
|
crony.pc-services.enable = lib.mkEnableOption "Enable and setup pc related service for gpu/fan/rgb management.";
|
|
};
|
|
|
|
config = lib.mkIf config.crony.pc-services.enable {
|
|
# Enable coolercontrol to setup fancurves
|
|
programs.coolercontrol = {
|
|
enable = true;
|
|
};
|
|
|
|
# Setup gpu fan curves and light undervolt
|
|
services.lact = {
|
|
enable = true;
|
|
};
|
|
|
|
# environment.etc."lact/config.yaml".text = ''
|
|
# apply_settings_timer: 5
|
|
# auto_switch_profiles: false
|
|
# current_profile: null
|
|
# daemon:
|
|
# admin_group: wheel
|
|
# disable_clocks_cleanup: false
|
|
# log_level: info
|
|
# gpus:
|
|
# 10DE:2D04-1771:205E-0000:01:00.0:
|
|
# fan_control_enabled: true
|
|
# fan_control_settings:
|
|
# change_threshold: 2
|
|
# curve:
|
|
# 40: 0.3
|
|
# 50: 0.5
|
|
# 54: 0.7
|
|
# 57: 0.85
|
|
# 60: 1.0
|
|
# interval_ms: 500
|
|
# mode: curve
|
|
# spindown_delay_ms: 5000
|
|
# static_speed: 0.5
|
|
# temperature_key: edge
|
|
# gpu_clock_offsets:
|
|
# 0: 300
|
|
# max_core_clock: 2900
|
|
# min_core_clock: 180
|
|
# version: 5
|
|
# '';
|
|
|
|
# Setup display brightness changing using ddcutil
|
|
hardware.i2c.enable = true;
|
|
|
|
# Setup rgb control
|
|
services.hardware.openrgb.enable = true;
|
|
|
|
# Needed modules to have fan control
|
|
boot.kernelModules = ["coretemp" "nct6775"];
|
|
};
|
|
}
|