My personal dotfiles for configuring macOS with Zsh and Homebrew.
Important
Please only open pull requests that fix bugs or add improvements without any breaking changes.
I recommend forking this repository to create your own set of dotfiles.
- macOS
- Homebrew (the install script will install Homebrew)
- Zsh (the install script will install Zsh via Homebrew)
- Handy binary scripts
- Custom color scheme
- Git aliases
- Shell aliases
- zsh / fzf
- git / delta syntax-highlighting diff tool
- Sensible macOS defaults
- Neovim
- macOS apps and VSCode extensions I use
- macOS tips & tricks
- Enable Firewall under System Settings → Network
- Point the DNS Servers to Cloudflare DNS
1.1.1.1
1.0.0.1
2606:4700:4700::1111
2606:4700:4700::1001
- Configure Git and GitHub SSH
- Generate SSH key and add it to the ssh-agent
- Add your public SSH key to GitHub account
- Test your authentication with:
ssh -T git@github.com
- Install fonts.
- Choose manual or automatic dotfiles installation below.
git clone git@github.com:nicksp/dotfiles.git ~/dotfiles
cd ~/dotfiles
./setup/zsh.sh
./setup/brew.sh
./setup/misc.sh
./setup/vscode.sh
./setup/bins.sh
./setup/symlinks.sh
To automate the setup of your dotfiles on a new machine, use the setup script from the main branch.
Caution
Use at your own risk!
git clone git@github.com:nicksp/dotfiles.git ~/dotfiles
~/dotfiles/setup.sh
This will install all required dotfiles in your home directory as symlinks. Everything is then configured via modifying files in ~/dotfiles
.
# Set macOS defaults
./setup/macos.sh
# Use alternative icons for apps
./setup/icons.sh
# Install colors schemes across the apps
bin/sync-color-themes
The dotfiles can be extended to suit additional local requirements by using the following files:
If this file exists, it will be automatically sourced after all the other shell related files allowing its content to add to or overwrite the existing aliases, settings, PATH, etc.
If this file exists, it will be automatically
included after the configurations from ~/.gitconfig
allowing
its content to overwrite or add to the existing git
configurations.
Tip
Use ~/.gitconfig.local
to store sensitive information such
as the git
user credentials for individual repositories.
MIT License.