#!/bin/sh
#
# Copyright (c) 2008 Owen Williams
# You may use and distribute this software under the terms of the
# GNU General Public License, version 2 or later
#

MOZ_LIB_DIR="/usr/lib/xulrunner-1.9/"

HILDON=0
if [ -f "/usr/lib/libgtkembedmoz.so.0" -a -d "/usr/lib/microb-engine" ]; then
	HILDON=1
	echo "Launching Hildon version"
	export MOZILLA_FIVE_HOME="/usr/lib/microb-engine"
	export LD_LIBRARY_PATH="/usr/lib/microb-engine"
else
	have_home=0
	if [ x$MOZILLA_FIVE_HOME != "x" ] ; then
		if [ -d $MOZILLA_FIVE_HOME ] ; then
			echo "Using existing MOZILLA_FIVE_HOME: $MOZILLA_FIVE_HOME"
			export LD_LIBRARY_PATH=$MOZILLA_FIVE_HOME
			have_home=1
		else
			echo "MOZILLA_FIVE_HOME set but invalid: $MOZILLA_FIVE_HOME"
		fi
	fi
	
	if [ $have_home -eq 0 ] ; then
		home="$MOZ_LIB_DIR"
		if [ ! -d $home ] ; then
			echo "Thought mozilla was in $home, but path doesn't exist"
			echo "Error finding MOZILLA_FIVE_HOME, please set it yourself"
			exit 1
		fi
		echo Found gtkmozembed in $home
		export MOZILLA_FIVE_HOME=$home
		export LD_LIBRARY_PATH=$home
	fi
fi

rundir=`dirname $0`
cd $rundir

if [ -f "./penguintv/penguintv.py" ] ; then
	ptv_home="./penguintv"
elif [ -f "../penguintv/penguintv.py" ] ; then
	cd ..
	ptv_home="./penguintv"
elif [ -d "/usr/lib/python2.5/site-packages/penguintv" ] ; then
	ptv_home="/usr/lib/python2.5/site-packages/penguintv"
else
	ptv_home=`/usr/bin/env python -c "import os, sys; 
if os.environ.has_key('PENGUINTV_LIB'): 
    print os.environ['PENGUINTV_LIB'];  
    sys.exit(0); 
for d in [\"$rundir\"] + sys.path:
    if len(d) > 0:
        if d[0] == '.':
            d = os.path.join(os.getcwd(), d);
        sd = os.path.join(d, 'penguintv'); 
        if os.path.isdir(sd):
            print sd; 
            sys.exit(0); 
h, t = os.path.split(os.path.split(os.path.abspath(sys.argv[0]))[0]); 
if t == 'bin': 
    libdir = os.path.join(h, 'lib'); 
    fp = os.path.join(libdir, 'penguintv'); 
    if os.path.isdir(fp): 
        print libdir; 
        sys.exit(0); 
sys.exit(1)"`
	if [ $? -gt 0 ] ; then
		echo "Error finding PenguinTV library home.  Please export PENGUINTV_LIB"
		exit 1
	fi
fi

echo "Running ptv in $ptv_home"
export PTV_PREFIX=$rundir

if [ $HILDON -eq 1 ] ; then	
	PYTHONPATH="$ptv_home"
	cd $ptv_home
	run-standalone.sh python2.5 ./penguintv.py $*
else
	PYTHONPATH="$ptv_home"
	cd $ptv_home
	/usr/bin/env python ./penguintv.py $*
fi
