Files
dotfiles/README.md

1.5 KiB

dotfiles

Personal config, deployed with GNU Stow.

Layout

.
├── git/    -> $HOME              (.gitconfig)
├── nvim/   -> $HOME/.config/     (nvim/)
├── shell/  -> $HOME              (.zshrc, .mattrc, .musicrc)
└── tmux/   -> $HOME              (.config/tmux/{tmux.conf,tmux.conf.local,oh-my-tmux/})

Each subdirectory mirrors the target tree; stow symlinks its contents into the right destination.

Install

# prerequisite
brew install stow

git clone --recurse-submodules https://github.com/publicmatt/dotfiles ~/dotfiles
cd ~/dotfiles
make            # init submodules + deploy everything
make tmux       # or a single package

To remove links: stow -D <pkg> -t <target>.

tmux

Uses gpakosz/.tmux (oh-my-tmux), vendored as a git submodule at tmux/.config/tmux/oh-my-tmux/. Customizations live in tmux/.config/tmux/tmux.conf.local.

Notable features from the local overrides:

  • default C-b prefix (stock bindings preserved)
  • splits inherit current path; new windows start at $HOME
  • vi copy-mode, selections piped to pbcopy
  • prefix m toggles mouse
  • F12 toggles prefix off (pass-through for nested tmux / ssh)
  • powerline status bar with uptime, battery, hostname

Update upstream:

git submodule update --remote tmux/.config/tmux/oh-my-tmux

Before first make tmux, remove the existing ~/.config/tmux/ so stow can take over:

mv ~/.config/tmux ~/.config/tmux.bak
make tmux