diff --git a/configs/nixos/hosts/zeus/default.nix b/configs/nixos/hosts/zeus/default.nix index 56bdf2f..d99267b 100644 --- a/configs/nixos/hosts/zeus/default.nix +++ b/configs/nixos/hosts/zeus/default.nix @@ -1,6 +1,7 @@ { config, lib, + pkgs, ... }: # zeus — Ryzen desktop with AMD graphics. @@ -48,20 +49,35 @@ modules.desktop.apps.steam.enable = true; modules.desktop.apps.vencord.enable = true; - home-manager.users.${config.user.name}.wayland.windowManager.hyprland.settings.monitor = [ - { - output = "HDMI-A-1"; - mode = "1920x1080@120"; - position = "0x0"; - scale = 1; - transform = 3; - } - { - output = "DP-3"; - mode = "2560x1440@239.96"; - position = "1080x0"; - scale = 1; - } - ]; + home-manager.users.${config.user.name}.wayland.windowManager.hyprland.settings = { + monitor = [ + { + output = "HDMI-A-1"; + mode = "1920x1080@120"; + position = "0x0"; + scale = 1; + transform = 3; + } + { + output = "DP-3"; + mode = "2560x1440@239.96"; + position = "1080x0"; + scale = 1; + } + ]; + + # Some XWayland games query RandR primary output instead of Hyprland's + # layout, so mark the main panel explicitly. + on = { + _args = [ + "hyprland.start" + (lib.generators.mkLuaInline '' + function() + hl.exec_cmd("${pkgs.xrandr}/bin/xrandr --output DP-3 --primary") + end + '') + ]; + }; + }; }