Files
dotfiles/bin/bootstrap-homebrew

93 lines
1.4 KiB
Bash
Executable File

#! /usr/bin/env bash
set -e
install_packages() {
local group="$1"
shift 1
[ -z "$INSTALLED_PACKAGES" ] && INSTALLED_PACKAGES=( $(brew list) )
echo "==> ${group} packages"
for pkg in "$@"; do
local base=$(echo $pkg | awk '{print $1}')
local found=""
for i in ${INSTALLED_PACKAGES[@]}; do
[[ "$base" == "$i" ]] && found=1
done
if [ -z "$found" ]; then
echo "--> Missing: ${base}"
brew install ${pkg[@]}
else
echo "--> Installed: ${base}"
fi
done
}
main() {
#
# Define packages
#
local core_pkgs=(
"aspell --with-lang-en --with-lang-el --with-lang-sv"
"global --with-ctags --with-pygments"
ack
bash
bazaar
chromedriver
colordiff
ctop
dpkg
geckodriver
git
git-standup
heroku
htop
httpie
jq
kubernetes-cli
kubernetes-helm
less
mysql
openshift-cli
peco
pyenv
rbenv
rclone
readline
reattach-to-user-namespace
redis
ruby-build
shellcheck
source-highlight
sshfs
the_silver_searcher
thefuck
tmux
tree
watch
wget
yank
zsh
)
local personal_pkgs=(
"mkvtoolnix --with-qt"
)
#
# Install packages
#
install_packages "core" "${core_pkgs[@]}"
if [[ " $* " == *" personal "* ]]; then
install_packages "personal" "${personal_pkgs[@]}"
fi
}
main "$@"