summaryrefslogtreecommitdiff
path: root/common/modules/window_managers/niri
diff options
context:
space:
mode:
Diffstat (limited to 'common/modules/window_managers/niri')
-rw-r--r--common/modules/window_managers/niri/default.nix145
1 files changed, 89 insertions, 56 deletions
diff --git a/common/modules/window_managers/niri/default.nix b/common/modules/window_managers/niri/default.nix
index 4905927..ac2d99e 100644
--- a/common/modules/window_managers/niri/default.nix
+++ b/common/modules/window_managers/niri/default.nix
@@ -14,8 +14,6 @@ let
cfg = config.${moduleNameSpace}.windowManagers;
scripts = import ../scripts.nix { inherit pkgs config; };
eyecandy = cfg.eyeCandy.enable;
- terminal =
- if config.beeMods.terminal.default == "foot" then "footclient" else config.beeMods.terminal.default;
in
{
config = lib.mkIf cfg.niri.enable (
@@ -23,7 +21,6 @@ in
{
home.packages = with pkgs; [
xwayland-satellite
- evtest
];
xdg.configFile."niri/config.kdl".text = ''
include optional=true "./noctalia.kdl"
@@ -63,14 +60,14 @@ in
}
blur {
- passes ${if eyecandy then toString cfg.eyeCandy.window.blur.passes else "0"}
- offset ${if eyecandy then toString cfg.eyeCandy.window.blur.radius else "0"}
- noise 0.03
- saturation 1.0
+ passes ${if eyecandy then toString cfg.eyeCandy.window.blur.passes else "0"}
+ offset ${if eyecandy then toString cfg.eyeCandy.window.blur.radius else "0"}
+ noise 0.03
+ saturation 1.3
}
layout {
- gaps 4
+ gaps 5
center-focused-column "never"
background-color "transparent"
@@ -89,18 +86,17 @@ in
}
focus-ring {
- on
- width 2
+ off
+ width 2
}
border {
- off
+ on
width 2
}
shadow {
- off
- // on
+ ${if eyecandy && cfg.eyeCandy.window.shadows.enable then "on" else "off"}
softness 30
spread 5
offset x=0 y=5
@@ -145,79 +141,116 @@ in
}
window-rule {
+ match is-floating=true
+
+ background-effect {
+ xray false
+ }
+ }
+
+ window-rule {
match title="^Kdenlive$"
open-floating true
open-on-workspace "3"
}
window-rule {
- match app-id=r#"^(firefox|librewolf)$"#
- open-on-workspace "1"
- open-maximized true
+ match app-id=r#"^(firefox|librewolf|brave-origin)$"#
+ open-on-workspace "1"
+ open-maximized true
}
window-rule {
- match app-id=r#"^(foot|footclient|Alacritty|com.mitchellh.ghostty|kitty)$"#
- open-on-workspace "2"
+ match app-id=r#"^(foot|footclient|Alacritty|com.mitchellh.ghostty|kitty)$"#
+ open-on-workspace "2"
+ open-focused true
+ }
+
+ window-rule {
+ match app-id=r#"^(vesktop|mpv|.*Kdenlive.*)$"#
+ open-on-workspace "3"
+ open-focused true
}
window-rule {
- match app-id=r#"^(vesktop|mpv|.*Kdenlive.*)$"#
- open-on-workspace "3"
- open-focused true
+ match app-id=r#"^(steam)$"#
+ open-on-workspace "4"
}
+ // steam games
window-rule {
- match app-id=r#"^(steam)$"#
- open-on-workspace "4"
+ match app-id=r#"^steam_app_.*$"#
+ open-on-workspace "4"
+ open-fullscreen true
+ open-floating false
+ }
+
+ window-rule {
+ draw-border-with-background false
+ geometry-corner-radius ${if eyecandy then toString cfg.eyeCandy.window.borderRadius else "0"}
+ clip-to-geometry ${
+ if eyecandy && cfg.eyeCandy.window.borderRadius != 0 then "true" else "false"
+ }
+ opacity ${if eyecandy then toString cfg.eyeCandy.window.opacity else "1.0"}
+ background-effect {
+ blur ${if eyecandy && cfg.eyeCandy.window.blur.enable then "true" else "false"}
+ }
+ popups {
+ geometry-corner-radius 15
+
+ background-effect {
+ xray false
+ blur ${if eyecandy && cfg.eyeCandy.window.blur.enable then "true" else "false"}
+ }
+ }
}
- ${lib.optionalString (config.beeMods.terminal.default == "foot") ''
+ ${lib.optionalString (scripts.defaultTerm == "foot") ''
spawn-sh-at-startup "foot --server"
''}
binds {
Mod+Shift+Slash { show-hotkey-overlay; }
- Mod+Return hotkey-overlay-title="Open a Terminal: ${config.beeMods.terminal.default}" { spawn "${terminal}"; }
+ Mod+Return hotkey-overlay-title="Open a Terminal: ${scripts.defaultTerm}" { spawn-sh "${scripts.terminal}"; }
- ${lib.optionalString (config.beeMods.matugen.enable && cfg.beeConfig.enable && !cfg.noctalia) ''
- Mod+A hotkey-overlay-title="Run an Application" { spawn-sh "rofi -show drun"; }
- Mod+Y hotkey-overlay-title="Open wallpaper picker" { spawn-sh "${scripts.dostuff} wall"; }
- Mod+Comma hotkey-overlay-title="Open Noctalia settings" { spawn-sh "${scripts.dostuff} settings"; }
+ ${lib.optionalString (config.beeMods.matugen.enable && cfg.beeConfig.enable && !cfg.noctalia) ''
+ Mod+A hotkey-overlay-title="Run an Application" { spawn-sh "rofi -show drun"; }
+ Mod+Y hotkey-overlay-title="Open wallpaper picker" { spawn-sh "${scripts.dostuff} wall"; }
+ Mod+Comma hotkey-overlay-title="Open Noctalia settings" { spawn-sh "${scripts.dostuff} settings"; }
- XF86AudioRaiseVolume allow-when-locked=true { spawn-sh "${scripts.volume} up"; }
- XF86AudioLowerVolume allow-when-locked=true { spawn-sh "${scripts.volume} down"; }
- XF86AudioMute allow-when-locked=true { spawn-sh "${scripts.volume} toggle"; }
- XF86AudioMicMute allow-when-locked=true { spawn-sh "${scripts.micToggle}"; }
+ XF86AudioRaiseVolume allow-when-locked=true { spawn-sh "${scripts.volume} up"; }
+ XF86AudioLowerVolume allow-when-locked=true { spawn-sh "${scripts.volume} down"; }
+ XF86AudioMute allow-when-locked=true { spawn-sh "${scripts.volume} toggle"; }
+ XF86AudioMicMute allow-when-locked=true { spawn-sh "${scripts.micToggle}"; }
- Mod+TouchpadScrollDown { spawn-sh "${scripts.volume} up 0.02"; }
- Mod+TouchpadScrollUp { spawn-sh "${scripts.volume} down 0.02"; }
+ Mod+TouchpadScrollDown { spawn-sh "${scripts.volume} up 0.02"; }
+ Mod+TouchpadScrollUp { spawn-sh "${scripts.volume} down 0.02"; }
- XF86MonBrightnessUp allow-when-locked=true { spawn-sh "${scripts.brightness} up"; }
- XF86MonBrightnessDown allow-when-locked=true { spawn-sh "${scripts.brightness} down"; }
- ''}
+ XF86MonBrightnessUp allow-when-locked=true { spawn-sh "${scripts.brightness} up"; }
+ XF86MonBrightnessDown allow-when-locked=true { spawn-sh "${scripts.brightness} down"; }
+ ''}
- ${lib.optionalString (!cfg.beeConfig.enable && cfg.noctalia) ''
- Mod+A hotkey-overlay-title="Run an Application" { spawn-sh "noctalia msg panel-toggle launcher"; }
- Mod+Y hotkey-overlay-title="Open wallpaper picker" { spawn-sh "noctalia msg panel-toggle wallpaper"; }
- Mod+V hotkey-overlay-title="Open clipboard panel" { spawn-sh "noctalia msg panel-toggle clipboard"; }
- Mod+Comma hotkey-overlay-title="Open Noctalia settings" { spawn-sh "noctalia msg settings-toggle"; }
- Mod+S { spawn-sh "noctalia msg panel-toggle control-center"; }
- Alt+F4 { spawn-sh "noctalia msg panel-toggle session"; }
+ ${lib.optionalString (!cfg.beeConfig.enable && cfg.noctalia) ''
+ Mod+A hotkey-overlay-title="Run an Application" { spawn-sh "noctalia msg panel-toggle launcher"; }
+ Mod+Y hotkey-overlay-title="Open wallpaper picker" { spawn-sh "noctalia msg panel-toggle wallpaper"; }
+ Mod+V hotkey-overlay-title="Open clipboard panel" { spawn-sh "noctalia msg panel-toggle clipboard"; }
+ Mod+Comma hotkey-overlay-title="Open Noctalia settings" { spawn-sh "noctalia msg settings-toggle"; }
+ Mod+S { spawn-sh "noctalia msg panel-toggle control-center"; }
+ Alt+F4 { spawn-sh "noctalia msg panel-toggle session"; }
- XF86AudioRaiseVolume allow-when-locked=true { spawn-sh "noctalia msg volume-up"; }
- XF86AudioLowerVolume allow-when-locked=true { spawn-sh "noctalia msg volume-down"; }
- XF86AudioMute allow-when-locked=true { spawn-sh "noctalia msg volume-mute"; }
- XF86AudioMicMute allow-when-locked=true { spawn-sh "noctalia msg mic-mute"; }
+ XF86AudioRaiseVolume allow-when-locked=true { spawn-sh "noctalia msg volume-up"; }
+ XF86AudioLowerVolume allow-when-locked=true { spawn-sh "noctalia msg volume-down"; }
+ XF86AudioMute allow-when-locked=true { spawn-sh "noctalia msg volume-mute"; }
+ XF86AudioMicMute allow-when-locked=true { spawn-sh "noctalia msg mic-mute"; }
- Mod+TouchpadScrollDown { spawn-sh "wpctl set-volume @DEFAULT_AUDIO_SINK@ 0.02+"; }
- Mod+TouchpadScrollUp { spawn-sh "wpctl set-volume @DEFAULT_AUDIO_SINK@ 0.02-"; }
+ Mod+TouchpadScrollDown { spawn-sh "wpctl set-volume @DEFAULT_AUDIO_SINK@ 0.02+"; }
+ Mod+TouchpadScrollUp { spawn-sh "wpctl set-volume @DEFAULT_AUDIO_SINK@ 0.02-"; }
- XF86MonBrightnessUp allow-when-locked=true { spawn-sh "noctalia msg brightness-up"; }
- XF86MonBrightnessDown allow-when-locked=true { spawn-sh "noctalia msg brightness-down"; }
- ''}
+ XF86MonBrightnessUp allow-when-locked=true { spawn-sh "noctalia msg brightness-up"; }
+ XF86MonBrightnessDown allow-when-locked=true { spawn-sh "noctalia msg brightness-down"; }
+ ''}
Mod+E hotkey-overlay-title="Open wallpaper picker" { spawn-sh "nautilus"; }
Mod+B hotkey-overlay-title="Open wallpaper picker" { spawn-sh "librewolf"; }
@@ -374,8 +407,8 @@ in
// a matching layout switch hotkey configured in xkb options above.
// Having both at once on the same hotkey will break the switching,
// since it will switch twice upon pressing the hotkey (once by xkb, once by niri).
- Mod+Shift+N { switch-layout "next"; }
- Mod+Shift+P { switch-layout "prev"; }
+ Mod+Shift+N { switch-layout "next"; }
+ Mod+Shift+P { switch-layout "prev"; }
Print { screenshot-screen; }
Mod+Print { screenshot; }