Personal macOS dotfiles for a tiling + terminal-focused workflow.
Main stack:
yabai+skhdfor window managementsketchybar(Lua + SbarLua) for the top barneovim(Lazy.nvim-based config)ghostty+zsh(oh-my-zsh+powerlevel10k)zellijfor terminal multiplexingkarabiner-elementsfor key remapping
yabai/yabairc- window manager rules, paddings, signalsskhd/skhdrc- global hotkeys for layouts, focus, swaps, spacessketchybar/- Lua config, widgets, and helper binariesnvim/- Neovim config and plugin specsghostty/config- terminal emulator configzellij/- multiplexer config and layoutskarabiner/- key remapping (Cmd+hjkl → arrows, Caps Lock → Escape).zshrc,.p10k.zsh- shell and prompt setup
Installed by installs and/or referenced by configs:
- Core:
homebrew,git,curl,coreutils,gawk,gpg - Shell:
oh-my-zsh,powerlevel10k, zsh plugins - Editors/CLI:
neovim,ripgrep,jq,bat,fzf,zoxide,fd - Windowing/UI:
yabai,skhd,sketchybar,SbarLua,lua - SketchyBar helpers:
switchaudio-osx,nowplaying-cli, SF fonts - Runtime managers:
asdf(plugins fornodejs,yarn,ruby) - Terminal tools:
ghostty,zellij - Key remapping:
karabiner-elements
Also referenced in .zshrc as optional/user-local tools:
mise,sdkman,bun,ghcup, Docker CLI path, custom local bins
git clone https://github.com/<your-user>/<your-dotfiles>.git ~/dotfiles
cd ~/dotfilesbash installsinstalls covers most dependencies, but your shell config also uses fd:
brew install fdbash install-asdf-plugins
bash zsh-plugins-install
bash sketchybar/helpers/install.shsketchybar/helpers compiles helper binaries with make and swiftc, so install Xcode Command Line Tools if needed:
xcode-select --installRun from the repo root:
bash config.shThis links:
nvim->~/.config/nvimghostty->~/.config/ghosttyzellij->~/.config/zellijkarabiner->~/.config/karabiner.zshrcand.p10k.zsh->~/- copies
.zsh_secrets.example->~/.zsh_secrets
Edit ~/.zsh_secrets and fill values you need (example vars):
FONTAWESOME_NPM_AUTH_TOKENOPENAI_API_BASEOPENAI_API_KEY
yabai/yabairc calls:
sudo yabai --load-sa
For this to work cleanly, configure sudoers to allow that command without a password.
brew services start yabai
brew services start skhd
brew services start sketchybarYou can apply the tweaks in macconfigs:
bash macconfigs- Neovim notes:
nvim/README.md - SketchyBar notes:
sketchybar/README.md