ooknet/modules/nixos/hardware/gpu/amd.nix

39 lines
873 B
Nix

{
config,
lib,
pkgs,
...
}: let
inherit (config.ooknet.hardware) gpu;
inherit (lib) mkIf mkDefault;
inherit (builtins) attrValues;
in {
config = mkIf (gpu.type == "amd") {
hardware.amdgpu = {
amdvlk = {
enable = true;
support32Bit.enable = true;
};
opencl.enable = true;
};
hardware.graphics = {
extraPackages = attrValues {
inherit
(pkgs)
vulkan-tools
vulkan-loader
vulkan-extension-layer
vulkan-validation-layers
mesa
;
};
extraPackages32 = [pkgs.driversi686Linux.amdvlk];
};
boot = {
initrd.kernelModules = ["amdgpu"];
kernelModules = ["amdgpu"];
};
environment.systemPackages = [pkgs.nvtopPackages.amd];
services.xserver.videoDrivers = mkDefault ["modesetting" "amdgpu"];
};
}