{ pkgs, config, ...}: { wayland.windowManager.sway = { enable = true; wrapperFeatures.gtk = true; systemd.enable = true; config = { modifier = "Mod4"; terminal = "${pkgs.foot}/bin/foot"; left = "h"; down = "j"; up = "k"; right = "l"; input = { "*" = { xkb_layout = "us"; xkb_variant = "altgr-intl"; }; }; output = { "Iiyama North America PL2792UH 1166310803122" = { mode = "3840x2160@60Hz"; position = "0,0"; scale = "2"; }; "Iiyama North America PL2792UH 1176923201598" = { mode = "3840x2160@60Hz"; position = "1920,0"; scale = "2"; transform = "90"; }; }; bars= []; keybindings = let mod = config.wayland.windowManager.sway.config.modifier; inherit (config.wayland.windowManager.sway.config) left down up right terminal; in { "${mod}+1" = "workspace $ws1"; "${mod}+Shift+1" = "move container to workspace $ws1"; "${mod}+2" = "workspace $ws2"; "${mod}+Shift+2" = "move container to workspace $ws2"; "${mod}+3" = "workspace $ws3"; "${mod}+Shift+3" = "move container to workspace $ws3"; "${mod}+4" = "workspace $ws4"; "${mod}+Shift+4" = "move container to workspace $ws4"; "${mod}+5" = "workspace $ws5"; "${mod}+Shift+5" = "move container to workspace $ws5"; "${mod}+6" = "workspace $ws6"; "${mod}+Shift+6" = "move container to workspace $ws6"; "${mod}+7" = "workspace $ws7"; "${mod}+Shift+7" = "move container to workspace $ws7"; "${mod}+8" = "workspace $ws8"; "${mod}+Shift+8" = "move container to workspace $ws8"; "${mod}+9" = "workspace $ws9"; "${mod}+Shift+9" = "move container to workspace $ws9"; "${mod}+0" = "workspace $ws0"; "${mod}+Shift+0" = "move container to workspace $ws0"; "${mod}+Return" = "exec ${terminal}"; "${mod}+Shift+q" = "kill"; "${mod}+d" = "exec ${pkgs.fuzzel}/bin/fuzzel"; "${mod}+Shift+c" = "reload"; "${mod}+Alt+l" = "exec ${pkgs.swaylock}/bin/swaylock"; "${mod}+${left} focus" = "left"; "${mod}+${down} focus" = "down"; "${mod}+${up} focus" = "up"; "${mod}+${right} focus" = "right"; "${mod}+Left" = "focus left"; "${mod}+Down" = "focus down"; "${mod}+Up" = "focus up"; "${mod}+Right" = "focus right"; "${mod}+Shift+${left} move" = "left"; "${mod}+Shift+${down} move" = "down"; "${mod}+Shift+${up} move" = "up"; "${mod}+Shift+${right} move" = "right"; "${mod}+Shift+Left" = "move left"; "${mod}+Shift+Down" = "move down"; "${mod}+Shift+Up" = "move up"; "${mod}+Shift+Right" = "move right"; "${mod}+b" = "splith"; "${mod}+v" = "splitv"; "${mod}+s" = "layout stacking"; "${mod}+w" = "layout tabbed"; "${mod}+e" = "layout toggle split"; "${mod}+f" = "fullscreen"; "${mod}+Shift+space" = "floating toggle"; "${mod}+space" = "focus mode_toggle"; "${mod}+a" = "focus parent"; "${mod}+Shift+p" = "move scratchpad"; "${mod}+p" = "scratchpad show"; "${mod}+F1" = "exec brightnessctl s 1%-"; "${mod}+F2" = "exec brightnessctl s +1%"; "${mod}+F3" = "exec pactl set-sink-volume @DEFAULT_SINK@ -5%"; "${mod}+F4" = "exec pactl set-sink-volume @DEFAULT_SINK@ +5%"; "${mod}+F5" = "exec pactl set-sink-mute @DEFAULT_SINK@ toggle"; "${mod}+m" = "exec pactl set-source-mute @DEFAULT_SOURCE@ toggle"; "${mod}+r" = "mode resize"; "${mod}+n" = "exec makoctl dismiss"; "${mod}+shift+n" = "exec makoctl dismiss -a"; "${mod}+alt+n" = "mode notification"; }; modes = let inherit (config.wayland.windowManager.sway.config) left down up right; in { "resize" = { "${left}" = "resize shrink width 10 px or 10 ppt"; "${down}" = "resize grow height 10 px or 10 ppt"; "${up}" = "resize shrink height 10 px or 10 ppt"; "${right}" = "resize grow width 10 px or 10 ppt"; "Return" = "mode default"; "Escape" = "mode default"; }; "notification" = { "r" = "exec ${pkgs.mako}/bin/makoctl restore"; "Escape" = "mode default"; }; }; colors = { focused = { border = "#f268b3"; background = "#f268b3"; text = "#000000"; indicator = "#1cd180"; childBorder = "#f268b3"; }; focusedInactive = { border = "#323232"; background = "#323232"; text = "#f268b3"; indicator = "#1cd180"; childBorder = "#323232"; }; unfocused = { border = "#323232"; background = "#323232"; text = "#cccccc"; indicator = "#1cd180"; childBorder = "#323232"; }; urgent = { border = "#2f343a"; background = "#900000"; text = "#cccccc"; indicator = "#900000"; childBorder = "#900000" ; }; #focused_tab_title = { # boder = "#2f343a"; # background = "#2f343a"; # text = "#ffffff"; #}; }; window = { border = 1; titlebar = false; commands = [ { command = "inhibit_idle fullscreen"; criteria = { title = "^.*"; }; } { command = "inhibit_idle fullscreen"; criteria = { app_id = "^.*"; }; } ]; }; gaps = { smartGaps = true; smartBorders = "on"; inner = 2; }; }; extraConfigEarly = '' set $ws1 1:  set $ws2 2: 󰇮 set $ws3 3: 󰈹 set $ws4 4: 󰍦 set $ws5 5:  set $ws6 6: 󰈙 set $ws7 7:  set $ws8 8:  set $ws9 9:  set $ws0 10:  default_orientation auto workspace_layout default font pango:Fira Code Nerd Font Mono 10 default_border pixel 1 title_align right ''; }; }