yep, more dotfiles
1{ config
2, lib
3, ...
4}:
5
6let
7 cfg = config.local.fragment.yabai;
8
9 gap = 0;
10in
11{
12 options.local.fragment.yabai.enable = lib.mkEnableOption ''
13 Yabai tiling manager for macOS (Darwin-only)
14 '';
15
16 config = lib.mkIf cfg.enable {
17 services.yabai = {
18 enable = true;
19
20 config = {
21 menubar_opacity = 0.5;
22
23 mouse_follows_focus = "off";
24 focus_follows_mouse = "off";
25
26 display_arrangement_order = "default";
27
28 window_origin_display = "default";
29 window_placement = "second_child";
30 window_zoom_persist = "on";
31
32 insert_feedback_color = "0xffd75f5f";
33
34 split_ratio = 0.5;
35 split_type = "auto";
36 auto_balance = "off";
37
38 window_gap = gap;
39 top_padding = gap;
40 bottom_padding = gap;
41 left_padding = gap;
42 right_padding = gap;
43
44 layout = "bsp";
45
46 mouse_modifier = "fn";
47 mouse_action1 = "move";
48 mouse_action2 = "resize";
49 mouse_drop_action = "swap";
50 };
51 };
52
53 services.skhd = {
54 enable = true;
55
56 skhdConfig = '''';
57 };
58 };
59}