Added hardware profiles for nvidia && intel

This commit is contained in:
2025-12-21 22:29:59 -05:00
parent a2034dc4f2
commit 71d2a9c177
3 changed files with 60 additions and 0 deletions

View File

@@ -6,5 +6,6 @@
imports = [ imports = [
inputs.nixos-hardware.nixosModules.framework-12th-gen-intel inputs.nixos-hardware.nixosModules.framework-12th-gen-intel
./hardware-configuration.nix ./hardware-configuration.nix
../../profiles/intel.nix
]; ];
} }

17
profiles/intel.nix Normal file
View File

@@ -0,0 +1,17 @@
{
pkgs,
...
}:
{
hardware.graphics = {
enable = true;
extraPackages = with pkgs; [
intel-media-driver
intel-ocl
intel-vaapi-driver
vpl-gpu-rt
libvdpau-va-gl
libva-vdpau-driver
];
};
}

42
profiles/nvidia.nix Normal file
View File

@@ -0,0 +1,42 @@
{
config,
...
}:
{
# Enable OpenGL
hardware.graphics.enable = true;
# Load nvidia driver for Xorg and Wayland
services.xserver.videoDrivers = [ "nvidia" ];
hardware.nvidia = {
# Modesetting is required.
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 = true;
# Fine-grained power management. Turns off GPU when not in use.
# Experimental and only works on modern Nvidia GPUs (Turing or newer).
powerManagement.finegrained = false;
# 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 513.43.04+
open = false;
# Enable the Nvidia settings menu,
# accessible via `nvidia-settings`.
nvidiaSettings = true;
# Optionally, you may need to select the appropriate driver version for your specific GPU.
package = config.boot.kernelPackages.nvidiaPackages.stable;
};
}