#!/usr/bin/env bash # vim:fileencoding=utf-8:foldmethod=marker # Link to skhrc for : ~/.config/skhd/skhdrc sudo yabai --load-sa yabai -m signal --add event=dock_did_restart action="sudo yabai --load-sa" # ensure that there are always 10 spaces spacestocreate=10 spaces=$((spacestocreate - $(yabai -m query --spaces | jq length))) while [ "$spaces" -gt 0 ]; do yabai -m space --create spaces=$((spaces - 1)) done yabai -m config \ mouse_follows_focus off \ focus_follows_mouse off \ mouse_modifier fn \ mouse_action1 move \ mouse_action2 resize \ mouse_drop_action swap \ window_origin_display default \ window_placement second_child \ window_border on \ window_border_width 2 \ window_border_blur on \ window_opacity on \ window_opacity_duration 0.1 \ normal_window_opacity 1.0 \ window_shadow float \ auto_balance off \ split_ratio 0.50 \ layout bsp \ top_padding 2 \ bottom_padding 2 \ left_padding 2 \ right_padding 2 \ window_gap 2 \ window_animation_duration 0.1 \ external_bar all:32:0 APPS_ABOVE=( "JetBrains Toolbox" "Mullvad VPN" "Sip" "iStat Menus Status" ) for app in "${APPS_ABOVE[@]}"; do yabai -m rule --add app="^$app\$" manage=off sticky=on layer=above border=off done yabai -m rule --add app="^CleanShot X\$" manage=off border=off APPS_UNMANAGED=( "System Preferences" ) for app in "${APPS_UNMANAGED[@]}"; do yabai -m rule --add app="^$app\$" manage=off done APPS_OPACITY=( "Alacritty" "kitty" "WezTerm" "wezterm-gui" ) for app in "${APPS_OPACITY[@]}"; do yabai -m rule --add app="^$app\$" opacity=0.98 done echo "$(date -Iseconds): [RELOAD] finished loading yabai conf"