Skip to content

Instantly share code, notes, and snippets.

@dgraham
Last active April 6, 2024 17:18
Show Gist options
  • Star 9 You must be signed in to star a gist
  • Fork 4 You must be signed in to fork a gist
  • Save dgraham/5ee463e66ee913e343b2d610532c4b02 to your computer and use it in GitHub Desktop.
Save dgraham/5ee463e66ee913e343b2d610532c4b02 to your computer and use it in GitHub Desktop.
A setup script for macOS development.
xcode-select --install
if [ ! -x /opt/homebrew/bin/brew ]; then
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
fi
brew tap 'homebrew/bundle'
brew tap 'homebrew/services'
brew install automake clang-format cmake icu4c libressl libxml2 openssl pkg-config readline sqlite yajl
brew install deno go node python ruby rust
brew install ctags fd git gnupg graphviz jq neovim pngquant ripgrep rust-analyzer
brew install launchdns memcached mysql nginx postgresql redis
git config --global user.name "David Graham"
git config --global user.email "david.malcom.graham@gmail.com"
git config --global credential.helper osxkeychain
git config --global pull.rebase false
git config --global init.defaultBranch main
git clone https://github.com/dgraham/dotvim.git ~/.vim
cd ~/.vim
git submodule update --init
ln -s ~/.vim/vimrc ~/.vimrc
mkdir -p ~/.config/nvim
ln -s ~/.vim/lua/init.lua ~/.config/nvim/init.lua
cd ~
cargo install rustfmt
npm install -g prettier typescript typescript-language-server vscode-langservers-extracted
curl -L -o /tmp/mute.zip https://github.com/dgraham/mute-github-thread/raw/master/Mute%20GitHub%20Thread.zip
unzip -d /tmp/mute /tmp/mute.zip > /dev/null
mv /tmp/mute/Mute\ GitHub\ Thread.workflow ~/Library/Services
rm -rf /tmp/mute.zip /tmp/mute
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment