nixos/systems/game-laptop/prime.nix

44 lines
1 KiB
Nix

_: {
config,
pkgs,
...
}: let
prime-run = pkgs.writeShellScriptBin "prime-run" ''
export __NV_PRIME_RENDER_OFFLOAD=1
export __NV_PRIME_RENDER_OFFLOAD_PROVIDER=NVIDIA-G0
export __GLX_VENDOR_LIBRARY_NAME=nvidia
export __VK_LAYER_NV_optimus=NVIDIA_only
exec "$@"
'';
in {
environment.systemPackages = [prime-run];
hardware.nvidia = {
package = config.boot.kernelPackages.nvidiaPackages.latest;
prime = {
offload.enable = true;
amdgpuBusId = "PCI:5:0:0";
nvidiaBusId = "PCI:1:0:0";
};
powerManagement = {
enable = true;
finegrained = true;
};
nvidiaPersistenced = true;
nvidiaSettings = false;
modesetting.enable = true;
};
services.xserver = {
videoDrivers = ["nvidia"];
#disable DPMS
monitorSection = ''
Option "DPMS" "false"
'';
#disable screen blanking in total
serverFlagsSection = ''
Option "StandbyTime" "0"
Option "SuspendTime" "0"
Option "OffTime" "0"
Option "BlankTime" "0"
'';
};
}