This has been heavily derived from Mathias' dotfiles, with some additional customization from Dan Herbert's old dotfiles. The name comes from Stephen Tudor's dots.
You can clone the repository wherever you want. (I like to keep it in ~/Projects/dots, with ~/dots as a symlink.) The bootstrap script will pull in the latest version and copy the files to your home folder.
git clone https://github.com/johnmichel/dots.git && cd dots && source bootstrap.shTo update, cd into your local dots repository and then:
source bootstrap.shAlternatively, to update while avoiding the confirmation prompt:
set -- -f; source bootstrap.shTo install these dotfiles without Git:
cd && curl -#L https://github.com/johnmichel/dots/tarball/main | tar -xzv --strip-components 1 --exclude={README.md,bootstrap.sh,LICENSE}To update later on, just run that command again.
If ~/.path exists, it will be sourced along with the other files, before any feature testing (such as detecting which version of ls is being used) takes place.
Here’s an example ~/.path file that adds ~/utils to the $PATH:
export PATH="$HOME/utils:$PATH"If ~/.extra exists, it will be sourced along with the other files. You can use this to add a few custom commands without the need to fork this entire repository, or to add commands you don’t want to commit to a public repository.
Your ~/.extra could look something like this:
# Git credentials
GIT_AUTHOR_NAME="Your Name"
GIT_COMMITTER_NAME="$GIT_AUTHOR_NAME"
git config --global user.name "$GIT_AUTHOR_NAME"
GIT_AUTHOR_EMAIL="[email protected]"
GIT_COMMITTER_EMAIL="$GIT_AUTHOR_EMAIL"
git config --global user.email "$GIT_AUTHOR_EMAIL"You could also use ~/.extra to override settings, functions and aliases from my dots repository. It’s probably better to fork this repository instead, though.
When setting up a new Mac, you may want to set some sensible OS X defaults:
chmod +x .macos
./.macosWhen setting up a new Mac, you may want to install some common Homebrew formulae (after [installing Homebrew=(https://brew.sh/#install), of course):
chmod +x brew.sh
./brew.sh