#! /bin/sh prepare() { [ -f main.go ] || cat >> main.go <> Makefile <> ice.sh <\$ctx_log && echo -e "\n\nrestarting..." || break done } serve() { prepare && shutdown && start \$@ } restart() { [ -e \$ctx_pid ] && kill -2 \`cat \$ctx_pid\` || echo } shutdown() { [ -e \$ctx_pid ] && kill -3 \`cat \$ctx_pid\` || echo } cmd=\$1 && [ -n "\$cmd" ] && shift || cmd=serve \$cmd \$* END chmod u+x ice.sh } build() { miss=./ && [ "$1" != "" ] && miss=$1 && shift && mkdir $miss cd $miss && prepare && go build -o ice.bin main.go && chmod u+x ice.bin && ./ice.sh start serve dev } cmd=build && [ "$1" != "" ] && cmd=$1 && shift $cmd $*