diff options
Diffstat (limited to 'sys/core/drivers.nix')
| -rw-r--r-- | sys/core/drivers.nix | 65 |
1 files changed, 32 insertions, 33 deletions
diff --git a/sys/core/drivers.nix b/sys/core/drivers.nix index de7dcb5..a01bb54 100644 --- a/sys/core/drivers.nix +++ b/sys/core/drivers.nix @@ -1,9 +1,9 @@ { config, lib, pkgs, ... }: let - cfg = config.szpont.sys.core.drivers; + cfg = config.sys.core.drivers; in { - options.szpont.sys.core.drivers = { + options.sys.core.drivers = { enable = lib.mkEnableOption "enables hardware drivers"; amd.enable = lib.mkEnableOption "AMD specific drivers and microcode"; stability = lib.mkOption { @@ -11,38 +11,37 @@ in default = "stable"; }; }; + config = lib.mkIf cfg.enable (lib.mkMerge [ + { + services.smartd.enable = true; + hardware.sensor.iio.enable = true; + hardware.enableAllFirmware = true; + hardware.graphics = { + enable = true; + enable32Bit = true; + }; + } - config = lib.mkIf cfg.enable { - services.smartd.enable = true; - hardware.sensor.iio.enable = true; - hardware.enableRedistributableFirmware = true; - hardware.graphics = { - enable = true; - enable32Bit = true; - }; + (lib.mkIf cfg.amd.enable { + services.xserver.videoDrivers = [ "amdgpu" ]; + hardware.cpu.amd.updateMicrocode = true; + hardware.amdgpu = { + initrd.enable = true; + overdrive.enable = true; + }; + }) - programs.coolercontrol.enable = true; - environment.systemPackages = with pkgs; [ linux-firmware ]; + (lib.mkIf (cfg.amd.enable && cfg.stability == "unstable") { + services.lact.enable = true; + boot.kernelPackages = pkgs.linuxPackages_cachyos-lto-znver4; + chaotic.mesa-git = { + enable = true; + extraPackages = [ pkgs.mesa_git.opencl ]; + }; + }) - } // (lib.mkIf cfg.amd.enable (lib.mkMerge [ - { - services.xserver.videoDrivers = [ "amdgpu" ]; - hardware.cpu.amd.updateMicrocode = true; - hardware.amdgpu = { - initrd.enable = true; - overdrive.enable = true; - }; - } - (lib.mkIf (cfg.stability == "unstable") { - services.lact.enable = true; - boot.kernelPackages = pkgs.linuxPackages_cachyos-lto-znver4; - chaotic.mesa-git = { - enable = true; - extraPackages = [ pkgs.mesa_git.opencl ]; - }; - }) - (lib.mkIf (cfg.stability == "stable") { - boot.kernelPackages = pkgs.linuxPackages_latest; - }) - ])); + (lib.mkIf (cfg.amd.enable && cfg.stability == "stable") { + boot.kernelPackages = pkgs.linuxPackages_latest; + }) + ]); } |
