{ config, lib, pkgs, ... }: let laptop = builtins.readFile "/etc/hostname" == "syl\n"; in { programs.niri = { enable = true; settings = { binds = { "XF86AudioRaiseVolume".action.spawn = ["volup"]; "XF86AudioLowerVolume".action.spawn = ["voldown"]; "Mod+E".action.spawn = "emacslof"; "Mod+B".action.spawn = "qblof"; "Mod+Shift+Q".action = quit; "Mod+O".action = toggle-overview; "Mod+F".action = fullscreen-window; "Mod+M".action = toggle-windowed-fullscreen; "Mod+C".action = close-window; "Mod+Left".action = focus-column-left; "Mod+Right".action = focus-column-right; }; spawn-at-startup = [ { argv = ["waybar"]; } { argv = ["kwalled6"]; } { argv = ["swww-daemon"]; } { argv = ["rbw-agent"]; } { argv = ["/usr/lib/kdeconnectd"]; } { argv = ["kdeconnect-indicator"]; } { argv = ["wl-paste --watch cliphist store"]; } { argv = ["swww img /home/chris/pics/wallpapers/tech.jpg --resize crop -t grow --transition-bezier .14,0,.14,.99"]; } { argv = ["dbus-update-activation-environment --systemd --all"]; } ]; workspaces = { "main" = { open-on-output = "eDP-1"; }; }; window-rules = [ all = { geometry-corner-radius = { top-left = 18; top-right = 18; bottom-left = 18; bottom-right = 18; }; }; emacs = { matches.app-id = "emacs"; open-on-workspace = "main"; }; browser = { matches.app-id = "org.qutebrowser.qutebrowser"; open-on-workspace = "main"; }; cosmic-files = { matches.app-id = "com.system76.CosmicFiles"; open-on-workspace = "main"; open-floating = true; }; ]; layout = { gaps = 15; struts = { bottom = 5; left = 5; right = 5; top = 5; }; shadow = { enable = true; draw-behind-window = false; }; border = { enable = true; width = 4; }; }; screenshot-path = "~/pics/screenshot_%Y-%m-%d_%H-%M-%S.png"; cursor = { hide-after-inactive-ms = 3000; hide-when-typing = true; theme = "phinger-cursors-light"; }; outputs = { "eDP-1" = { enable = true; mode = { height = 1504; width = 2256; refresh = 60; name = "A"; }; }; }; input = { mod-key = "Super"; touchpad = { accel-profile = "adaptive"; accel-speed = 0.75; click-method = "clickfinger"; drag = true; }; keyboard = { repeat-delay = 180; repeat-rate = 180; }; warp-mouse-to-focus = { enable = true; }; }; environment = { }; }; }; }