This repository uses GNU Stow to manage dotfiles. Stow creates symbolic links from this directory to your home directory, keeping your configurations organized and version-controlled.
Each top-level directory represents a “package.” For example, here’s the baseline at the time of writing this README:
| Program | Description |
|---|---|
doom | Emacs configuration |
git | Git global configuration |
ispell | Dictionary and spellcheck settings |
skhd | macOS hotkey daemon configuration |
yabai | macOS tiling window manager configuration |
zsh | Shell configuration and plugins |
For a fresh installation, run the provided bootstrap script. It will check for Stow and link all packages automatically.
chmod +x bootstrap.sh ./bootstrap.shThis creates the symlinks for a specific application.
stow <package_name>This removes the symlinks.
stow -D <package_name>Useful if you’ve added new files to a package and need to refresh the links.
stow -R <package_name>If you see a conflict error (e.g., * existing target is neither a link nor a
directory), it means a physical file already exists where Stow is trying to
place a symlink.
- Backup the existing file:
mv ~/.zshrc ~/.zshrc.bak - Run stow again:
stow zsh - Verify: Check the link with
ls -l ~/.zshrc