.dotfiles/nix/system/common/nvidia.nix
Martin Larsson c4d7f5d082 Major refactor to flake, abstract non-trivial packages into their own
files (such as firefox/spotify-qt+librespot), create utils for reusable
function library
2025-05-11 18:19:19 +02:00

40 lines
787 B
Nix

{ config, ... }:
{
boot = {
kernelModules = [
"nvidia"
"nvidia_modeset"
"nvidia_uvm"
"nvidia_drm"
];
blacklistedKernelModules = [ "nouveau" ];
kernelParams = [
"nvidia-drm.modeset=1"
"nvidia-drm.fbdev=1"
];
};
hardware = {
nvidia = {
modesetting.enable = true;
package = config.boot.kernelPackages.nvidiaPackages.stable;
open = true;
powerManagement = {
enable = true;
finegrained = false;
};
nvidiaPersistenced = true;
};
};
environment.variables = {
GBM_BACKEND = "nvidia-drm";
__GLX_VENDOR_LIBRARY_NAME = "nvidia";
WLR_NO_HARDWARE_CURSORS = "1";
WLR_RENDERER = "vulkan";
};
services = {
xserver.videoDrivers = [ "nvidia" ];
};
}