Last active
August 29, 2015 14:17
-
-
Save st-f/d143513d5cb02554a7c8 to your computer and use it in GitHub Desktop.
HomeBrew Cask automatic search / install
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
############################################################################### | |
# Homebrew and softwares # | |
############################################################################### | |
clear | |
rulem () { | |
if [ $# -eq 0 ]; then | |
echo "Usage: rulem MESSAGE [RULE_CHARACTER]" | |
return 1 | |
fi | |
size=${#1} | |
# Fill line with ruler character ($2, default "-"), reset cursor, move 2 cols right, print message | |
printf -v _hr "%*s" $(tput cols) && echo ${_hr// /${2--}} && echo "\r\033[2C$1" | |
} | |
repeat () { | |
c=$1 | |
size=${#2} | |
n=$((48-size)) | |
if ! [ "$c" ] || ! [ "$n" ]; then | |
echo "Error: please supply a string and the number of times to repeat it, e.g.:" | |
echo "$(basename $0) - 5" | |
else | |
echo $(printf "%${n}s\n" | sed "s/ /${c}/g") | |
fi | |
} | |
echo "Installing Homebrew" | |
#ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)" | |
echo "Installing Homebrew Cask" | |
#brew install caskroom/cask/brew-cask | |
echo "\nSearching for all softwares via Homebrew Cask" | |
export HOMEBREW_CASK_OPTS="--appdir=/Applications" | |
list=$(<softwarelist.txt) | |
arr=$(echo $list | tr "," "\n") | |
for x in $arr | |
do | |
OUT=`brew-cask search $x` | |
OUT2=${OUT//$'\n'/ } | |
OUT2=${OUT2//==> / } | |
first2=${OUT:0:2} | |
first5=${OUT2:0:6} | |
trimed=`echo $OUT2 | cut -c 1-80` | |
if [ $first2 != "No" ] | |
then | |
#OUT3=$(printf "%-48s %s %48s %s\n" "Installing $x" "$OUT2") | |
#echo $first5 | |
if [ $first5 == "Exact" ] | |
then | |
string=$(echo $x) | |
echo $string$(repeat "." "$string") "OK !" | |
brew-cask install $string | |
else | |
string=$(echo $x) | |
#string=$(echo "No match found for" $x) | |
echo $string$(repeat "." "$string") "NOT FOUND :" $trimed | |
fi | |
#echo $string$(repeat "." "$string") $trimed | |
fi | |
done | |
echo "Homebrew Cask cleanup" | |
brew-cask cleanup |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment