diff options
Diffstat (limited to 'os/core/drivers.nix')
| -rw-r--r-- | os/core/drivers.nix | 37 |
1 files changed, 24 insertions, 13 deletions
diff --git a/os/core/drivers.nix b/os/core/drivers.nix index da9d83a..77ea721 100644 --- a/os/core/drivers.nix +++ b/os/core/drivers.nix @@ -2,16 +2,21 @@ config, lib, pkgs, - inputs, ... -}: let +}: +let cfg = config.os.core.drivers; -in { +in +{ options.os.core.drivers = { enable = lib.mkEnableOption "enables hardware drivers"; cpu = lib.mkOption { - type = lib.types.enum ["intel" "amd" "none"]; + type = lib.types.enum [ + "intel" + "amd" + "none" + ]; default = "none"; description = "cpu manufacturer for microcode and platform-specific drivers"; }; @@ -40,7 +45,7 @@ in { smartd.enable = true; fwupd.enable = true; }; - environment.systemPackages = [pkgs.rivalcfg]; + environment.systemPackages = [ pkgs.rivalcfg ]; } (lib.mkIf (cfg.cpu == "amd") { @@ -57,6 +62,9 @@ in { hardware.graphics = { enable = true; enable32Bit = true; + extraPackages = with pkgs; [ + libva + ]; }; hardware.sensor.iio.enable = true; }) @@ -69,17 +77,20 @@ in { }; hardware.graphics.extraPackages = with pkgs; [ rocmPackages.clr.icd + libva + libva-utils ]; }) { - boot.kernelPackages = let - kernels = { - "stable" = pkgs.linuxPackages_latest; - "zen" = pkgs.linuxPackages_zen; - "hardened" = pkgs.linuxPackages_hardened; - "unstable" = inputs.kernelv.legacyPackages.x86_64-linux.linuxPackages_6_17; - }; - in + boot.kernelPackages = + let + kernels = { + "stable" = pkgs.linuxPackages_latest; + "zen" = pkgs.linuxPackages_zen; + "hardened" = pkgs.linuxPackages_hardened; + # "unstable" = pkgs.linuxPackages.; + }; + in kernels.${cfg.kernel} or kernels."stable"; } ] |
