My dotfiles for macOS. This will help you get started setting up a fresh new Mac.
I use GNU stow to manage symlinks for configurations.
You need to run z shell (zsh), which is default since macOS Catalina, in 2019.
You'll need to have homebrew installed.
Then you'll need git and stow to install this dotfiles repository.
brew install git stow
git clone --recurse-submodules git@github.com:sunpech/dotfiles.git
mv dotfiles ~/.dotfiles
cd ~/.dotfiles
Use stow to create symlinks for config files.
I disagree with running stow .
at the top of the project directory to symlink everything. I think it's better to organize by directory where it's more modular, which is the approach of this repo.
stow zsh ohmyzsh alacritty powerlevel10k nvim vim git wezterm
After running stow above, you should be setup with your dotfiles. You may want to install extras, or even update some submodules-- see sections below.
I use ohmyz.sh (Also see: ohmyzsh Github) and powerlevel10k theme.
I no longer use bash, or Fish Shell with oh-my-fish.
There are 2 submodules in this project:
Be sure to read this. In short, run:
git submodule update
Other commands:
f you already cloned the repository without submodules, you can manually initialize and update them:
git submodule update --init --recursive
After pulling changes to the main repository, you may also need to pull updates for submodules if they have changed. You can use the following command:
git submodule update --remote --merge
Note: The ohmyzsh github has the default location at ~/.oh-my-zsh
. I believe the old project was oh-my-zsh (under robbyrussell), before it got moved to ohmyzsh. I prefer ~/.ohmyzsh
to keep the naming structure.
You'll need to have these installed.
- eza - A modern, maintained replacement for ls.
- rbenv - For managing rubies.
- Postgres.app - Postgres for Mac.
- Sourcetree - Git GUI from Atlassian.
- homebrew - Mac package manager.
- zoxide - A smarter cd command.
These are some other important homebrew packages.
brew install neovim fd rg ast-grep lazygit
brew install zsh-autosuggestions zsh-syntax-highlighting powerlevel10k font-meslo-lg-nerd-font
brew install node openssl rbenv ruby-build wget vim tig rename ssh-copy-id rename toilet tree glances go hugo fastfetch yt-dlp fzf zoxide eza
brew install --cask wezterm
I also have a more up to date repo, Best Software List.
You may want to:
- Change your computer’s name or local hostname on Mac
- Disable Apple Photos from auto-launching when plugging in sdcard . Run command below.
defaults -currentHost write com.apple.ImageCapture disableHotPlug -bool YES
Other set up links: