NixOS-Config/modules/home/wms/sway/rules/default.nix

89 lines
2.3 KiB
Nix
Raw Normal View History

2024-10-19 19:59:55 -04:00
{ config, ... }:
2024-10-09 03:36:08 -04:00
{
2024-11-07 18:17:51 -05:00
wayland.windowManager.sway.config = {
defaultWorkspace = "1:${config.ws.w1}";
2024-11-07 18:17:51 -05:00
window = {
border = config.look.border.int;
titlebar = false;
commands = [
# Scratchpads
{
criteria = { con_mark = "scratchpad"; };
command = ''floating enable, sticky enable, move scratchpad, mark giveborder'';
2024-11-07 18:17:51 -05:00
}
{
criteria = { app_id = "btop"; };
2024-11-07 18:17:51 -05:00
command = ''mark scratchpad'';
}
{
criteria = { app_id = "music"; };
command = ''mark scratchpad'';
}
{
criteria = { app_id = "sound"; };
command = ''mark scratchpad'';
}
2024-08-24 22:16:51 -04:00
2024-11-07 18:17:51 -05:00
# Give apps that don't have them borders
{
criteria = { con_mark = "giveborder"; };
2024-11-07 18:17:51 -05:00
command = ''border pixel ${config.look.border.string}'';
}
{
criteria = { app_id = "com.github.wwmm.easyeffects"; };
command = ''mark giveborder'';
2024-11-07 18:17:51 -05:00
}
{
criteria = { class = "steam"; };
command = ''mark giveborder'';
2024-11-07 18:17:51 -05:00
}
{
criteria = { app_id = "swappy"; };
command = ''mark giveborder'';
2024-11-07 18:17:51 -05:00
}
{
criteria = { app_id = "virt-manager"; };
command = ''mark giveborder'';
2024-11-07 18:17:51 -05:00
}
{
criteria = { window_role = "pop-up"; };
command = ''mark giveborder'';
2024-11-07 18:17:51 -05:00
}
2024-08-24 22:16:51 -04:00
# Misc
2024-11-07 18:17:51 -05:00
{
criteria = { title = "^GlobalShot"; };
command = ''floating enable, fullscreen enable global'';
}
];
};
assigns = {
# Browsers
"1:${config.ws.w1}" = [{ app_id = "MainBrowser"; }];
"11:${config.ws.w1a}" = [{ app_id = "AltBrowser"; }];
2024-08-24 22:16:51 -04:00
2024-11-07 18:17:51 -05:00
# Communication
"7:${config.ws.w7}" = [
2024-11-07 18:17:51 -05:00
{ app_id = "MiscBrowser"; }
{ app_id = "vesktop"; }
{ class = "vesktop"; }
];
"8:${config.ws.w8}" = [
{ app_id = "org.gnome.Fractal"; }
{ app_id = "org.telegram.desktop"; }
];
"9:${config.ws.w9}" = [{ app_id = "thunderbird"; }];
2024-08-24 22:16:51 -04:00
2024-11-07 18:17:51 -05:00
# Etc
"2:${config.ws.w2}" = [
2024-11-07 18:17:51 -05:00
{ class = "steam"; }
{ app_id = "heroic"; }
2024-11-07 18:17:51 -05:00
];
"22:${config.ws.w2a}" = [{ app_id = "looking-glass-client"; }];
"44:${config.ws.w4a}" = [{ app_id = "com.obsproject.Studio"; }];
2024-08-24 22:16:51 -04:00
};
2024-11-07 18:17:51 -05:00
focus.newWindow = "focus";
2024-08-24 22:16:51 -04:00
};
}