helm/deploy
2013-03-25 20:30:34 -04:00

106 lines
3.2 KiB
Bash
Executable file
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

#!/usr/bin/env bash
INSTALL_DIR="$HOME/.dotfiles"
# Ask for the administrator password upfront
sudo -v
# Keep-alive: update existing `sudo` time stamp until script is done
while true; do sudo -n true; sleep 60; kill -0 "$$" || exit; done 2>/dev/null &
##### GIT & DOTFILES ######
# If the install folder doesn't exist, you bash < <(curl ...)'d this script!
if [ ! -d "$INSTALL_DIR" ]; then
# Check for git and install it if necessary
if ! command -v "git" 2>&1 >/dev/null; then
echo "GIT isn't installed! Please install it."
exit 1
fi
# Get the dotfiles
echo "$(tput setaf 2)==> Cloning dotfiles repo$(tput sgr0)"
git clone https://github.com/hlissner/dotfiles.git "$INSTALL_DIR"
ln -sf "$INSTALL_DIR/gitconfig" ~/.gitconfig
ln -sf "$INSTALL_DIR/gitignore" ~/.gitignore
else
echo "$(tput setaf 1)==> Dotfiles are already installed$(tput sgr0)"
fi
###### DEPENDENCIES #######
source "$INSTALL_DIR/zsh/functions"
if is_mac; then
# Set up the OSX options
$INSTALL_DIR/install/osx
# Detect homebrew; install it if necessary
if ! command_exists brew; then
echo-g "==> Installing Homebrew"
# http://mxcl.github.com/homebrew/
ruby <(curl -fsSkL raw.github.com/mxcl/homebrew/go)
# Reregister the PATH so bash sees brew and its minions
PATH=/usr/local/bin:/usr/local/sbin:$PATH
# Install GNU core utilities (those that come with OS X are outdated)
brew install coreutils
# echo "Dont forget to add $(brew --prefix coreutils)/libexec/gnubin to \$PATH."
# Install GNU `find`, `locate`, `updatedb`, and `xargs`, g-prefixed
brew install findutils
# Install Bash 4
brew install bash
# Install wget with IRI support
brew install wget --enable-iri
# Install more recent versions of some OS X tools
brew tap homebrew/dupes
brew install homebrew/dupes/grep
brew tap josegonzalez/homebrew-php
# Install everything else
brew install ack rename tree node nginx memcached ctags
brew install php54 --with-fpm --with-imap --with-mysql --with-pgsql --without-apache
brew install php54-imagick php54-mcrypt php54-xdebug readline
echo-g "==> Homebrew: Updating"
brew update && brew upgrade
echo-g "==> Homebrew: Cleaning up"
brew cleanup
else
echo-r "==> Homebrew is already installed!"
fi
elif is_linux; then
echo-g "==> Installing dependencies"
pkg-install curl python ruby wget zsh git-core
echo-g "==> Aptitude: Updating"
pkg-update
fi
# https://github.com/jamiew/git-friendly
if ! command_exists "branch"; then
echo-g "==> Installing git-friendly"
sudo bash < <(curl https://raw.github.com/jamiew/git-friendly/master/install.sh)
fi
# Install & setup ZSH shell
$INSTALL_DIR/install/zsh
# Install RVM & setup 1.8.7, 1.9.2 rubies
$INSTALL_DIR/install/rvm
# Install & setup TMUX
$INSTALL_DIR/install/tmux
# Install & setup VIM
$INSTALL_DIR/install/vim
# Wrap things up
echo
echo-g "Done!"
echo "And if you want to install vim, run:"
echo " sh <(curl https://raw.github.com/hlissner/mlvim/master/install.sh -L)"