This repository serves as my way to help me setup and maintain my Mac. It takes the effort out of installing everything manually. Everything which is needed to install my preffered setup of macOS is detailed in this readme. Feel free to explore, learn and copy parts for your own dotfiles. Enjoy! 😄
Read the blog post: https://driesvints.com/blog/getting-started-with-dotfiles
Follow these install instructions to setup a new Mac.
- Update macOS to the latest version with the App Store
- Install Xcode from the App Store, open it and accept the license agreement
- Install macOS Command Line Tools by running
xcode-select --install
- Copy public and private SSH keys to
~/.ssh
and make sure they're set to600
- Clone this repo to
~/.dotfiles
- Append
/usr/local/bin/zsh
to the end of your/etc/shells
file - Run
install.sh
to start the installation - Make sure Dropbox is set up and synced
- Restore preferences by running
mackup restore
- Restart your computer to finalize the process
Your Mac is now ready to use!
If you want to start your own dotfiles from this setup, it's pretty easy to do so. First of all you'll need to fork this repo. After that you can tweak it the way you want.
Go through the .macos
file and adjust the settings to your liking. You can find much more settings at the original script by Mathias Bynens and Kevin Suttle's macOS Defaults project.
Check out the Brewfile
file and adjust the apps you want to install for your machine. Use their search page to check if the app you want to install is available.
Check out the aliases.zsh
file and add your own aliases. If you need to tweak your $PATH
check out the path.zsh
file.
One thing you'll need to do manually is add your ~/.zshrc
file. You can't symlink the .zshrc
file from your dotfiles because Mackup will already symlink your .zshrc
from your home directory. That's why we'll need to create the file manually. Add the contents below to a .zshrc
file in your user directory. What it will do is load the .zshrc
file from your dotfiles. Make sure that the path to your dotfiles is correct.
# Load Zsh
source ~/.dotfiles/.zshrc
I've thought about backing up the
.zshrc
file entirely to Mackup and removing it from this repo. But I like it to be versioned with the repo so I can use it for documentation and as an example. I also believe that it makes more sense to keep it in this repo because it's pretty tied into this repo's files and settings.
When installing these dotfiles for the first time you'll need to backup all of your settings with Mackup. Install and backup your settings with the command below. Your settings will be synced to your Dropbox so you can use them to sync between computers and reinstall them when reinstalling your Mac. If you want to save your settings to a different folder or different medium than Dropbox, checkout the documentation.
brew install mackup
mackup backup
You can tweak the shell theme, the Oh My Zsh settings and much more. Go through the files in this repo and tweak everything to your liking.
Enjoy your own Dotfiles!
I first got the idea for starting this project by visiting the Github does dotfiles project. Both Zach Holman and Mathias Bynens were great sources of inspiration. Sourabh Bajaj's Mac OS X Setup Guide proved to be invaluable. Thanks to Taylor Otwell for his awesome Zsh theme! And lastly, I'd like to thank Maxime Fabre for his excellent presentation on Homebrew which made me migrate a lot to a Brewfile
and Mackup.
In general, I'd like to thank every single one who open-sources their dotfiles for their effort to contribute something to the open-source community. Your work means the world! 🌍 ❤️