From aa5da2395731ba90a073331d16be399494d23136 Mon Sep 17 00:00:00 2001 From: Kirill Date: Sun, 16 Aug 2026 15:36:52 +0300 Subject: [PATCH] fix(nvidia): Added new params for nvidia --- host/ThinkPad/modules/nvidia.nix | 68 +++++++++++++++++++++----------- 1 file changed, 46 insertions(+), 22 deletions(-) diff --git a/host/ThinkPad/modules/nvidia.nix b/host/ThinkPad/modules/nvidia.nix index bd8bb3e..e286405 100644 --- a/host/ThinkPad/modules/nvidia.nix +++ b/host/ThinkPad/modules/nvidia.nix @@ -1,29 +1,53 @@ -{ config, pkgs, ... }: - -{ - services.xserver.videoDrivers = [ "nvidia" ]; - - hardware.nvidia = { - modesetting.enable = true; - - powerManagement = { - enable = true; - finegrained = false; +{ config, pkgs, lib, ... }: let + primeCfg = config.host.nvidia.prime; +in { + config = lib.mkIf primeCfg.enable { + boot = { + kernelParams = [ "nvidia-drm.modeset=1" ]; + initrd.kernelModules = [ "i915" ]; }; - package = config.boot.kernelPackages.nvidiaPackages.legacy_470; + services.xserver.videoDrivers = [ "modesetting" "nvidia" ]; - open = false; + hardware = { + graphics = { + enable = true; + enable32Bit = true; + }; - prime = { - offload.enable = true; + nvidia = { + modesetting.enable = true; - intelBusId = "PCI:0:2:0"; - nvidiaBusId = "PCI:1:0:0"; + powerManagement = { + enable = true; + finegrained = false; + }; + + open = false; + nvidiaSettings = true; + + package = config.boot.kernelPackages.nvidiaPackages.legacy_470; + + prime = { + offload = { + enable = true; + enableOffloadCmd = true; + }; + + intelBusId = primeCfg.intelBusId; + nvidiaBusId = primeCfg.nvidiaBusId; + }; + }; + }; + + environment.sessionVariables = { + __GL_VRR_ALLOWED = 1; + ELECTRON_OZONE_PLATFORM_HINT = "auto"; + NIXOS_OZONE_WL = 1; + }; + + environment.shellAliases = { + nvidia-offload = "__NV_PRIME_RENDER_OFFLOAD=1 __GLX_VENDOR_LIBRARY_NAME=nvidia"; }; }; - - environment.shellAliases = { - nvidia-offload = "__NV_PRIME_RENDER_OFFLOAD=1 __GLX_VENDOR_LIBRARY_NAME=nvidia"; - }; -} +} \ No newline at end of file