-
-
Save pmaingi/5a7bf3b2ae247c76de21848cd1bb70cb to your computer and use it in GitHub Desktop.
Mac Setup
This file contains hidden or 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
# how to run this thingy | |
# create a file on your mac called setup.sh | |
# run it from terminal with: sh setup.sh | |
# heavily inspired by https://twitter.com/damcclean | |
# https://github.com/damcclean/dotfiles/blob/master/install.sh | |
#!/bin/bash | |
set -euo pipefail | |
# Display message 'Setting up your Mac...' | |
echo "Setting up your Mac..." | |
sudo -v | |
# Homebrew - Installation | |
echo "Installing Homebrew" | |
if test ! $(which brew); then | |
/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)" | |
fi | |
# Install Homebrew Packages | |
cd ~ | |
echo "Installing Homebrew packages" | |
homebrew_packages=( | |
"git" | |
"php" | |
"node" | |
"n" | |
"yarn" | |
"zsh" | |
"zsh-completions" | |
"zsh-autosuggestions" | |
"zsh-syntax-highlighting" | |
"github/gh/gh" | |
"hub" | |
) | |
for homebrew_package in "${homebrew_packages[@]}"; do | |
brew install "$homebrew_package" | |
done | |
# Install Casks | |
echo "Installing Homebrew cask packages" | |
homebrew_cask_packages=( | |
"adobe-creative-cloud" | |
"google-chrome" | |
"insomnia" | |
"iterm2" | |
"katana" | |
"loopback" | |
"notion" | |
"obs" | |
"postman" | |
"screenflow" | |
"slack" | |
"spotify" | |
"sequel-pro" | |
"streamlabs-obs" | |
"vagrant" | |
"virtualbox" | |
"visual-studio-code" | |
) | |
# apps in mac store | |
# amphetamine | |
# easyres | |
# magnet | |
# todoist | |
# keynote | |
# apps in setapp (check your setapps favorites list) | |
# bartender | |
# sip (color picker) | |
# instacal | |
# paste | |
# mission control plus | |
# yoink | |
# slidepad | |
# install n (https://github.com/tj/n) | |
# make sure you follow steps here to take control of /usr folders | |
for homebrew_cask_package in "${homebrew_cask_packages[@]}"; do | |
brew cask install "$homebrew_cask_package" | |
done | |
# configure git | |
git config --global user.name "Chris on Code" | |
git config --global user.email "[email protected]" | |
# Install Composer | |
# echo "Installing Composer" | |
# curl -sS https://getcomposer.org/installer | php | |
# mv composer.phar /usr/local/bin/composer | |
# Create projects directory called batcave | |
echo "Creating a Batcave directory" | |
mkdir -p $HOME/documents/batcave | |
# Generate SSH key | |
echo "Generating SSH keys" | |
ssh-keygen -t rsa | |
echo "Copied SSH key to clipboard - You can now add it to Github" | |
pbcopy < ~/.ssh/id_rsa.pub | |
# zsh and oh-my-zsh | |
echo "Adding ZSH" | |
sh -c "$(curl -fsSL https://raw.github.com/robbyrussell/oh-my-zsh/master/tools/install.sh)" | |
git clone https://github.com/agkozak/zsh-z $ZSH_CUSTOM/plugins/zsh-z | |
# zsh configuration | |
touch ~/.my-zshrc | |
# aliases | |
echo "alias list='ls --group-directories-first'" >> ~/.my-zshrc | |
echo "alias push='git push'" >> ~/.my-zshrc | |
echo "alias pull='git pull'" >> ~/.my-zshrc | |
echo "alias add='git add -A'" >> ~/.my-zshrc | |
echo "alias commit='git commit -m'" >> ~/.my-zshrc | |
echo "alias status='git status'" >> ~/.my-zshrc | |
echo "alias checkout='git checkout'" >> ~/.my-zshrc | |
echo "alias merge='git merge'" >> ~/.my-zshrc | |
echo "alias clean='git clean -f -d'" >> ~/.my-zshrc | |
echo "alias reset='git reset --hard'" >> ~/.my-zshrc | |
echo "alias nope='git reset --hard'" >> ~/.my-zshrc | |
echo "alias y='yarn'" >> ~/.my-zshrc | |
echo "alias ys='yarn start'" >> ~/.my-zshrc | |
echo "" >> ~/.my-zshrc | |
# zsh plugins | |
echo "plugins=(git zsh-completions zsh-z)" >> ~/.my-zshrc | |
echo "source /usr/local/share/zsh-autosuggestions/zsh-autosuggestions.zsh" >> ~/.my-zshrc | |
echo "source /usr/local/share/zsh-syntax-highlighting/zsh-syntax-highlighting.zsh" >> ~/.my-zshrc | |
# add our zshrc config to the main zshrc config | |
echo ". ~/.my-zshrc" >> "$HOME/.zshrc" | |
# finally changing default shell to zsh (probably not needed with catalina?) | |
# chsh -s /bin/zsh | |
# Complete | |
echo "Installation Complete" |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment