diff --git a/common/cpu/intel/cpu-only.nix b/common/cpu/intel/cpu-only.nix new file mode 100644 index 0000000..f48b036 --- /dev/null +++ b/common/cpu/intel/cpu-only.nix @@ -0,0 +1,6 @@ +{ config, lib, pkgs, ... }: + +{ + hardware.cpu.intel.updateMicrocode = + lib.mkDefault config.hardware.enableRedistributableFirmware; +} diff --git a/common/cpu/intel/default.nix b/common/cpu/intel/default.nix index 273360d..966505f 100644 --- a/common/cpu/intel/default.nix +++ b/common/cpu/intel/default.nix @@ -1,19 +1,8 @@ { config, lib, pkgs, ... }: { - boot.initrd.kernelModules = [ "i915" ]; - - environment.variables = { - VDPAU_DRIVER = lib.mkIf config.hardware.opengl.enable (lib.mkDefault "va_gl"); - }; - - hardware.cpu.intel.updateMicrocode = - lib.mkDefault config.hardware.enableRedistributableFirmware; - - hardware.opengl.extraPackages = with pkgs; [ - vaapiIntel - vaapiVdpau - libvdpau-va-gl - intel-media-driver + imports = [ + ./cpu-only.nix + ../../gpu/intel.nix ]; } diff --git a/common/gpu/intel.nix b/common/gpu/intel.nix new file mode 100644 index 0000000..31db8b4 --- /dev/null +++ b/common/gpu/intel.nix @@ -0,0 +1,15 @@ +{ config, lib, pkgs, ... }: + +{ + boot.initrd.kernelModules = [ "i915" ]; + + environment.variables = { + VDPAU_DRIVER = lib.mkIf config.hardware.opengl.enable (lib.mkDefault "va_gl"); + }; + + hardware.opengl.extraPackages = with pkgs; [ + vaapiIntel + libvdpau-va-gl + intel-media-driver + ]; +} diff --git a/common/gpu/nvidia.nix b/common/gpu/nvidia.nix index fed9fa9..365dbfa 100644 --- a/common/gpu/nvidia.nix +++ b/common/gpu/nvidia.nix @@ -19,4 +19,8 @@ in offload.enable = lib.mkDefault true; # Hardware should specify the bus ID for intel/nvidia devices }; + + hardware.opengl.extraPackages = with pkgs; [ + vaapiVdpau + ]; } diff --git a/flake.nix b/flake.nix index 990f44f..53f1d7d 100644 --- a/flake.nix +++ b/flake.nix @@ -121,6 +121,7 @@ common-cpu-amd = import ./common/cpu/amd; common-cpu-intel = import ./common/cpu/intel; + common-cpu-intel-cpu-only = import ./common/cpu/intel/cpu-only.nix; common-cpu-intel-kaby-lake = import ./common/cpu/intel/kaby-lake; common-cpu-intel-sandy-bridge = import ./common/cpu/intel/sandy-bridge; common-gpu-amd = import ./common/gpu/amd;