From c8c6f4ef08d8601d1c60854157da5f0912d0c4aa Mon Sep 17 00:00:00 2001 From: 514fpv Date: Fri, 19 Jan 2024 21:59:46 +0800 Subject: [PATCH] global(gui): add pure nvidia flicker workaround --- global/gui/default.nix | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) diff --git a/global/gui/default.nix b/global/gui/default.nix index 45c5a073..8a7e88f4 100644 --- a/global/gui/default.nix +++ b/global/gui/default.nix @@ -41,7 +41,9 @@ in { vaapiVdpau libvdpau-va-gl intel-compute-runtime - ] ++ optional nvidia nvidia-vaapi-driver; + ] ++ + optional nvidia nvidia-vaapi-driver ++ + optional (cfg.type == "nvidia") vulkan-validation-layers; }; services.xserver.videoDrivers = @@ -66,8 +68,12 @@ in { open = false; }; - # work around broken nvidia hw cursor on wayland - environment.variables.WLR_NO_HARDWARE_CURSORS = mkIf (cfg.type == "nvidia") "1"; + environment.variables = { + # work around broken nvidia hw cursor on wayland + WLR_NO_HARDWARE_CURSORS = mkIf (cfg.type == "nvidia") "1"; + # work around wlroots flickering on pure nvidia + WLR_RENDERER = mkIf (cfg.type == "nvidia") "vulkan"; + }; specialisation.integratedGraphics = mkIf (cfg.type == "prime") { configuration = {