commit 8fce76e940f3c0dc29673bead42fc97725e812d6 parent 2e7df1e3a8f5f10c9239f5c0e714c14802fc04fe Author: Milutin Popovic <milutin@popovic.xyz> Date: Sun, 8 Mar 2026 11:56:49 +0100 add aerospace config Diffstat:
| M | system/host/mac.nix | | | 96 | ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++- |
1 file changed, 95 insertions(+), 1 deletion(-)
diff --git a/system/host/mac.nix b/system/host/mac.nix @@ -165,7 +165,101 @@ services.aerospace = { enable = true; settings = { - gaps.inner.horizontal = 10; + config-version = 2; + after-startup-command = [ ]; + start-at-login = false; + auto-reload-config = false; + enable-normalization-flatten-containers = true; + enable-normalization-opposite-orientation-for-nested-containers = true; + accordion-padding = 30; + default-root-container-layout = "tiles"; + default-root-container-orientation = "auto"; + on-focused-monitor-changed = [ "move-mouse monitor-lazy-center" ]; + automatically-unhide-macos-hidden-apps = false; + persistent-workspaces = [ "1" "2" "3" "4" "5" "6" "7" "8" "9" ]; + on-mode-changed = [ ]; + + key-mapping = { + preset = "qwerty"; + }; + + gaps = { + inner = { + horizontal = 10; + vertical = 10; + }; + outer = { + left = 10; + bottom = 10; + top = 10; + right = 10; + }; + }; + + mode.main.binding = { + alt-slash = "layout tiles horizontal vertical"; + alt-comma = "layout accordion horizontal vertical"; + + # Focus + alt-h = "focus left"; + alt-j = "focus down"; + alt-k = "focus up"; + alt-l = "focus right"; + + # Move + alt-shift-h = "move left"; + alt-shift-j = "move down"; + alt-shift-k = "move up"; + alt-shift-l = "move right"; + + # Resize + alt-minus = "resize smart -50"; + alt-equal = "resize smart +50"; + + # Workspace + alt-1 = "workspace 1"; + alt-2 = "workspace 2"; + alt-3 = "workspace 3"; + alt-4 = "workspace 4"; + alt-5 = "workspace 5"; + alt-6 = "workspace 6"; + alt-7 = "workspace 7"; + alt-8 = "workspace 8"; + alt-9 = "workspace 9"; + + # Move node to workspace + alt-shift-1 = "move-node-to-workspace 1"; + alt-shift-2 = "move-node-to-workspace 2"; + alt-shift-3 = "move-node-to-workspace 3"; + alt-shift-4 = "move-node-to-workspace 4"; + alt-shift-5 = "move-node-to-workspace 5"; + alt-shift-6 = "move-node-to-workspace 6"; + alt-shift-7 = "move-node-to-workspace 7"; + alt-shift-8 = "move-node-to-workspace 8"; + alt-shift-9 = "move-node-to-workspace 9"; + + + alt-space = "exec-and-forget open -a Kitty"; + alt-c = "exec-and-forget open -a Firefox"; + + # Workspace navigation + alt-tab = "workspace-back-and-forth"; + alt-shift-tab = "move-workspace-to-monitor --wrap-around next"; + + # Mode + alt-shift-semicolon = "mode service"; + }; + + mode.service.binding = { + esc = [ "reload-config" "mode main" ]; + r = [ "flatten-workspace-tree" "mode main" ]; + f = [ "layout floating tiling" "mode main" ]; + backspace = [ "close-all-windows-but-current" "mode main" ]; + alt-shift-h = [ "join-with left" "mode main" ]; + alt-shift-j = [ "join-with down" "mode main" ]; + alt-shift-k = [ "join-with up" "mode main" ]; + alt-shift-l = [ "join-with right" "mode main" ]; + }; }; };