{ config, ... }: { wayland.windowManager.sway.config = { defaultWorkspace = "1:${config.ws.w1}"; window = { border = config.look.border.int; titlebar = false; commands = [ # Scratchpads { criteria = { con_mark = "scratchpad"; }; command = ''floating enable, sticky enable, move scratchpad, mark giveborder''; } { criteria = { app_id = "btop"; }; command = ''mark scratchpad''; } { criteria = { app_id = "music"; }; command = ''mark scratchpad''; } { criteria = { app_id = "sound"; }; command = ''mark scratchpad''; } # Give apps that don't have them borders { criteria = { con_mark = "giveborder"; }; command = ''border pixel ${config.look.border.string}''; } { criteria = { class = "steam"; }; command = ''mark giveborder''; } { criteria = { app_id = "swappy"; }; command = ''mark giveborder''; } { criteria = { app_id = "virt-manager"; }; command = ''mark giveborder''; } { criteria = { window_role = "pop-up"; }; command = ''mark giveborder''; } ]; }; assigns = { # Browsers "1:${config.ws.w1}" = [{ app_id = "MainBrowser"; }]; "11:${config.ws.w1a}" = [{ app_id = "AltBrowser"; }]; # Communication "7:${config.ws.w7}" = [ { app_id = "MiscBrowser"; } { app_id = "vesktop"; } ]; "8:${config.ws.w8}" = [ { app_id = "org.gnome.Fractal"; } { app_id = "org.telegram.desktop"; } ]; "9:${config.ws.w9}" = [{ app_id = "thunderbird"; }]; # Etc "2:${config.ws.w2}" = [ { class = "steam"; } { app_id = "heroic"; } ]; "22:${config.ws.w2a}" = [{ app_id = "looking-glass-client"; }]; "44:${config.ws.w4a}" = [{ app_id = "com.obsproject.Studio"; }]; }; focus.newWindow = "focus"; }; }