This repository contains my personal configuration files (dotfiles
) designed specifically for macOS development environments. It sets up my preferred tools and settings across machines using GNU Stow, which makes it easy to manage and symlink configuration files into the correct locations on macOS systems.
Ensure you have the following installed on your system
Note
If you prefer not to install everything manually, you can use the Auto Installation script provided.
brew install stow
brew install --cask wezterm
brew install tmux zsh starship spotify_player lazygit neovim lsd lf bat ripgrep zsh-syntax-highlighting btop fzf fnm uv thefuck zoxide tlrc
Note
If you want to use SketchyBar, please install Xcode first by running the following command
xcode-select --install
brew tap FelixKratz/formulae
brew install sketchybar borders nikitabobko/tap/aerospace
These are desktop applications I personally use alongside my terminal setup. They’re optional and not required for the dotfiles to work.
brew install --cask amazon-q gitkraken notion orbstack postman raycast tableplus
Install a Nerd Font to correctly render icons used by tools like Starship, WezTerm, and lsd. Download Nerd Fonts Recommended: Hack Nerd Font, FiraCode Nerd Font or JetBrainsMono Nerd Font.
Tool | Description |
---|---|
WezTerm | A GPU-accelerated terminal emulator with modern features and Lua-based configuration. |
zsh | A powerful and extensible shell with custom prompt (Starship), completions, and syntax highlighting. |
tmux | Terminal multiplexer that allows for managing multiple sessions and panes in one window. |
Starship | A fast, customizable, and minimal shell prompt that works with any shell. |
spotify-player | A terminal-based Spotify client with a clean UI and keyboard-driven interface. |
Neovim | A modern, extensible Vim-based text editor configured with plugins and Lua in this setup. |
lsd | A modern replacement for ls with icons and better formatting. |
lf | A terminal file manager with vim-like keybindings and preview support. |
bat | A cat clone with syntax highlighting and Git integration for viewing files in the terminal. |
lazygit | A simple terminal UI for git commands, making git easier and faster to use. |
fzf | A command-line fuzzy finder that helps you search and open files, history, processes, and more efficiently. |
btop | A modern and visually appealing resource monitor for the terminal with mouse support. |
thefuck | A smart command-line tool that corrects your previous console command when you make a mistake. |
zoxide | A smarter cd command that remembers your frequently used directories. |
tldr | Simplified and community-driven man pages — shows practical examples for common commands. |
IdeaVim | Vim emulation plugin for IntelliJ IDEA and JetBrains IDEs. Enables Vim keybindings and modal editing. |
AeroSpace | A lightweight tiling window manager with support for custom layouts, dynamic gaps, and window management. |
sketchybar | Customizable macOS status bar with scriptable items and animations. |
JankyBorders | Window borders for macOS, often used with Aerospace. |
All tools are themed using the Catppuccin color palette (Mocha variant), providing a consistent pastel tone across:
- Terminal emulator (WezTerm)
- Shell prompt (Starship)
- Text editor (Neovim)
- File tools (bat, lsd, lf, etc.)
Run the install script directly (no need to clone):
bash <(curl -s https://raw.githubusercontent.com/Bourbxn/dotfiles/master/install.sh)
To completely remove all installed tools and configuration files:
bash <(curl -s https://raw.githubusercontent.com/Bourbxn/dotfiles/master/uninstall.sh)
Important
The auto installation and uninstallation scripts are built for macOS only. They are not compatible with Linux or Windows.
Clone the repo into your home directory:
cd ~
git clone https://github.com/Bourbxn/dotfiles.git
Use GNU Stow to symlink the configs:
cd ~/dotfiles
stow .
This will create symlinks like:
~/.zshrc
→dotfiles/.zshrc
~/.config/nvim/
→dotfiles/.config/nvim/
Reload your shell:
source ~/.zshrc
Launch Neovim (first time only) to trigger plugin installation:
nvim
For more details about the Neovim setup used in this dotfiles, see BourbxnNvim V2
Launch tmux (first time only) and press <C-b> + I
to install plugins:
git clone https://github.com/tmux-plugins/tpm ~/.tmux/plugins/tpm
tmux
Important
The default setup of Aerospace and SketchyBar may not be suitable for all screen resolutions or aspect ratios. You are encouraged to customize the configuration to better fit your display setup:
~/dotfiles/.config/aerospace/aerospace.toml
~/dotfiles/.config/sketchybar/sketchybarrc
After making any changes, be sure to reload both Aerospace and SketchyBar for the updates to take effect.
To enable useful keybindings for FZF (like reverse search in terminal), run:
$(brew --prefix)/opt/fzf/install
- If you encounter issues in Neovim related to Mason or run into errors, check the BourbxnNvimV2 repository under the Important Notes section.
- You can safely edit config files directly inside the dotfiles/ repo
- Some tools (like spotify-player) may require additional API tokens or setup
- To run
sketchybar
in the background automatically, runbrew services start sketchybar