-
-
Save fanqi/acdfa404a7c24cb07a526caa3e23b350 to your computer and use it in GitHub Desktop.
Mac OSX Setup - Brew and Cask
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
# Get Sudo. | |
if [ $EUID != 0 ]; then | |
sudo "$0" "$@" | |
exit $? | |
fi | |
# Install Xcode first - https://itunes.apple.com/us/app/xcode/id497799835?ls=1&mt=12 | |
# Install Xcode command line tools. | |
xcode-select --install | |
# Install Homebrew. | |
ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)" | |
# Configure Homebrew. | |
brew doctor | |
# Setup Homebrew Cask. | |
brew tap caskroom/cask | |
brew install brew-cask | |
brew tap caskroom/versions | |
brew tap homebrew/dupes | |
brew tap homebrew/versions | |
brew tap homebrew/homebrew-php | |
brew tap homebrew/services | |
brew update && brew upgrade brew-cask && brew cleanup && brew cask cleanup | |
# Setup Homebrew fonts. | |
brew tap caskroom/fonts | |
# Nicer plugins for QuickLook. | |
brew cask install qlcolorcode | |
brew cask install qlstephen | |
brew cask install qlmarkdown | |
brew cask install quicklook-json | |
brew cask install webpquicklook | |
brew cask install qlimagesize | |
brew cask install qlprettypatch | |
brew cask install quicklook-csv | |
brew cask install betterzipql | |
brew cask install suspicious-package | |
# Virtualization | |
brew cask install virtualbox | |
brew install docker | |
brew install boot2docker | |
# System Tools | |
brew install coreutils | |
brew install findutils --with-default-names | |
brew install bash | |
brew install bash-completion | |
brew install homebrew/dupes/grep --with-default-names | |
brew install git | |
brew install git-flow | |
brew install nano | |
brew install vim | |
brew install macvim | |
brew install vimpager | |
brew install emacs | |
brew install colordiff | |
brew install jq | |
brew install wget | |
brew install calc | |
brew install htop | |
brew install hh | |
brew install openssh | |
brew install lftp | |
brew install links | |
brew install lynx | |
brew install ccrypt | |
brew install dos2unix | |
brew install ncurses | |
brew install nmap | |
brew install tig | |
brew install tree | |
brew install geoip | |
brew install unzip | |
brew install unrar | |
brew install node | |
npm update npm -g | |
brew install java | |
brew install jenv | |
brew install python | |
brew install mysqltuner | |
brew install webkit2png | |
brew install imagemagick | |
brew install jpegoptim | |
brew install vnstat | |
curl -L https://get.rvm.io | bash -s stable --ruby | |
brew install rbenv-gem-rehash | |
brew install ruby-build | |
#rbenv install 2.x.x | |
#rbenv global 2.x.x | |
#gem update —system | |
#gem install bundler jekyll rails | |
#brew install node | |
brew install php56-opcache | |
brew install composer | |
brew install android-sdk | |
brew install certbot | |
# Virtualization | |
brew cask install vagrant | |
brew cask install vagrant-manager | |
# Apps. | |
# Apps - General / Management | |
brew cask install appcleaner | |
brew cask install cakebrew | |
brew cask install disk-inventory-x | |
# Apps - Browsers | |
brew cask install google-chrome | |
brew cask install chrome-devtools | |
brew cask install epichrome | |
brew cask install chrome-remote-desktop-host | |
brew cask install firefox | |
brew cask install fiddler | |
brew cask install integrity | |
# Apps - PHP IDE | |
brew cask install sublime-text3 | |
brew cask install phpstorm | |
# Apps - Android | |
brew cask install androidtool | |
brew cask install android-studio | |
brew cask install genymotion | |
# Apps - Ruby on Rails | |
brew cask install rubymine | |
# Apps - Python | |
brew cask install pycharm | |
# Apps - DB Management | |
brew cask install sequel-pro | |
brew cask install datagrip | |
brew cask install navicat-premium-essentials | |
# Apps - Servers | |
brew cask install zendserver | |
brew cask install postgres | |
# Apps - Javascript | |
brew cask install webstorm | |
# Apps - CSS | |
brew cask install codekit | |
brew cask install cactus | |
#DB | |
brew install mysql | |
brew install postgres | |
# Service tools | |
brew cask install heroku-toolbelt | |
brew cask install dockertoolbox | |
brew install awscli | |
# Apps - CVS | |
brew cask install sourcetree | |
brew cask install deltawalker | |
# Apps - Files | |
brew cask install dropbox | |
brew cask install filezilla | |
brew cask install cyberduck | |
brew cask install owncloud | |
brew cask install the-unarchiver | |
# Apps - Data | |
brew cask install google-refine | |
brew cask install libreoffice | |
#brew cask install microsoft-office | |
# Apps - Design | |
#brew cask install adobe-photoshop-cc | |
#brew cask install adobe-photoshop-lightroom | |
#brew cask install adobe-illustrator-cc | |
brew cask install adobe-creative-cloud | |
brew cask install omnigraffle | |
brew cask install sketch | |
brew cask install sketchup | |
brew cask install colorpicker-skalacolor | |
# Apps - Communication | |
brew cask install slack | |
brew cask install droplr | |
brew cask install skype | |
brew install irssi | |
brew cask install vienna | |
# Apps - Documentation | |
brew cask install mou | |
brew cask install jing | |
# Apps - Remote | |
brew cask install remote-desktop-connection | |
brew cask install remote-desktop-manager | |
# Apps - Entertainment | |
brew cask install spotify | |
brew cask install steam | |
# Command Line | |
brew cask install fabric | |
brew cask install jd-gui | |
brew cask install grandperspective | |
brew cask install toau | |
brew cask install mapbox-studio | |
# System Efficiency | |
brew cask install resolutionator | |
brew cask install go2shell | |
brew cask install grammarly | |
brew cask install iterm2 | |
#firewall | |
brew cask install little-snitch | |
# Setup OSX to use Homebrew-installed apps. | |
echo 'export PATH="/usr/local/bin:$PATH"' >> ~/.bash_profile | |
echo 'export PATH="$(brew --prefix coreutils)/libexec/gnubin:/usr/local/bin:$PATH"' >> ~/.bash_profile | |
echo 'export PATH="$HOME/.jenv/bin:$PATH"' >> ~/.bash_profile | |
echo 'eval "$(jenv init -)"' >> ~/.bash_profile | |
# Setup Git. | |
read -e -p "Enter your git username: " USERNAME | |
read -e -p "Enter your git email address: " EMAIL | |
git config --global user.name $USERNAME | |
git config --global user.email $EMAIL | |
ssh-keygen -t rsa -b 4096 -C $EMAIL | |
eval "$(ssh-agent -s)" | |
ssh-add ~/.ssh/id_rsa | |
pbcopy < ~/.ssh/id_rsa.pub | |
sudo ln -s /usr/local/bin/git-flow /usr/bin/git-flow | |
sudo ln -s /usr/local/bin/gitflow-common /usr/bin/gitflow-common | |
sudo ln -s /usr/local/bin/git-flow-init /usr/bin/git-flow-init | |
sudo ln -s /usr/local/bin/git-flow-version /usr/bin/git-flow-version | |
sudo ln -s /usr/local/bin/git-flow-feature /usr/bin/git-flow-feature | |
sudo ln -s /usr/local/bin/git-flow-release /usr/bin/git-flow-release | |
sudo ln -s /usr/local/bin/git-flow-hotfix /usr/bin/git-flow-hotfix | |
sudo ln -s /usr/local/bin/git-flow-support /usr/bin/git-flow-support | |
sudo ln -s /usr/local/bin/gitflow-shFlags /usr/bin/gitflow-shFlags | |
# ZSH replacing shell. | |
brew install zsh | |
curl -L http://install.ohmyz.sh | sh | |
# All done with Homebrew. | |
brew update && brew upgrade && brew cleanup && brew cask cleanup | |
# Expand "Save" and "Print" panels. | |
defaults write NSGlobalDomain NSNavPanelExpandedStateForSaveMode -bool true | |
defaults write NSGlobalDomain NSNavPanelExpandedStateForSaveMode2 -bool true | |
defaults write NSGlobalDomain PMPrintingExpandedStateForPrint -bool true | |
defaults write NSGlobalDomain PMPrintingExpandedStateForPrint2 -bool true | |
# Use current directory as default search scope in Finder. | |
defaults write com.apple.finder FXDefaultSearchScope -string "SCcf" | |
# Remove duplicate "Open With" options. | |
/System/Library/Frameworks/CoreServices.framework/Frameworks/LaunchServices.framework/Support/lsregister -kill -r -domain local -domain system -domain user | |
# Show extensions in Finder. | |
defaults write NSGlobalDomain AppleShowAllExtensions -bool true | |
# Show path in Finder. | |
defaults write com.apple.finder ShowPathbar -bool true | |
defaults write com.apple.finder _FXShowPosixPathInTitle -bool true | |
# Allow selecting text in Quick Look. | |
defaults write com.apple.finder QLEnableTextSelection -bool true | |
# Use OSX print dialog in Chrome. | |
defaults write com.google.Chrome DisablePrintPreview -bool true | |
defaults write com.google.Chrome PMPrintingExpandedStateForPrint2 -bool true | |
# Copy email addresses, not names, from Mail. | |
defaults write com.apple.mail AddressesIncludeNameOnPasteboard -bool false | |
# Quit Printer app when complete. | |
defaults write com.apple.print.PrintingPrefs "Quit When Finished" -bool true | |
# Ignore Quarentine of unknown apps. | |
defaults write com.apple.LaunchServices LSQuarantine -bool false | |
# Reboot to a clean slate. | |
defaults write com.apple.systempreferences NSQuitAlwaysKeepsWindows -bool false | |
# Enable "Tap to Click". | |
defaults write com.apple.driver.AppleBluetoothMultitouch.trackpad Clicking -bool true | |
defaults -currentHost write NSGlobalDomain com.apple.mouse.tapBehavior -int 1 | |
defaults write NSGlobalDomain com.apple.mouse.tapBehavior -int 1 | |
# Invert scrolling direction. | |
defaults write NSGlobalDomain com.apple.swipescrolldirection -bool false | |
# Open Finder at "~/" directory. | |
defaults write com.apple.finder NewWindowTarget -string "PfLo" | |
defaults write com.apple.finder NewWindowTargetPath -string "file://${HOME}/" | |
# Don't create temporary files to network mounted drives. | |
defaults write com.apple.desktopservices DSDontWriteNetworkStores -bool true | |
# Unhide "~/Library" folder. | |
chflags nohidden ~/Library | |
# Add iOS Simulator app to normal "/Applications" directory. | |
ln -sf "/Applications/Xcode.app/Contents/Developer/Applications/Simulator.app" "/Applications/iOS Simulator.app" | |
# Disable Time Machine prompt for every disk. | |
defaults write com.apple.TimeMachine DoNotOfferNewDisksForBackup -bool true | |
# Configure Activity Monitor to always open a window, sorted by the most CPU intensive tasks. | |
defaults write com.apple.ActivityMonitor OpenMainWindow -bool true | |
defaults write com.apple.ActivityMonitor ShowCategory -int 0 | |
defaults write com.apple.ActivityMonitor SortColumn -string "cpUUsage" | |
defaults write com.apple.ActivityMonitor SortDirection -int 0 | |
# Done. | |
echo "All Done. Your SSH Key is on the clipboard, ready for pasting into Git." |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment