#!/bin/sh

# system dependencies
swt_guess_()
{
    t="/usr/lib/eclipse/plugins/org.eclipse.swt.gtk.linux.*.jar"
    [ -r "$t" ] && f="$t"
    t="/etc/alternatives/swt.jar"
    [ -r "$t" ] && f="$t"
    t="/usr/share/java/swt.jar"
    [ -r "$t" ] && f="$t"
    t="/usr/lib/java/swt.jar"
    [ -r "$t" ] && f="$t"
    t="/usr/lib64/java/swt.jar"
    [ -r "$t" ] && f="$t"
#   file -L "$f" >/dev/null 2>&1 || f=""
    echo "$f"
}

itext_pdf_guess_()
{
    t="/usr/share/java/itext.jar"
    [ -r "$t" ] && f="$t"
    t="/usr/share/java/itext-pdf.jar"
    [ -r "$t" ] && f="$t"
    t="/usr/share/java/itextpdf/itextpdf.jar"
    [ -r "$t" ] && f="$t"
#   file -L "$f" >/dev/null 2>&1 || f=""
    echo "$f"
}

itext_xmlworker_guess_()
{
    t="/usr/share/java/xmlworker.jar"
    [ -r "$t" ] && f="$t"
    t="/usr/share/java/itext-xmlworker.jar"
    [ -r "$t" ] && f="$t"
    t="/usr/share/java/itextpdf/xmlworker.jar"
    [ -r "$t" ] && f="$t"
#   file -L "$f" >/dev/null 2>&1 || f=""
    echo "$f"
}

##JAVA
JAVA=`which java`
##LIBRARY_PATH
LD_LIBRARY_PATH=${LD_LIBRARY_PATH}:/usr/lib64/tuxguitar
##CLASSPATH
PACKAGE=${PACKAGE:=tuxguitar}
PACKAGE_HOME=${PACKAGE_HOME:=/usr/share/java/${PACKAGE}/}
t="${PACKAGE_HOME}/${PACKAGE}.jar"
[ -r "$t" ] && CLASSPATH=${CLASSPATH}:$t
t=${PACKAGE_HOME}/${PACKAGE}-alsa.jar
[ -r "$t" ] && CLASSPATH=${CLASSPATH}:$t
t=${PACKAGE_HOME}/${PACKAGE}-ascii.jar
[ -r "$t" ] && CLASSPATH=${CLASSPATH}:$t
t=${PACKAGE_HOME}/${PACKAGE}-awt-graphics.jar
[ -r "$t" ] && CLASSPATH=${CLASSPATH}:$t
t=${PACKAGE_HOME}/${PACKAGE}-browser-ftp.jar
[ -r "$t" ] && CLASSPATH=${CLASSPATH}:$t
t=${PACKAGE_HOME}/${PACKAGE}-community.jar
[ -r "$t" ] && CLASSPATH=${CLASSPATH}:$t
t=${PACKAGE_HOME}/${PACKAGE}-compat.jar
[ -r "$t" ] && CLASSPATH=${CLASSPATH}:$t
t=${PACKAGE_HOME}/${PACKAGE}-converter.jar
[ -r "$t" ] && CLASSPATH=${CLASSPATH}:$t
t=${PACKAGE_HOME}/${PACKAGE}-debug-helper.jar
[ -r "$t" ] && CLASSPATH=${CLASSPATH}:$t
t=${PACKAGE_HOME}/${PACKAGE}-editor-utils.jar
[ -r "$t" ] && CLASSPATH=${CLASSPATH}:$t
t=${PACKAGE_HOME}/${PACKAGE}-fluidsynth.jar
[ -r "$t" ] && CLASSPATH=${CLASSPATH}:$t
t=${PACKAGE_HOME}/${PACKAGE}-gervill.jar
[ -r "$t" ] && CLASSPATH=${CLASSPATH}:$t
t=${PACKAGE_HOME}/${PACKAGE}-gm-settings.jar
[ -r "$t" ] && CLASSPATH=${CLASSPATH}:$t
t=${PACKAGE_HOME}/${PACKAGE}-gm-utils.jar
[ -r "$t" ] && CLASSPATH=${CLASSPATH}:$t
t=${PACKAGE_HOME}/${PACKAGE}-gpx.jar
[ -r "$t" ] && CLASSPATH=${CLASSPATH}:$t
t=${PACKAGE_HOME}/${PACKAGE}-gtp.jar
[ -r "$t" ] && CLASSPATH=${CLASSPATH}:$t
t=${PACKAGE_HOME}/${PACKAGE}-gtp-ui.jar
[ -r "$t" ] && CLASSPATH=${CLASSPATH}:$t
t=${PACKAGE_HOME}/${PACKAGE}-image.jar
[ -r "$t" ] && CLASSPATH=${CLASSPATH}:$t
t=${PACKAGE_HOME}/${PACKAGE}-jack.jar
[ -r "$t" ] && CLASSPATH=${CLASSPATH}:$t
t=${PACKAGE_HOME}/${PACKAGE}-jack-ui.jar
[ -r "$t" ] && CLASSPATH=${CLASSPATH}:$t
t=${PACKAGE_HOME}/${PACKAGE}-jsa.jar
[ -r "$t" ] && CLASSPATH=${CLASSPATH}:$t
t=${PACKAGE_HOME}/${PACKAGE}-lib.jar
[ -r "$t" ] && CLASSPATH=${CLASSPATH}:$t
t=${PACKAGE_HOME}/${PACKAGE}-lilypond.jar
[ -r "$t" ] && CLASSPATH=${CLASSPATH}:$t
t=${PACKAGE_HOME}/${PACKAGE}-lilypond-ui.jar
[ -r "$t" ] && CLASSPATH=${CLASSPATH}:$t
t=${PACKAGE_HOME}/${PACKAGE}-midi.jar
[ -r "$t" ] && CLASSPATH=${CLASSPATH}:$t
t=${PACKAGE_HOME}/${PACKAGE}-midi-ui.jar
[ -r "$t" ] && CLASSPATH=${CLASSPATH}:$t
t=${PACKAGE_HOME}/${PACKAGE}-musicxml.jar
[ -r "$t" ] && CLASSPATH=${CLASSPATH}:$t
t=${PACKAGE_HOME}/${PACKAGE}-pdf.jar
[ -r "$t" ] && CLASSPATH=${CLASSPATH}:$t
t=${PACKAGE_HOME}/${PACKAGE}-pdf-ui.jar
[ -r "$t" ] && CLASSPATH=${CLASSPATH}:$t
t=${PACKAGE_HOME}/${PACKAGE}-ptb.jar
[ -r "$t" ] && CLASSPATH=${CLASSPATH}:$t
t=${PACKAGE_HOME}/${PACKAGE}-svg.jar
[ -r "$t" ] && CLASSPATH=${CLASSPATH}:$t
t=${PACKAGE_HOME}/${PACKAGE}-synth.jar
[ -r "$t" ] && CLASSPATH=${CLASSPATH}:$t
t=${PACKAGE_HOME}/${PACKAGE}-synth-export.jar
[ -r "$t" ] && CLASSPATH=${CLASSPATH}:$t
t=${PACKAGE_HOME}/${PACKAGE}-synth-gervill.jar
[ -r "$t" ] && CLASSPATH=${CLASSPATH}:$t
t=${PACKAGE_HOME}/${PACKAGE}-synth-lv2.jar
[ -r "$t" ] && CLASSPATH=${CLASSPATH}:$t
t=${PACKAGE_HOME}/${PACKAGE}-synth-vst.jar
[ -r "$t" ] && CLASSPATH=${CLASSPATH}:$t
t=${PACKAGE_HOME}/${PACKAGE}-tef.jar
[ -r "$t" ] && CLASSPATH=${CLASSPATH}:$t
t=${PACKAGE_HOME}/${PACKAGE}-tray.jar
[ -r "$t" ] && CLASSPATH=${CLASSPATH}:$t
t=${PACKAGE_HOME}/${PACKAGE}-tuner.jar
[ -r "$t" ] && CLASSPATH=${CLASSPATH}:$t
t=${PACKAGE_HOME}/${PACKAGE}-ui-toolkit.jar
[ -r "$t" ] && CLASSPATH=${CLASSPATH}:$t
t=${PACKAGE_HOME}/${PACKAGE}-ui-toolkit-swt.jar
[ -r "$t" ] && CLASSPATH=${CLASSPATH}:$t
t=${PACKAGE_HOME}/${PACKAGE}-viewer.jar
[ -r "$t" ] && CLASSPATH=${CLASSPATH}:$t
t=${PACKAGE_HOME}/gervill.jar
[ -r "$t" ] && CLASSPATH=${CLASSPATH}:$t
t=$(itext_pdf_guess_)
[ -r "$t" ] && CLASSPATH=${CLASSPATH}:$t
t=$(itext_xmlworker_guess_)
[ -r "$t" ] && CLASSPATH=${CLASSPATH}:$t
t=$(swt_guess_)
[ -r "$t" ] && CLASSPATH=${CLASSPATH}:$t
t="/usr/share/java/commons-compress.jar"
[ -r "$t" ] && CLASSPATH=${CLASSPATH}:$t
t="/usr/share/java/commons-io.jar"
[ -r "$t" ] && CLASSPATH=${CLASSPATH}:$t
##MAINCLASS
MAINCLASS=app.tuxguitar.app.TGMainSingleton
## SHAREPATH
SHAREPATH=/usr/share/tuxguitar
##EXPORT VARS
export CLASSPATH
export LD_LIBRARY_PATH
##Avoid problems with Accelerated Compositing mode in SWT/WebKitGTK
export WEBKIT_DISABLE_COMPOSITING_MODE=1
##LAUNCH
${JAVA} -cp :${CLASSPATH} -Dtuxguitar.share.path="${SHAREPATH}/" -Djava.library.path="${LD_LIBRARY_PATH}" ${MAINCLASS} "$@"
