aboutsummaryrefslogtreecommitdiff
path: root/macos.local/flake/system/aerospace.nix.org
diff options
context:
space:
mode:
authorjjanzen <jjanzen@jjanzen.ca>2025-03-05 22:17:31 -0600
committerjjanzen <jjanzen@jjanzen.ca>2025-03-05 22:17:31 -0600
commite6edbad14d8255743c7b259a1985db5fb5bd4e91 (patch)
treeab535ebf7942b3935b8ec35158291c09226faf73 /macos.local/flake/system/aerospace.nix.org
parentc1f8c535d59658dd29d199c62326b9436a489ecf (diff)
system changes
Diffstat (limited to 'macos.local/flake/system/aerospace.nix.org')
-rw-r--r--macos.local/flake/system/aerospace.nix.org96
1 files changed, 96 insertions, 0 deletions
diff --git a/macos.local/flake/system/aerospace.nix.org b/macos.local/flake/system/aerospace.nix.org
new file mode 100644
index 0000000..a0c72df
--- /dev/null
+++ b/macos.local/flake/system/aerospace.nix.org
@@ -0,0 +1,96 @@
+#+title: Aerospace Configuration
+
+Enable Aerospace as a window manager for macOS. I have disabled gaps, move the mouse to follow windows, and an =i3=-like binding configuration.
+#+begin_src nix
+ { config, pkgs, ... }:
+
+ {
+ services.aerospace = {
+ enable = true;
+ settings = {
+ gaps = {
+ outer.left = 0;
+ outer.bottom = 0;
+ outer.top = 0;
+ outer.right = 0;
+ };
+ on-focus-changed = [
+ "move-mouse window-lazy-center"
+ ];
+ on-window-detected = [
+ {
+ "if".app-name-regex-substring = "mpv";
+ run = [
+ "layout floating"
+ ];
+ }
+ ];
+ workspace-to-monitor-force-assignment = {
+ "1" = "main";
+ "2" = "main";
+ "3" = "main";
+ "4" = "main";
+ "5" = "main";
+ "6" = "main";
+ "7" = "main";
+ "8" = "main";
+ "9" = [
+ "secondary"
+ "dell"
+ ];
+ "10" = [
+ "secondary"
+ "built-in"
+ ];
+ };
+ mode.main.binding = {
+ cmd-enter = "exec-and-forget open -n /Applications/Ghostty.app/";
+ cmd-shift-enter = "exec-and-forget /opt/homebrew/bin/emacs";
+ cmd-d = "exec-and-forget ~/.local/bin/launcher";
+ cmd-shift-f = "fullscreen";
+ cmd-shift-space = "layout floating tiling";
+
+ cmd-h = "focus --boundaries-action wrap-around-the-workspace left";
+ cmd-j = "focus --boundaries-action wrap-around-the-workspace down";
+ cmd-k = "focus --boundaries-action wrap-around-the-workspace up";
+ cmd-l = "focus --boundaries-action wrap-around-the-workspace right";
+
+ cmd-shift-h = "move left";
+ cmd-shift-j = "move down";
+ cmd-shift-k = "move up";
+ cmd-shift-l = "move right";
+
+ cmd-shift-minus = "resize smart -50";
+ cmd-shift-equal = "resize smart +50";
+
+ cmd-1 = "workspace 1";
+ cmd-2 = "workspace 2";
+ cmd-3 = "workspace 3";
+ cmd-4 = "workspace 4";
+ cmd-5 = "workspace 5";
+ cmd-6 = "workspace 6";
+ cmd-7 = "workspace 7";
+ cmd-8 = "workspace 8";
+ cmd-9 = "workspace 9";
+ cmd-0 = "workspace 10";
+
+ cmd-shift-1 = "move-node-to-workspace 1";
+ cmd-shift-2 = "move-node-to-workspace 2";
+ cmd-shift-3 = "move-node-to-workspace 3";
+ cmd-shift-4 = "move-node-to-workspace 4";
+ cmd-shift-5 = "move-node-to-workspace 5";
+ cmd-shift-6 = "move-node-to-workspace 6";
+ cmd-shift-7 = "move-node-to-workspace 7";
+ cmd-shift-8 = "move-node-to-workspace 8";
+ cmd-shift-9 = "move-node-to-workspace 9";
+ cmd-shift-0 = "move-node-to-workspace 10";
+
+ cmd-ctrl-shift-h = "join-with left";
+ cmd-ctrl-shift-j = "join-with down";
+ cmd-ctrl-shift-k = "join-with up";
+ cmd-ctrl-shift-l = "join-with right";
+ };
+ };
+ };
+ }
+#+end_src