Awesome
~nicksp 🌮
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.
[!WARNING] I recommend forking this repository to create your own set of dotfiles.
Requirements
- macOS
- Homebrew (the install script will install Homebrew)
- Zsh (the install script will install Zsh via Homebrew)
What's in there?
- Handy binary scripts.
- Custom color scheme.
- Custom zsh theme with Git status, etc. using Starship.
- Git aliases.
- Shell aliases.
- zsh / fzf.
- git / delta syntax-highlighting diff tool.
- Sensible macOS defaults.
- Config for other apps and utils.
- macOS apps and VSCode extensions I use.
- macOS tips & tricks.
Installation
-
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
-
Test your authentication with:
ssh -T git@github.com
-
Install MonoLisa font
-
Choose manual or automatic dotfiles installation below
Manually
git clone git@github.com:nicksp/dotfiles.git ~/dotfiles
cd ~/dotfiles
./setup/zsh.sh
./setup/brew.sh
./setup/misc.sh
./setup/symlinks.sh
Automatically
To automate the setup of your dotfiles on a new machine, use the setup script.
[!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
.
Extras
Set macOS defaults
set-defaults
Use alternative apps icons
sync-apps-icons
Install colors themes
sync-color-themes
Local customizations
The dotfiles can be extended to suit additional local requirements by using the following files:
~/.zsh.local
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.
~/.gitconfig.local
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 thegit
user credentials for individual repositories.
Updating
To update an existing install:
cd ~/dotfiles
git pull
./setup.sh
License
MIT License.