Skip to content

Instantly share code, notes, and snippets.

@ZJPat
Created February 20, 2020 15:11
Show Gist options
  • Save ZJPat/c20b4a55be8c09c2994d8266fcbb8a71 to your computer and use it in GitHub Desktop.
Save ZJPat/c20b4a55be8c09c2994d8266fcbb8a71 to your computer and use it in GitHub Desktop.
#!/usr/bin/env bash
###############################################################################
# Admin - Global
###############################################################################
# Ask for the administrator password upfront
sudo -v
###############################################################################
# OS and Install Xcode
###############################################################################
echo "------------------------------"
echo "Updating OSX. If this requires a restart, run the script again."
# Install all available updates
sudo softwareupdate -ia --verbose
# Install only recommended available updates
#sudo softwareupdate -ir --verbose
echo "------------------------------"
echo "Installing Xcode Command Line Tools."
# Install Xcode command line tools
xcode-select --install
###############################################################################
# Homebrew
###############################################################################
# Keep-alive: update existing `sudo` time stamp until the script has finished.
while true; do sudo -n true; sleep 60; kill -0 "$$" || exit; done 2>/dev/null &
# Check for Homebrew,
# Install if we don't have it
if test ! $(which brew); then
echo "Installing homebrew..."
ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
fi
# Make sure we’re using the latest Homebrew.
brew update
# Upgrade any already-installed formulae.
brew upgrade --all
# Install GNU core utilities (those that come with OS X are outdated).
# Don’t forget to add `$(brew --prefix coreutils)/libexec/gnubin` to `$PATH`.
brew install coreutils
sudo ln -s /usr/local/bin/gsha256sum /usr/local/bin/sha256sum
# Install some other useful utilities like `sponge`.
brew install moreutils
# Install GNU `find`, `locate`, `updatedb`, and `xargs`, `g`-prefixed.
brew install findutils
# Install GNU `sed`, overwriting the built-in `sed`.
brew install gnu-sed
# Install Bash 4.
brew install bash
brew install bash-completion2
echo "[ -f /usr/local/etc/bash_completion2 ] && . /usr/local/etc/bash_completion2" >> ~/.bash_profile
source ~/.bash_profile
# We installed the new shell, now we have to activate it
echo "Adding the newly installed shell to the list of allowed shells"
# Prompts for password
sudo bash -c 'echo /usr/local/bin/bash >> /etc/shells'
# Change to the new shell, prompts for password
chsh -s /usr/local/bin/bash
#==============
# wget
#==============
brew install wget --with-iri
#==============
# Python
#==============
brew install python
brew install python3
#==============
# Node
#==============
# Install Node
brew install node
# Install Node Version Manager
curl -o- https://raw.githubusercontent.com/creationix/nvm/v0.31.1/install.sh | bash
#==============
# Ruby Related
#==============
# Install ruby-build and rbenv
brew install ruby-build
brew install rbenv
LINE='eval "$(rbenv init -)"'
grep -q "$LINE" ~/.extra || echo "$LINE" >> ~/.extra
curl -sSL https://get.rvm.io | bash -s stable --ruby
#
# You will need to type "rvm install <version number>" to install.
#
echo '[[ -s "$HOME/.rvm/scripts/rvm" ]] && . "$HOME/.rvm/scripts/rvm" # Load RVM function' >> ~/.bash_profile
#==============
# OS X Tools
#==============
brew install vim --override-system-vi
#==============
# Font Tools
#==============
brew tap bramstein/webfonttools
brew install sfnt2woff
brew install sfnt2woff-zopfli
brew install woff2
#==============
# CTF/Hacking Tools
#==============
brew install aircrack-ng
brew install bfg
brew install binutils
brew install binwalk
brew install cifer
brew install dex2jar
brew install dns2tcp
brew install fcrackzip
brew install foremost
brew install hashpump
brew install hydra
brew install john
brew install knock
brew install netpbm
brew install nmap
brew install pngcheck
brew install socat
brew install sqlmap
brew install tcpflow
brew install tcpreplay
brew install tcptrace
brew install ucspi-tcp # `tcpserver` etc.
brew install homebrew/x11/xpdf
brew install xz
#==============
# Useful Binaries
#==============
brew install ack
brew install dark-mode
#brew install exiv2
brew install git
brew install git-lfs
brew install git-flow
brew install git-extras
brew install hub
brew install imagemagick --with-webp
brew install lua
brew install lynx
brew install p7zip
brew install pigz
brew install pv
brew install rename
brew install rhino
brew install speedtest_cli
brew install ssh-copy-id
brew install tree
brew install webkit2png
brew install zopfli
brew install pkg-config libffi
brew install pandoc
#==============
# Lxml and Libxslt
#==============
brew install libxml2
brew install libxslt
brew link libxml2 --force
brew link libxslt --force
#==============
# Heroku
#==============
brew install heroku/brew/heroku
heroku update
#==============
# Core Cask
#==============
brew cask install --appdir="/Applications" apache-maven
brew cask install --appdir="~/Applications" coda2
brew cask install --appdir="~/Applications" cyberduck
brew cask install --appdir="~/Applications" IntelliJ idea CE
#==============
# Develop Casks
#==============
brew cask install --appdir="/Applications" MYSQLWorkbench
brew cask install --appdir="/Applications" Skype
brew cask install --appdir="/Applications" smartgit
brew cask install --appdir="/Applications" vagrant
brew cask install --appdir="/Applications" Virtualbox
brew cask install --appdir="/Applications" zoom
#==============
# Brew Cleanup
#==============
brew cleanup
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment