From 40ce29f470e1c32a6c2b61ede0ebb91c4bdc9a56 Mon Sep 17 00:00:00 2001 From: Tyler Beckman Date: Fri, 22 Nov 2024 12:29:00 -0700 Subject: [PATCH] Add nvidia config --- configuration.nix | 38 ++++++++++++++++++++++++++++++++++++++ 1 file changed, 38 insertions(+) diff --git a/configuration.nix b/configuration.nix index 1015881..9b902fd 100755 --- a/configuration.nix +++ b/configuration.nix @@ -245,6 +245,44 @@ }; }; + # Nvidia config + hardware.graphics.enable = true; + services.xserver.videoDrivers = ["nvidia" "amdgpu"]; + hardware.nvidia = { + modesetting.enable = true; + + # Nvidia power management. Experimental, and can cause sleep/suspend to fail. + # Enable this if you have graphical corruption issues or application crashes after waking + # up from sleep. This fixes it by saving the entire VRAM memory to /tmp/ instead + # of just the bare essentials. + powerManagement.enable = false; + + # Fine-grained power management. Turns off GPU when not in use. + # Experimental and only works on modern Nvidia GPUs (Turing or newer). + powerManagement.finegrained = true; + + # Use the NVidia open source kernel module (not to be confused with the + # independent third-party "nouveau" open source driver). + # Support is limited to the Turing and later architectures. Full list of + # supported GPUs is at: + # https://github.com/NVIDIA/open-gpu-kernel-modules#compatible-gpus + # Only available from driver 515.43.04+ + # Currently alpha-quality/buggy, so false is currently the recommended setting. + open = false; + + nvidiaSettings = true; + + prime = { + amdgpuBusId = "PCI:4:0:0"; + nvidiaBusId = "PCI:1:0:0"; + + offload = { + enable = true; + enableOffloadCmd = true; + }; + }; + }; + # Fonts fonts = { packages = with pkgs; [