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 = {