From 445db26b8864bf34c236f936a9330272f232cd51 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?J=C3=B6rg=20Thalheim?= Date: Thu, 9 Feb 2023 09:04:15 +0000 Subject: [PATCH] Update lenovo/legion/16ach6h/nvidia/default.nix --- lenovo/legion/16ach6h/nvidia/default.nix | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/lenovo/legion/16ach6h/nvidia/default.nix b/lenovo/legion/16ach6h/nvidia/default.nix index 85f7ee1..31de5c1 100644 --- a/lenovo/legion/16ach6h/nvidia/default.nix +++ b/lenovo/legion/16ach6h/nvidia/default.nix @@ -3,6 +3,19 @@ { imports = [ ../hybrid ]; services.xserver.videoDrivers = [ "nvidia" ]; # This will override services.xserver.videoDrivers = lib.mkDefault [ "amdgpu" "nvidia" ]; + # When I play the game through proton, I found that in the case of Dual-Direct GFX + # enabled (dGPU disabled), proton will crash directly. But in the case of hybrid, + # the game runs fine with or without nvidia-offload After investigation, this is + # because when writing the specialization of Dual-Direct GFX, I did not completely + # remove all packages for amd igpu. I only removed amdgpu from + # services.xserver.videoDrivers by overriding. This is because the specialization + # of nix cannot implement such an operation as canceling an import. In the end, if + # it is enabled in Dual-Direct GFX In the absence of amd igpu, the amdvlk package + # caused the proton to crash. In order to solve this problem, I add the option of + # whether to enable amdvlk to the configuration file of amd gpu, and open it by + # default, and turn it off in specialization, so as to delete amdvlk package and + # other packages for amd igpu in specialization. At the same time, I also added an + # option to amdgpu's opencl runtime. hardware = { nvidia.prime.offload.enable = false; amdgpu = {