Stow Workflow
The repository is a GNU Stow package root targeting ~/. Each top-level directory (zsh, neovim, starship, hypr, scripts, …) is a stow package whose contents are symlinked into your home directory.
Always use dot stow
Section titled “Always use dot stow”Apply packages with dot stow (or dot update, which refreshes stow). Do not run GNU stow directly from the repo root: dot applies the correct adopt / no-folding flow and the public-then-private ordering.
dot stow # stow public + privatedot stow --public # public onlydot stow --private # private onlyWhat dot stow does
Section titled “What dot stow does”- Lays down public packages first, then the private overlay from
~/.config/dotfiles-private. - Stows the Hypr package with
--no-foldingand creates/repairs the~/.config/hypr/hostsymlink for the active host. - Adopts existing files where needed so a fresh machine does not clobber stock config.
Ignore rules
Section titled “Ignore rules”.stowrc sets the stow target and ignore rules. Files that should never be symlinked into ~/ are ignored there, including top-level docs, the dot/ source, the docs/ site, and repo metadata. Keep .stowrc ignore rules in sync when adding root-only files.
Health check
Section titled “Health check”dot doctor runs a dry-run restow to detect drift, alongside its other checks. Run it after changing stow packages to confirm nothing is broken.