summaryrefslogtreecommitdiff
path: root/os/core/drivers.nix
diff options
context:
space:
mode:
Diffstat (limited to 'os/core/drivers.nix')
-rw-r--r--os/core/drivers.nix75
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;
+ })
+ ]
+ );
}