fix waybar hwmon

This commit is contained in:
mjallen18
2025-11-20 17:42:50 -06:00
parent 585689db43
commit 2c4cc7c6b7
4 changed files with 38 additions and 16 deletions

View File

@@ -336,7 +336,8 @@ in
};
temperature = {
hwmon-path = cfg.temperature.cpu.hwmonPath;
hwmon-path-abs = cfg.temperature.cpu.hwmonPath;
input-filename = cfg.temperature.cpu.hwmonFile;
critical-threshold = 110;
format-critical = "{temperatureC}°C ";
format = "{temperatureC}°C {icon}";
@@ -546,7 +547,8 @@ in
(mkIf cfg.temperature.gpu.enable {
"temperature#gpu" = {
hwmon-path = cfg.temperature.gpu.hwmonPath;
hwmon-path-abs = cfg.temperature.gpu.hwmonPath;
input-filename = cfg.temperature.gpu.hwmonFile;
critical-threshold = 110;
format-critical = "{temperatureC}°C ";
format = "{temperatureC}°C {icon}";

View File

@@ -127,9 +127,14 @@ in
};
hwmonPath = mkOption {
type = str;
default = "/sys/class/hwmon/hwmon4/temp1_input";
default = "/sys/devices/pci0000:00/0000:00:18.3/hwmon";
description = "CPU temperature hwmon path.";
};
hwmonFile = mkOption {
type = str;
default = "temp1_input";
description = "CPU temperature hwmon file.";
};
};
};
default = { };
@@ -145,9 +150,14 @@ in
};
hwmonPath = mkOption {
type = str;
default = "/sys/class/hwmon/hwmon0/temp1_input";
default = "/sys/devices/pci0000:00/0000:00:01.1/0000:01:00.0/0000:02:00.0/0000:03:00.0/hwmon";
description = "GPU temperature hwmon path.";
};
hwmonFile = mkOption {
type = str;
default = "temp1_input";
description = "GPU temperature hwmon file.";
};
};
};
default = { };

View File

@@ -25,7 +25,7 @@ in
config = lib.mkIf cfg.enable {
boot = {
kernelModules = [ "nct6775" ];
kernelModules = [ "nct6775" "k10temp" ];
kernelParams = [ (if cfg.enable then "amdgpu.ppfeaturemask=0xffffffff" else null) ];
};
@@ -61,17 +61,26 @@ in
};
# nixpkg is broken so need to manually define
systemd.services.lactd = lib.mkIf cfg.lact.enable {
description = "AMDGPU Control Daemon";
path = with pkgs; [
bash
lact
];
script = ''
lact daemon
'';
wantedBy = [ "multi-user.target" ];
after = [ "multi-user.target" ];
systemd.services = {
load-k10temp = {
description = "Load k10temp manually cause it wont otherwise";
script = ''
${pkgs.kmod}/bin/modprobe k10temp
'';
wantedBy = [ "multi-user.target" ];
};
lactd = lib.mkIf cfg.lact.enable {
description = "AMDGPU Control Daemon";
path = with pkgs; [
bash
lact
];
script = ''
lact daemon
'';
wantedBy = [ "multi-user.target" ];
after = [ "multi-user.target" ];
};
};
# Configure environment

View File

@@ -11,6 +11,7 @@ in
"kvm-amd"
"i2c-dev"
"ddcci_backlight"
"k10temp"
];
extraModulePackages = [ config.boot.kernelPackages.ddcci-driver ];
loader = {