This is a reference for myself or whoever may find it useful for the way I set up my development tools on a fresh install of macOS or a new laptop. The steps outlined were last run through on Nov 16 2022 running macOS 13.01 on a laptop with an Apple M2 chip.
- install terminal emulator, iTerm2 - iTerm2 website
- Change iTerm2 profile to use solarized colors in settings
- Use natural profile for moving between words - https://apple.stackexchange.com/questions/136928/using-alt-cmd-right-left-arrow-in-iterm
- Install xcode command line tools
xcode-select --install
- Install package manager for macOS,
brew
- Homebrew - Authenticate machine with GitHub, create ssh key and add to github - Github guide
- Install a terminal multiplexer, install
brew install tmux
- Github repo - Make
zsh
awesome out of the box, install Oh My Zsh - ohmyzsh website- install powerline fonts - https://github.com/powerline/fonts
- vim
- create
~/.tmp/
directory for vim - Use the same keys to navigate between tmux panes and vim buffers, install vim-tmux-navigator - https://github.com/christoomey/vim-tmux-navigator
- For file tree browsing, install vim nerdtree plugin - https://github.com/preservim/nerdtree
- solarized theme plugin - https://github.com/altercation/vim-colors-solarized
- We need fuzzy file finding, install vim ctrl-p plugin - https://github.com/kien/ctrlp.vim
- create
- ruby
- Simple utility to change ruby versions,
brew install chruby
- We need a way to install ruby versions,
brew install ruby-install
- Install latest ruby
ruby-install 3.1.2
. If you're running macOS 13 you may need to add the-- --enable-shared
option.
- Simple utility to change ruby versions,
- golang
- Golang version manager inspired by
rvm
, install gvm - https://github.com/moovweb/gvm - Install latest go
gvm install go1.19.3
. For whatever reason, on macOS 13 I needed to first install go viabrew install go
, then install the desired version, then "cleanup" withbrew install go
. I think this is becausebrew
has a compiled binary for darwin/arm64 which is required for the initial install, but it's better to use gvm afterwards.
- Golang version manager inspired by
- node
- Node version manager inspired by
rvm
, install nvm - https://github.com/nvm-sh/nvm#intro - install latest LTS release
nvm install --lts
- install yarn
npm install --global yarn
- Node version manager inspired by
- symlink dotfiles from this repo into homefolder, for example, from homefolder:
ln -s src/github.com/aprofeit/dotfiles/zshrc .zshrc
- Faster navigation of directories, install
brew install autojump
This is the rough guide to provide you a ruby/golang/javascript dev environment that exists solely in the terminal and can look like this