#!/bin/sh

echo ''
echo '=== TouchKit for Linux Installer ==='
echo ''
echo '(Step 1) Check Packages Installed'

PR_AUTO_ready=1
FULL_ready=1

package=(make tcl tk) 
class="Common"
echo "[$class]"
for pkg in ${package[@]} ; do
	printf " %-30s" "$pkg" 
	found=`rpm -qa | sed -n /^$pkg-[0-9][0-9]*\\\\./p`
	if [ "$found" != "" ] ; then
		echo "OK ($found)"
	else
		echo not found
		PR_AUTO_ready=0
		FULL_ready=0
	fi
done

package=(gcc glibc-devel XFree86-devel kernel-source)
class="Required for Full Mode"
echo "[$class]"
for pkg in ${package[@]} ; do
	printf " %-30s" "$pkg" 
	found=`rpm -qa | sed -n /^$pkg-[0-9][0-9]*\\\\./p`
	if [ "$found" != "" ] ; then
		echo "OK ($found)"
	else
		echo not found
		FULL_ready=0
	fi
done

if [ $PR_AUTO_ready != "1" ] ; then
	echo ''
	echo '(!) required package(s) missing; abort'
	exit 1
fi

###########################################################################
echo ''
echo '(Step 2) Select Installation Mode'

make clean > /dev/null

echo '(Q) Which installation mode do you prefer?'
echo ' (1) Compact Mode, (only RS232 and PS/2) or'
echo ' (2) Full Mode (RS232, PS/2 and [USB])'

while : ; do
	read _ans
	case $_ans in
		1)	echo "(I) [Compact Mode] selected"
			_method=auto;
			echo 0 > /tmp/.usb.on 2> /dev/null
			break;;
		2)	echo "(I) [Full Mode] selected"
			_method=rebuild;
			echo 1 > /tmp/.usb.on 2> /dev/null
			break;;
		*) echo "Please choose '1' or '2'";;
	esac
done

if [ $_method = rebuild ] ; then
	_method=all
	_output=/dev/tty
	echo ''
	echo '(Step 3) Rebuild TouchKit'
	nextStep=4
else
	_output=/dev/null
	nextStep=3
fi

make $_method 1> $_output 			|| exit 1
echo ''
echo '(Step '$nextStep') Install TouchKit'
make install						|| exit 1
make activate						|| exit 1

echo ''
echo '(I) Please RESTART your X Window Server.'

	
