Last active
June 27, 2023 18:31
-
-
Save adamhl8/652ab4ae6cb50593fd8b52da542ef50f to your computer and use it in GitHub Desktop.
Mac Setup
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
#!/bin/bash | |
set -euo pipefail | |
IFS=$'\n\t' | |
zshrc="${HOME}/.zshrc" | |
ohmyzsh="${HOME}/.oh-my-zsh" | |
sudo -v | |
cd "${HOME}" | |
read -r -p "Enter your First and Last name: " firstlast | |
read -r -p "Enter your SWF email: " email | |
read -r -p "Enter your GitLab PAT: " GITLAB_PAT | |
echo "Cleaning up..." | |
sudo rm -rf "${HOME}/.npm" | |
sudo rm -rf "${HOME}/.nvm" | |
sudo rm -rf "${ohmyzsh}.old" | |
sudo rm -f "${zshrc}.old" | |
[ -e "${ohmyzsh}" ] && mv "${ohmyzsh}" "${ohmyzsh}.old" | |
[ -e "${zshrc}" ] && mv "${zshrc}" "${zshrc}.old" | |
xcode-select --install 2>/dev/null || true | |
echo | |
read -rsn1 -p "WAIT FOR XCODE DEV TOOLS TO FINISH INSTALLING. Once done, press any key to continue." | |
echo;echo | |
sudo xcodebuild -license accept | |
echo "Installing oh-my-zsh..." | |
export RUNZSH="no" | |
sh -c "$(curl -fsSL https://raw.githubusercontent.com/ohmyzsh/ohmyzsh/master/tools/install.sh)" | |
echo "Installing homebrew..." | |
NONINTERACTIVE=1 /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)" | |
(echo; echo 'eval "$(/opt/homebrew/bin/brew shellenv)"') >>"${HOME}/.zshrc" | |
eval "$(/opt/homebrew/bin/brew shellenv)" | |
echo "Installing nvm..." | |
brew install nvm | |
echo "Installing OpenJDK 17..." | |
brew install openjdk@17 | |
echo 'export PATH="$HOMEBREW_PREFIX/opt/openjdk@17/bin:$PATH"' >>"${HOME}/.zshrc" | |
export PATH="$HOMEBREW_PREFIX/opt/openjdk@17/bin:$PATH" | |
echo "Installing IntelliJ..." | |
brew install --cask intellij-idea | |
echo "Installing Docker..." | |
brew install --cask docker | |
echo "Installing iTerm2..." | |
brew install --cask iterm2 | |
echo "Installing Rectangle..." | |
brew install --cask rectangle | |
tee -a "${zshrc}" >/dev/null <<EOF | |
export NVM_DIR="$HOME/.nvm" | |
[ -s "$HOMEBREW_PREFIX/opt/nvm/nvm.sh" ] && \. "$HOMEBREW_PREFIX/opt/nvm/nvm.sh" # This loads nvm | |
[ -s "$HOMEBREW_PREFIX/opt/nvm/etc/bash_completion.d/nvm" ] && \. "$HOMEBREW_PREFIX/opt/nvm/etc/bash_completion.d/nvm" # This loads nvm bash_completion | |
EOF | |
export NVM_DIR="$HOME/.nvm" | |
[ -s "$HOMEBREW_PREFIX/opt/nvm/nvm.sh" ] && \. "$HOMEBREW_PREFIX/opt/nvm/nvm.sh" | |
[ -s "$HOMEBREW_PREFIX/opt/nvm/etc/bash_completion.d/nvm" ] && \. "$HOMEBREW_PREFIX/opt/nvm/etc/bash_completion.d/nvm" | |
echo "Installing node LTS..." | |
nvm install --lts | |
npm install -g npm | |
echo "Installing yarn..." | |
npm install -g yarn | |
echo "Setting up .gitconfig..." | |
git config --global user.name "${firstlast}" | |
git config --global user.email "${email}" | |
git config --global user.password "${GITLAB_PAT}" | |
echo "export GITLAB_PAT=${GITLAB_PAT}" | tee -a "${zshrc}" >/dev/null | |
echo 'export CI_JOB_TOKEN=${GITLAB_PAT}' | tee -a "${zshrc}" >/dev/null | |
echo | |
echo "Checking that binaries are on PATH:" | |
echo "nvm: $(nvm --version)" | |
echo "node: $(node --version)" | |
echo "npm: $(npm --version)" | |
echo "yarn: $(yarn --version)" | |
echo "java: $(java --version)" | |
echo | |
echo "Please restart your terminal." |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment