2016-01-24 10:01:44 +00:00
|
|
|
|
#!/bin/bash
|
|
|
|
|
|
2016-02-03 08:19:29 +00:00
|
|
|
|
function install_linux_software {
|
|
|
|
|
#-------------------------------
|
|
|
|
|
# Check the OS and set install command
|
|
|
|
|
#-------------------------------
|
|
|
|
|
if [ -x "$(which yum)" ]; then
|
|
|
|
|
INSTALLCMD="yum install -y"
|
|
|
|
|
elif [ -x "$(which apt-get)" ]; then
|
|
|
|
|
INSTALLCMD="apt-get install -y"
|
|
|
|
|
else
|
2016-02-18 07:01:05 +00:00
|
|
|
|
echo "Sorry, I don't know how to install software on this OS yet."
|
2016-02-03 08:19:29 +00:00
|
|
|
|
exit 1
|
|
|
|
|
fi
|
|
|
|
|
#-------------------------------
|
2016-01-27 15:55:53 +00:00
|
|
|
|
|
2016-02-07 18:39:49 +00:00
|
|
|
|
xargs sudo ${INSTALLCMD} <<-EOF
|
2016-02-03 08:19:29 +00:00
|
|
|
|
ack
|
2016-03-01 10:20:34 +00:00
|
|
|
|
archey
|
2016-02-29 11:52:27 +00:00
|
|
|
|
bash-completion
|
2016-02-03 08:19:29 +00:00
|
|
|
|
git
|
|
|
|
|
htop
|
2016-02-16 19:03:18 +00:00
|
|
|
|
mosh
|
2016-03-01 10:20:34 +00:00
|
|
|
|
nmap
|
2016-03-01 18:59:18 +00:00
|
|
|
|
p7zip
|
2016-03-01 10:23:04 +00:00
|
|
|
|
pv
|
2016-02-05 13:18:22 +00:00
|
|
|
|
ss
|
2016-02-03 08:19:29 +00:00
|
|
|
|
vim
|
|
|
|
|
EOF
|
|
|
|
|
}
|
2016-01-24 12:42:52 +00:00
|
|
|
|
|
2016-02-03 08:19:29 +00:00
|
|
|
|
function install_osx_software {
|
|
|
|
|
#-------------------------------
|
|
|
|
|
# Install Homebrew if missing
|
|
|
|
|
#-------------------------------
|
|
|
|
|
if [ ! -x /usr/local/bin/brew ]; then
|
|
|
|
|
ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
|
|
|
|
|
fi
|
|
|
|
|
#-------------------------------
|
2016-01-24 12:42:52 +00:00
|
|
|
|
|
2016-03-07 21:23:56 +00:00
|
|
|
|
#-------------------------------
|
|
|
|
|
# Update Brew formulae if older than 24 hours
|
|
|
|
|
#-------------------------------
|
|
|
|
|
find /usr/local/.git -name FETCH_HEAD -mtime +0 -exec brew update \;
|
|
|
|
|
#-------------------------------
|
|
|
|
|
|
2016-02-03 08:19:29 +00:00
|
|
|
|
#-------------------------------
|
|
|
|
|
# Install the basics
|
|
|
|
|
#-------------------------------
|
|
|
|
|
xargs brew install <<-EOF
|
|
|
|
|
ack
|
2016-03-01 10:20:34 +00:00
|
|
|
|
archey
|
2016-02-29 11:52:27 +00:00
|
|
|
|
bash-completion
|
2016-02-03 08:19:29 +00:00
|
|
|
|
git
|
|
|
|
|
coreutils
|
2016-02-16 08:27:02 +00:00
|
|
|
|
htop-osx
|
2016-02-16 19:03:18 +00:00
|
|
|
|
mosh
|
2016-03-01 10:20:34 +00:00
|
|
|
|
nmap
|
2016-03-01 18:59:18 +00:00
|
|
|
|
p7zip
|
2016-03-01 10:23:04 +00:00
|
|
|
|
pv
|
2016-02-03 08:19:29 +00:00
|
|
|
|
python3
|
2016-03-01 10:20:34 +00:00
|
|
|
|
rename
|
2016-02-03 08:19:29 +00:00
|
|
|
|
vim
|
|
|
|
|
EOF
|
|
|
|
|
#-------------------------------
|
|
|
|
|
|
|
|
|
|
#-------------------------------
|
|
|
|
|
# Install Casks
|
|
|
|
|
#-------------------------------
|
|
|
|
|
xargs brew cask install <<-EOF
|
2016-02-29 08:36:10 +00:00
|
|
|
|
1password
|
2016-02-03 08:19:29 +00:00
|
|
|
|
alfred
|
|
|
|
|
bbc-iplayer-downloads
|
|
|
|
|
beardedspice
|
2016-02-29 08:36:10 +00:00
|
|
|
|
bittorrent-sync
|
2016-03-01 18:56:27 +00:00
|
|
|
|
cleanmymac
|
2016-02-03 08:19:29 +00:00
|
|
|
|
day-o
|
|
|
|
|
dropbox
|
|
|
|
|
firefox
|
|
|
|
|
flux
|
|
|
|
|
gitx
|
|
|
|
|
gpgtools
|
|
|
|
|
google-chrome
|
|
|
|
|
google-drive
|
|
|
|
|
google-hangouts
|
|
|
|
|
handbrake
|
|
|
|
|
iterm2
|
|
|
|
|
sonos
|
|
|
|
|
textmate
|
|
|
|
|
vlc
|
|
|
|
|
vmware-fusion
|
|
|
|
|
wireshark
|
|
|
|
|
xquartz
|
|
|
|
|
yubikey-neo-manager
|
|
|
|
|
yubikey-personalization-gui
|
|
|
|
|
EOF
|
|
|
|
|
#-------------------------------
|
|
|
|
|
|
2016-02-09 08:30:03 +00:00
|
|
|
|
#-------------------------------
|
|
|
|
|
# Clean up
|
|
|
|
|
#-------------------------------
|
|
|
|
|
brew cleanup
|
2016-02-18 15:19:45 +00:00
|
|
|
|
brew cask cleanup
|
2016-02-09 08:30:03 +00:00
|
|
|
|
#-------------------------------
|
2016-02-03 08:19:29 +00:00
|
|
|
|
}
|
2016-01-28 18:43:32 +00:00
|
|
|
|
|
2016-03-07 21:23:56 +00:00
|
|
|
|
echo "#-------------------------------"
|
|
|
|
|
echo "# START: $(date)"
|
|
|
|
|
echo "#-------------------------------"
|
|
|
|
|
|
2016-01-28 18:43:32 +00:00
|
|
|
|
#-------------------------------
|
2016-02-03 08:19:29 +00:00
|
|
|
|
# Check for Mac OS X
|
2016-01-28 18:43:32 +00:00
|
|
|
|
#-------------------------------
|
2016-02-03 08:19:29 +00:00
|
|
|
|
if [ $(uname -s) == "Darwin" ]; then
|
|
|
|
|
install_osx_software
|
|
|
|
|
else
|
|
|
|
|
install_linux_software
|
|
|
|
|
fi
|
2016-01-28 18:43:32 +00:00
|
|
|
|
#-------------------------------
|
2016-02-03 08:19:29 +00:00
|
|
|
|
|
2016-03-07 08:15:55 +00:00
|
|
|
|
#-------------------------------
|
|
|
|
|
# Ensure Vim plugins are up-to-date
|
|
|
|
|
#-------------------------------
|
2016-03-07 21:23:56 +00:00
|
|
|
|
vim -T dumb +PluginInstall! +PluginClean! +qall 2>/dev/null |\
|
|
|
|
|
sed -E s/'\[[0-9]{1,2};[0-9]{1,2}[mKH]'//g
|
2016-03-07 08:15:55 +00:00
|
|
|
|
#-------------------------------
|
|
|
|
|
|
2016-03-07 21:23:56 +00:00
|
|
|
|
echo "#-------------------------------"
|
|
|
|
|
echo "# END: $(date)"
|
|
|
|
|
echo "#-------------------------------"
|
|
|
|
|
|
2016-02-03 08:19:29 +00:00
|
|
|
|
exit 0
|