This is a project created for syncing as much of my MacOS dev machine configuration as possible
- git
- If you intend on checking out this repo using SSH, an SSH key configured and added to your github
- On MacOS, brew for package installation
- This is based off of Atlassian's bare dotfile repo implementation
- Open a shell, and bare clone this repo into the
.dotfilesdirectorygit clone --bare [email protected]:verhey/dotfiles.git $HOME/.dotfiles
- Define the following alias in your shell:
alias dotfiles='/usr/bin/git --git-dir=$HOME/.dotfiles/ --work-tree=$HOME'- or
abbr -a dotfiles "/usr/bin/git --git-dir=$HOME/.dotfiles/ --work-tree=$HOME"if using fish
- Checkout the content from the bare repo into your home folder:
dotfiles checkout- If this fails, delete any dotfiles that may conflict, or back them up
- Try
dotfiles checkoutagain, and you should see the files in the root of this repo end up in your home dir
- To make
dotfiles statusoutput useful, set local config for this repo to ignore untracked files (as in, the rest of your home dir)dotfiles config --local status.showUntrackedFiles no
- If you (or another application has modified a dotfile) and you want to update it here, the
dotfilesalias you set up in previous steps works just likegitdoes.- Your
statuscommand is somewhat nerfed though, because you don't want to be tracking every file in your home directory
- Your
- From the
install/macosdirectory:brew bundleto install contents ofBrewfilezsh configure_macosto configure MacOS-specific settings- This is WIP-y, Apple seems to change what works and what doesn't with every MacOS version
- I've been trying out fish - to set it as the default system shell do:
sudo echo /opt/homebrew/bin/fish >> /etc/shellschsh -s /opt/homebrew/bin/fish- Someday the
zshpieces of this repo might disappear, or they'll get simpler
- Probably reboot