Skip to content

Personal dotfiles managed with GNU Stow for easy configuration and environment setup across machines.

Notifications You must be signed in to change notification settings

Bourbxn/dotfiles

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

93 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Bourbxn's dotfiles

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.

image

Requirements

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.

Stow

brew install stow

WezTerm

brew install --cask wezterm

CLI Tools

brew install tmux zsh starship spotify_player lazygit neovim lsd lf bat ripgrep zsh-syntax-highlighting btop fzf fnm uv thefuck zoxide tlrc

UI & Window Customization

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

Desktop Applications (optional)

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

Nerd Fonts (for icons/symbols)

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 List

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.

Theme

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.)

Installation

Auto Installation

Run the install script directly (no need to clone):

bash <(curl -s https://raw.githubusercontent.com/Bourbxn/dotfiles/master/install.sh)

Auto Uninstallation

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.

Manual Installation

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:

  • ~/.zshrcdotfiles/.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.

Optional Setup

FZF Key bindings

To enable useful keybindings for FZF (like reverse search in terminal), run:

$(brew --prefix)/opt/fzf/install

Troubleshooting

  • If you encounter issues in Neovim related to Mason or run into errors, check the BourbxnNvimV2 repository under the Important Notes section.

Notes

  • 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, run brew services start sketchybar

About

Personal dotfiles managed with GNU Stow for easy configuration and environment setup across machines.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published