nixos-config/profiles/hardware.nix
2021-09-15 23:17:00 +03:00

36 lines
1.0 KiB
Nix

{ pkgs, config, lib, ... }:
with config.deviceSpecific; {
hardware.cpu.${devInfo.cpu.vendor}.updateMicrocode = true;
hardware.enableRedistributableFirmware = true;
nixpkgs.config.packageOverrides = pkgs: {
vaapiIntel = pkgs.vaapiIntel.override { enableHybridCodec = true; };
};
hardware.opengl = {
enable = true;
driSupport = true;
driSupport32Bit = true;
extraPackages = if devInfo.gpu.vendor == "intel" then [
pkgs.intel-media-driver
] else if devInfo.gpu.vendor == "amd" then [
pkgs.rocm-opencl-icd
pkgs.rocm-opencl-runtime
pkgs.amdvlk
] else [ ];
extraPackages32 = lib.mkIf (devInfo.gpu.vendor == "amd") [
pkgs.driversi686Linux.amdvlk
];
};
environment.sessionVariables = lib.mkIf (devInfo.gpu.vendor == "intel") {
GST_VAAPI_ALL_DRIVERS = "1";
LIBVA_DRIVER_NAME = "iHD";
};
boot.initrd.kernelModules = if devInfo.gpu.vendor == "amd" then [
"amdgpu"
] else if devInfo.gpu.vendor == "intel" then [
i915
] else [ ];
}