Skip to content

Instantly share code, notes, and snippets.

@OnurVar
Last active June 15, 2024 23:08
Show Gist options
  • Save OnurVar/80e5636a198984b8473d47cd8eae600a to your computer and use it in GitHub Desktop.
Save OnurVar/80e5636a198984b8473d47cd8eae600a to your computer and use it in GitHub Desktop.
OSX Bootstrap Scripts
#!/bin/zsh
echo "Bootstrapping Android & Java"
echo "Setting up PATH"
echo "# Android SDK" >> ~/.zshrc
echo "export ANDROID_HOME=\$HOME/Library/Android/sdk" >> ~/.zshrc
echo "export PATH=\$PATH:\$ANDROID_HOME/emulator" >> ~/.zshrc
echo "export PATH=\$PATH:\$ANDROID_HOME/platform-tools" >> ~/.zshrc
echo "\n" >> ~/.zshrc
echo "# Java" >> ~/.zshrc
echo "export JAVA_HOME=\$(/usr/libexec/java_home)" >> ~/.zshrc
echo "export PATH=\$PATH:\$JAVA_HOME/bin" >> ~/.zshrc
echo "\n" >> ~/.zshrc
echo "Installing Android Studio"
brew install --cask android-studio
echo 'DONE'
#!/bin/zsh
echo "Bootstrapping Apps"
echo "Cleaning Brew"
brew update
brew cleanup
echo "Installing Cask Apps"
CASKS1=(
bartender
figma
geekbench
google-chrome
)
CASKS2=(
google-drive
iterm2
jiggler
libreoffice
macs-fan-control
)
CASKS3=(
monitorcontrol
mos
notion
paintbrush
postico
)
CASKS4=(
postman
pycharm-ce
slack
sourcetree
spotify
tunnelblick
)
CASKS5=(
visual-studio-code
vlc
vnc-server
vnc-viewer
zoom
)
brew install ${CASKS1[@]} --cask
brew install ${CASKS2[@]} --cask
brew install ${CASKS3[@]} --cask
brew install ${CASKS4[@]} --cask
brew install ${CASKS5[@]} --cask
echo 'DONE'
#!/bin/zsh
echo "Bootstrapping Homebrew"
echo "Setting up PATH"
echo "# Homebrew" >> ~/.zshrc
echo 'eval $(/opt/homebrew/bin/brew shellenv)' >> ~/.zshrc
echo "\n" >> ~/.zshrc
echo "Installing Homebrew"
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
echo "Loading Homebrew"
eval $(/opt/homebrew/bin/brew shellenv)
echo 'DONE'
#!/bin/zsh
echo "Bootstrapping nvm for Node"
echo "Setting up PATH"
echo "# nvm" >> ~/.zshrc
echo 'export NVM_DIR="$([ -z "${XDG_CONFIG_HOME-}" ] && printf %s "${HOME}/.nvm" || printf %s "${XDG_CONFIG_HOME}/nvm")"' >> ~/.zshrc
echo '[ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh" # This loads nvm' >> ~/.zshrc
echo "\n" >> ~/.zshrc
echo "Installing nvm"
bash -c 'curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.7/install.sh | bash'
echo 'DONE'
#!/bin/zsh
echo "Bootstrapping pyenv & virtualenv for Python"
echo "Setting up PATH"
echo "# pyenv" >> ~/.zshrc
echo 'export PYENV_ROOT="$HOME/.pyenv"' >> ~/.zshrc
echo 'command -v pyenv >/dev/null || export PATH="$PYENV_ROOT/bin:$PATH"' >> ~/.zshrc
echo 'eval "$(pyenv init -)"' >> ~/.zshrc
echo 'eval "$(pyenv virtualenv-init -)"' >> ~/.zshrc
echo "\n" >> ~/.zshrc
echo "Installing pyenv"
brew install pyenv
echo "Installing pyenv virtualenv plugin"
brew install pyenv-virtualenv
echo 'DONE'
#!/bin/zsh
echo "Bootstrapping Root"
echo "Creating folders"
mkdir $HOME/Projects
mkdir $HOME/Storage
echo "Creating ZSH files"
touch ~/.zshrc
echo "Configuring OSX"
defaults write NSGlobalDomain AppleShowAllExtensions -bool true
echo "Creating SSH keys"
ssh-keygen -t rsa -b 4096 -C "var.onur@hotmail.com" -f $HOME/.ssh/OnurVar-GitHub -q -P ""
echo "github.com [OnurVar] created"
ssh-keygen -t rsa -b 4096 -C "onur.var@massiverocket.com" -f $HOME/.ssh/OnurVar-MassiveRocket-Azure -q -P ""
echo "dev.azure.com [OnurVar-MassiveRocket] created"
echo "Creating SSH configs"
touch ~/.ssh/config
echo "Host github.com" >> ~/.ssh/config
echo " UseKeychain yes" >> ~/.ssh/config
echo " IdentityFile ~/.ssh/OnurVar-GitHub" >> ~/.ssh/config
echo "" >> ~/.ssh/config
echo "Host ssh.dev.azure.com" >> ~/.ssh/config
echo " UseKeychain yes" >> ~/.ssh/config
echo " IdentityFile ~/.ssh/OnurVar-MassiveRocket-Azure" >> ~/.ssh/config
echo 'DONE'
#!/bin/zsh
echo "Bootstrapping rbenv for Ruby"
echo "Setting up PATH"
echo "# rbenv" >> ~/.zshrc
echo 'eval "$(rbenv init - zsh)"' >> ~/.zshrc
echo "\n" >> ~/.zshrc
echo "Installing rbenv"
brew install rbenv
echo 'DONE'
#!/bin/zsh
echo "Bootstrapping Zulu & nvm & pyenv & rbenv"
echo "Source zshrc"
source ~/.zshrc
echo "Installing Zulu17 JDK"
brew install --cask zulu@17
echo "Installing Watchman"
brew install watchman
echo "Installing Python 3.11"
pyenv install 3.11
echo "Installing Ruby 3.2.3"
rbenv install 3.2.3
rbenv global 3.2.3
echo "Installing Node 20"
nvm install 20
echo "Installing Yarn"
npm install yarn -g
echo 'DONE'
@OnurVar
Copy link
Author

OnurVar commented Jan 5, 2021

Install Order

  1. sh osx_root.sh
  2. sh osx_brew.sh
  3. [Reload Terminal]
  4. sh osx_ruby.sh
  5. sh osx_node.sh
  6. [Reload Terminal]
  7. sh osx_android.sh
  8. sh osx_python.sh
  9. [Reload Terminal]
  10. sh osx_tools.sh
  11. sh osx_apps.sh

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment