#!/bin/sh

set -e

usage() {
  for i in "$@"; do echo $i; done
  echo "usage: $0 /path/to/cgi-bin"
}

unknown_os() {
  echo "os $uname probably not supported..." 2>&1
  echo "...as a $uname guru :) maybe you can help with this." 2>&1
  exit 1
}

if [ $# -ne 1 ]; then
  usage
  exit 1
fi

plopcgidir="$1" && shift

. ./plop.conf.default

uname="`uname`"
whoami="`whoami`"

case "`echo $uname | tr 'A-Z' 'a-z'`" in
  linux*) plopos='linux' ;;
  *bsd) plopos='bsd' ;;
  *) unknown_os ;;
esac

. ./plop.conf."$plopos"

echo "setting up plop directories..."

cat <<EODIRS | while read d; do sudo mkdir -p "$d"; done
done
$plopetcdir
$plopdir
$plopdir/db
$plopdir/db/remove
$plopdir/db/add
$plopdir/db/update
$plopdir/tmp
$plopdir/files
EODIRS

sudo chown -R "$whoami" "$plopdir"

echo "installing configuration..."

touch "$plopdir/db/master"
sudo install plop.conf.default "$plopetcdir/plop.conf.default"
sudo install plop.conf."$plopos" "$plopetcdir/plop.conf"

echo "installing binaries..."
tmpbin="`$cmd_mktemp`"
install -o "$whoami" plopdb "$tmpbin"
sudo mv "$tmpbin" "$plopbindir/plopdb"
tmpcgi="`$cmd_mktemp`"
install plop.cgi "$tmpcgi"
sudo mv "$tmpcgi" "$plopcgidir/plop.cgi"

echo "done. edit $plopetcdir/plop.conf to your heart's content."


