Personal macOS dotfiles organised by topic. Shell files are auto-loaded, symlinks are auto-linked, and install scripts are auto-run - no manual registration needed.
Prerequisites: git, curl, zsh
git clone https://github.com/itsBen/.dotfiles ~/.dotfiles
cd ~/.dotfiles
./setup/install.sh
exec zshInstall output is logged to ~/.dotfiles-install.log.
Everything is organised into topic folders. Files are discovered automatically by name and extension - nothing needs to be registered manually.
| Pattern | Loaded when | Purpose |
|---|---|---|
bin/* |
Always | Added to $PATH |
topic/path.zsh |
First | $PATH and environment setup |
topic/*.zsh |
After path files, before completions | Aliases, functions, config |
topic/completion.zsh |
Last, after compinit |
Autocomplete definitions |
topic/install.sh |
On setup/install or setup/update |
Install dependencies |
topic/*.symlink |
On setup/install |
Symlinked to ~/.<name> |
To add a new topic, create a folder and drop files in - they are picked up automatically.
To remove the dotfile configs, double-check the contents of each file before removing so you don't lose custom settings.
unlink ~/.gitignore_global
unlink ~/.gitconfig
unlink ~/.editorconfig
rm ~/.zshrc # careful - this removes your shell config
rm -rf ~/.dotfiles
rm -rf ~/.oh-my-zsh
chsh -s /bin/bash # revert to Bash if desiredThis setup is based on and inspired by:
