{ config, lib, pkgs, ... }: { ############################ ## Display + Mesa Settings ############################ # hardware.enableRedistributableFirmware = true; hardware.firmware = [ pkgs.linux-firmware pkgs.firmwareLinuxNonfree # pkgs.firmwareLinuxStrict # pkgs.firmwareLinuxLatest ]; # boot.kernelPackages = pkgs.linuxPackages_latest; boot.kernelParams = [ "console=tty0" "efifb=off" "xe.force_probe=*" "nvidia-drm.modeset=1" ]; hardware.graphics = { enable = true; extraPackages = with pkgs; [ intel-media-driver # Intel VAAPI vpl-gpu-rt # oneVPL runtime vaapiIntel # fallback ]; }; # Ensure Arc driver is available (usually auto-loaded) boot.kernelModules = [ "xe" ]; boot.blacklistedKernelModules = [ "nouveau" ]; ############################ ## X / Wayland GPU Drivers ############################ # Only specify NVIDIA. Intel Arc uses the modesetting driver automatically. services.xserver.videoDrivers = [ "nvidia" ]; ############################ ## NVIDIA Configuration ############################ hardware.nvidia = { modesetting.enable = true; # REQUIRED if any displays are on NVIDIA open = false; # GTX 1070 → must be the proprietary driver nvidiaSettings = true; powerManagement.enable = false; powerManagement.finegrained = false; prime = { offload.enable = false; # not a laptop, must be disabled sync.enable = false; }; # Correct way to pick the driver package = config.boot.kernelPackages.nvidiaPackages.production; }; # Remove → hardware.nvidia handles module packages # boot.extraModulePackages = [ config.boot.kernelPackages.nvidia_x11 ]; ############################ ## User Access ############################ users.users.andreas.extraGroups = [ "video" "render" ]; }