mirror of
https://github.com/NixOS/nixos-hardware
synced 2024-11-01 16:49:40 +01:00
45 lines
1.3 KiB
Nix
45 lines
1.3 KiB
Nix
|
{ pkgs, ... }:
|
||
|
|
||
|
{
|
||
|
hardware.fancontrol.enable = true;
|
||
|
hardware.fancontrol.config = ''
|
||
|
# Helios4 PWM Fan Control Configuration
|
||
|
# Temp source : /dev/thermal-cpu
|
||
|
INTERVAL=10
|
||
|
FCTEMPS=/dev/fan-j10/pwm1=/dev/thermal-cpu/temp1_input /dev/fan-j17/pwm1=/dev/thermal-cpu/temp1_input
|
||
|
MINTEMP=/dev/fan-j10/pwm1=40 /dev/fan-j17/pwm1=40
|
||
|
MAXTEMP=/dev/fan-j10/pwm1=80 /dev/fan-j17/pwm1=80
|
||
|
MINSTART=/dev/fan-j10/pwm1=20 /dev/fan-j17/pwm1=20
|
||
|
MINSTOP=/dev/fan-j10/pwm1=29 /dev/fan-j17/pwm1=29
|
||
|
MINPWM=0
|
||
|
'';
|
||
|
|
||
|
boot.kernelModules = [ "lm75" ];
|
||
|
|
||
|
services.udev.packages = [
|
||
|
# Fan control
|
||
|
(pkgs.callPackage (
|
||
|
{ stdenv, lib, coreutils }:
|
||
|
stdenv.mkDerivation {
|
||
|
name = "helios4-udev-fancontrol";
|
||
|
|
||
|
dontUnpack = true;
|
||
|
dontBuild = true;
|
||
|
|
||
|
installPhase = ''
|
||
|
mkdir -p "$out/etc/udev/rules.d/";
|
||
|
install -Dm644 "${./90-helios4-hwmon.rules}" \
|
||
|
"$out/etc/udev/rules.d/90-helios4-hwmon.rules"
|
||
|
substituteInPlace "$out/etc/udev/rules.d/90-helios4-hwmon.rules" \
|
||
|
--replace '/bin/ln' '${lib.getBin coreutils}/bin/ln'
|
||
|
'';
|
||
|
|
||
|
meta = with lib; {
|
||
|
description = "Udev rules for fancontrol for the Helios4";
|
||
|
platforms = platforms.linux;
|
||
|
};
|
||
|
}
|
||
|
) {})
|
||
|
];
|
||
|
}
|