nixdotfiles/etc/nixos/modules/nvidia.nix

43 lines
1.3 KiB
Nix

{ config, pkgs, lib, ... }:
{
boot = {
kernelParams = [
"nvidia-drm.fbdev=1"
"nvidia.NVreg_UsePageAttributeTable=1"
"nvidia_modeset.disable_vrr_memclk_switch=1"
"nvidia.NVreg_TemporaryFilePath=/var/tmp"
];
blacklistedKernelModules = ["nouveau"];
};
services.xserver.videoDrivers = ["nvidia"];
hardware = {
nvidia = {
open = false;
gsp.enable = config.hardware.nvidia.open;
powerManagement.enable = true;
nvidiaSettings = false;
package = config.boot.kernelPackages.nvidiaPackages.latest;
# package = config.boot.kernelPackages.nvidiaPackages.mkDriver {
# version = "575.51.02";
# sha256_64bit = "sha256-XZ0N8ISmoAC8p28DrGHk/YN1rJsInJ2dZNL8O+Tuaa0=";
# openSha256 = "sha256-NQg+QDm9Gt+5bapbUO96UFsPnz1hG1dtEwT/g/vKHkw=";
# useSettings = false;
# usePersistenced = false;
# };
videoAcceleration = true;
};
};
environment = {
sessionVariables = {
"__EGL_VENDOR_LIBRARY_FILENAMES" = "${config.hardware.nvidia.package}/share/glvnd/egl_vendor.d/10_nvidia.json";
"CUDA_CACHE_PATH" = "/home/nicole/.cache/nv";
};
etc."nvidia/nvidia-application-profiles-rc.d/50-limit-free-buffer-pool.json".source = ./50-limit-free-buffer-pool.json;
};
}