diff --git a/.config/niri/config.kdl b/.config/niri/config.kdl index 7b529d8..749b624 100644 --- a/.config/niri/config.kdl +++ b/.config/niri/config.kdl @@ -106,6 +106,68 @@ output "eDP-1" { position x=0 y=0 } +output "DP-1" { + // Uncomment this line to disable this output. + // off + + // Resolution and, optionally, refresh rate of the output. + // The format is "x" or "x@". + // If the refresh rate is omitted, niri will pick the highest refresh rate + // for the resolution. + // If the mode is omitted altogether or is invalid, niri will pick one automatically. + // Run `niri msg outputs` while inside a niri instance to list all outputs and their modes. + mode "2560x1440@60" + + // You can use integer or fractional scale, for example use 1.5 for 150% scale. + scale 1.5 + + // Transform allows to rotate the output counter-clockwise, valid values are: + // normal, 90, 180, 270, flipped, flipped-90, flipped-180 and flipped-270. + transform "normal" + + // Position of the output in the global coordinate space. + // This affects directional monitor actions like "focus-monitor-left", and cursor movement. + // The cursor can only move between directly adjacent outputs. + // Output scale and rotation has to be taken into account for positioning: + // outputs are sized in logical, or scaled, pixels. + // For example, a 3840×2160 output with scale 2.0 will have a logical size of 1920×1080, + // so to put another output directly adjacent to it on the right, set its x to 1920. + // If the position is unset or results in an overlap, the output is instead placed + // automatically. + position x=0 y=0 +} + +output "HDMI-A-1" { + // Uncomment this line to disable this output. + // off + + // Resolution and, optionally, refresh rate of the output. + // The format is "x" or "x@". + // If the refresh rate is omitted, niri will pick the highest refresh rate + // for the resolution. + // If the mode is omitted altogether or is invalid, niri will pick one automatically. + // Run `niri msg outputs` while inside a niri instance to list all outputs and their modes. + mode "1920x1080@60" + + // You can use integer or fractional scale, for example use 1.5 for 150% scale. + scale 1 + + // Transform allows to rotate the output counter-clockwise, valid values are: + // normal, 90, 180, 270, flipped, flipped-90, flipped-180 and flipped-270. + transform "normal" + + // Position of the output in the global coordinate space. + // This affects directional monitor actions like "focus-monitor-left", and cursor movement. + // The cursor can only move between directly adjacent outputs. + // Output scale and rotation has to be taken into account for positioning: + // outputs are sized in logical, or scaled, pixels. + // For example, a 3840×2160 output with scale 2.0 will have a logical size of 1920×1080, + // so to put another output directly adjacent to it on the right, set its x to 1920. + // If the position is unset or results in an overlap, the output is instead placed + // automatically. + position x=2560 y=360 +} + // Settings that influence how windows are positioned and sized. // Find more information on the wiki: // https://yalter.github.io/niri/Configuration:-Layout @@ -273,6 +335,7 @@ layout { spawn-at-startup "waybar" spawn-at-startup "swaync" spawn-at-startup "swww-daemon" +spawn-at-startup "kwalletd6" // spawn-at-startup "vesktop" // To run a shell command (with variables, pipes, etc.), use spawn-sh-at-startup: @@ -332,6 +395,25 @@ window-rule { open-floating true } +window-rule { + match app-id="vesktop" + + open-on-output "HDMI-A-1" + default-column-width { proportion 1.0; } +} + +window-rule { + match app-id=r"^app\.zen_browser\.zen" + + default-column-width { proportion 1.0; } +} + +window-rule { + match app-id=r"^app\.zen_browser\.zen" title="^Picture-in-Picture$" + + open-floating true +} + // Example: block out two password managers from screen capture. // (This example rule is commented out with a "/-" in front.) /-window-rule {