nixos-config/profiles/hardware.nix

42 lines
1.2 KiB
Nix
Raw Normal View History

2024-11-18 03:15:33 +03:00
{ config, lib, pkgs, ... }:
2021-02-07 02:38:11 +03:00
with config.deviceSpecific; {
2024-11-18 03:15:33 +03:00
config = lib.mkMerge [
({
hardware.cpu.${devInfo.cpu.vendor}.updateMicrocode = true;
hardware.enableRedistributableFirmware = true;
2019-08-27 23:41:02 +04:00
2024-11-18 03:15:33 +03:00
boot.initrd.kernelModules = if devInfo.gpu.vendor == "amd" then [
"amdgpu"
] else if devInfo.gpu.vendor == "intel" then [
"i915"
] else [ ];
})
(lib.mkIf (!isServer) {
hardware.graphics = {
enable = true;
enable32Bit = true;
extraPackages = if devInfo.gpu.vendor == "intel" then [
pkgs.intel-media-driver
pkgs.intel-vaapi-driver
pkgs.libvdpau-va-gl
] else if devInfo.gpu.vendor == "amd" then [
pkgs.rocmPackages.clr.icd
] else [ ];
};
2024-06-27 20:17:07 +03:00
2024-11-18 03:18:47 +03:00
hardware.amdgpu = lib.mkIf (devInfo.gpu.vendor == "amd") {
opencl.enable = true;
initrd.enable = config.boot.initrd.systemd.enable;
};
2024-11-18 03:15:33 +03:00
environment.sessionVariables = if (devInfo.gpu.vendor == "intel") then {
GST_VAAPI_ALL_DRIVERS = "1";
LIBVA_DRIVER_NAME = "iHD";
VDPAU_DRIVER = "va_gl";
} else if (devInfo.gpu.vendor == "amd") then {
AMD_VULKAN_ICD = "RADV";
} else {};
})
];
2019-08-27 23:41:02 +04:00
}