This repository serves as my way to help me setup and maintain my Mac. It takes the effort out of installing everything manually. Everything needed to install my preferred setup of macOS is detailed in this readme. Feel free to explore, learn and copy parts for your own dotfiles. Enjoy!
A Fresh macOS Setup
These instructions are for setting up new Mac devices. Instead, if you want to get started building your own dotfiles, you can find those instructions below.
Backup your data
If you're migrating from an existing Mac, you should first make sure to backup all of your existing data. Go through the checklist below to make sure you didn't forget anything before you migrate.
- Did you commit and push any changes/branches to your git repositories?
- Did you remember to save all important documents from non-iCloud directories?
- Did you save all of your work from apps which aren't synced through iCloud?
- Did you remember to export important data from your local database?
- Did you update mackup to the latest version and ran
Setting up your Mac
After backing up your old Mac you may now follow these install instructions to setup a new one.
Update macOS to the latest version through system preferences
Generate a new public and private SSH key by running:
curl https://raw.githubusercontent.com/driesvints/dotfiles/HEAD/ssh.sh | sh -s "<your-email-address>"
Clone this repo to
git clone --recursive firstname.lastname@example.org:driesvints/dotfiles.git ~/.dotfiles
Run the installation with:
After mackup is synced with your cloud storage, restore preferences by running
Restart your computer to finalize the process
Your Mac is now ready to use!
💡You can use a different location than
~/.dotfilesif you want. Make sure you also update the reference in the
Cleaning your old Mac (optionally)
Your Own Dotfiles
Please note that the instructions below assume you already have set up Oh My Zsh so make sure to first install Oh My Zsh before you continue.
If you want to start with 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.
Check out the
aliases.zsh file and add your own aliases. If you need to tweak your
$PATH check out the
path.zsh file. These files get loaded in because the
$ZSH_CUSTOM setting points to the
.dotfiles directory. You can adjust the
.zshrc file to your liking to tweak your Oh My Zsh setup. More info about how to customize Oh My Zsh can be found here.
When installing these dotfiles for the first time you'll need to backup all of your settings with Mackup. Install Mackup and backup your settings with the commands below. Your settings will be synced to iCloud 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 directory or different storage than iCloud, checkout the documentation. Also make sure your
.zshrc file is symlinked from your dotfiles repo to your home directory.
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 @subnixr for his awesome Zsh theme! Thanks to Caneco for the header in this readme. And lastly, I'd like to thank Emma Fabre for her 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.