{ pkgs, ... }: let left = "h"; down = "j"; up = "k"; right = "l"; modifier = "Mod4"; terminal = "${pkgs.foot}/bin/footclient"; menu = "${pkgs.wmenu}/bin/wmenu-run"; in { wayland.windowManager.sway = { enable = false; wrapperFeatures.gtk = true; extraConfig = '' exec swaymsg workspace 1 default_border pixel 2 default_floating_border pixel 2 for_window [class=".*"] border pixel 2 client.focused #F5C2E7 #6C7086 #C6D0F5 #6C7086 #6C7086 client.focused_inactive #313244 #313244 #C6D0F5 #585B70 #313244 client.unfocused #313244 #313244 #A6ADC8 #313244 #313244 client.urgent #F38BA8 #6C7086 #FFFFFF #F38BA8 #6C7086 seat * xcursor_theme Adwaita 24 input * xkb_options caps:escape ''; config = { modifier = "Mod4"; gaps = { inner = 8; outer = 10; }; bars = []; output.eDP-1.disable = ""; keybindings = { "${modifier}+Return" = "exec ${terminal}"; "${modifier}+Shift+Return" = "exec ${menu} -l 10"; "${modifier}+r" = "exec rofi -show drun"; "${modifier}+s" = "kill"; "${modifier}+Print" = "exec /home/coast/.local/src/local/bin/screenie-wlr"; "${modifier}+1" = "workspace 1"; "${modifier}+2" = "workspace 2"; "${modifier}+3" = "workspace 3"; "${modifier}+4" = "workspace 4"; "${modifier}+5" = "workspace 5"; "${modifier}+6" = "workspace 6"; "${modifier}+7" = "workspace 7"; "${modifier}+8" = "workspace 8"; "${modifier}+9" = "workspace 9"; "${modifier}+Shift+1" = "move container to workspace 1"; "${modifier}+Shift+2" = "move container to workspace 2"; "${modifier}+Shift+3" = "move container to workspace 3"; "${modifier}+Shift+4" = "move container to workspace 4"; "${modifier}+Shift+5" = "move container to workspace 5"; "${modifier}+Shift+6" = "move container to workspace 6"; "${modifier}+Shift+7" = "move container to workspace 7"; "${modifier}+Shift+8" = "move container to workspace 8"; "${modifier}+Shift+9" = "move container to workspace 9"; "${modifier}+h" = "focus left"; "${modifier}+j" = "focus down"; "${modifier}+k" = "focus up"; "${modifier}+l" = "focus right"; "${modifier}+Shift+i" = "exec caja"; "${modifier}+Shift+r" = "reload"; "${modifier}+Shift+q" = "exit"; "${modifier}+Shift+v" = "exec vesktop --ozone-platform=wayland"; "${modifier}+Shift+p" = "exec /home/coast/.local/src/local/bin/setwall.py"; "${modifier}+Shift+d" = "mode 'resize'"; "${modifier}+space" = "floating toggle"; #lock the screen "${modifier}+Shift+l" = "exec swaylock -c 000000"; #layouts "${modifier}+Shift+u" = "layout tabbed"; "${modifier}+Shift+y" = "layout stacking"; "${modifier}+Shift+t" = "layout toggle split"; }; modes = { resize = { ${right} = "resize shrink width 10 px"; ${up} = "resize grow height 10 px"; ${down} = "resize shrink height 10 px"; ${left} = "resize grow width 10 px"; "Escape" = "mode default"; "Return" = "mode default"; }; }; startup = [ { command = "swaybg -i /home/coast/Downloads/wall1.png -m fill"; always = true; } { command = "waybar"; } { command = "foot -s"; always = true; } { command = "autotiling"; } ]; }; }; services.swayidle = { enable = true; timeouts = [{ timeout = 300; command = "${pkgs.swaylock}/bin/swaylock --daemonize --color 000000"; }]; }; }