diff options
Diffstat (limited to 'os/core/drivers.nix')
| -rw-r--r-- | os/core/drivers.nix | 75 |
1 files changed, 43 insertions, 32 deletions
diff --git a/os/core/drivers.nix b/os/core/drivers.nix index 3bb2291..b674c9a 100644 --- a/os/core/drivers.nix +++ b/os/core/drivers.nix @@ -1,4 +1,10 @@ -{ config, lib, pkgs, ... }: +{ + config, + lib, + pkgs, + inputs, + ... +}: let cfg = config.os.core.drivers; in @@ -7,41 +13,46 @@ in enable = lib.mkEnableOption "enables hardware drivers"; amdgpu.enable = lib.mkEnableOption "AMD specific drivers and microcode"; stability = lib.mkOption { - type = lib.types.enum [ "stable" "unstable" ]; + type = lib.types.enum [ + "stable" + "unstable" + ]; default = "stable"; }; }; - config = lib.mkIf cfg.enable (lib.mkMerge [ - { - programs.coolercontrol.enable = true; - services.lact.enable = true; - services.smartd.enable = true; - hardware.sensor.iio.enable = true; - hardware.enableAllFirmware = true; - hardware.cpu.amd.updateMicrocode = true; - hardware.graphics = { - enable = true; - enable32Bit = true; - extraPackages = with pkgs; [ - rocmPackages.clr.icd - ]; - }; - environment.systemPackages = [ pkgs.rivalcfg ]; - } + config = lib.mkIf cfg.enable ( + lib.mkMerge [ + { + programs.coolercontrol.enable = true; + services.lact.enable = true; + services.smartd.enable = true; + hardware.sensor.iio.enable = true; + hardware.enableAllFirmware = true; + hardware.cpu.amd.updateMicrocode = true; + hardware.graphics = { + enable = true; + enable32Bit = true; + extraPackages = with pkgs; [ + rocmPackages.clr.icd + ]; + }; + environment.systemPackages = [ pkgs.rivalcfg ]; + } - (lib.mkIf cfg.amdgpu.enable { - hardware.amdgpu = { - initrd.enable = true; - overdrive.enable = true; - }; - # boot.kernelParams = [ "amdgpu.gpu_recovery=1" ]; - }) + (lib.mkIf cfg.amdgpu.enable { + hardware.amdgpu = { + initrd.enable = true; + overdrive.enable = true; + }; + }) - (lib.mkIf (cfg.amdgpu.enable && cfg.stability == "unstable") { - }) + (lib.mkIf (cfg.amdgpu.enable && cfg.stability == "unstable") { + boot.kernelPackages = inputs.kernelv.legacyPackages.x86_64-linux.linuxPackages_6_17; + }) - (lib.mkIf (cfg.amdgpu.enable && cfg.stability == "stable") { - boot.kernelPackages = pkgs.linuxPackages_6_12; - }) - ]); + (lib.mkIf (cfg.amdgpu.enable && cfg.stability == "stable") { + boot.kernelPackages = pkgs.linuxPackages_latest; + }) + ] + ); } |
