#!/bin/sh # jclicplayer wrapper script # code for java detection based on tuxguitar code # but adding detection of alternatives for jclic if [ -z $JAVA_HOME ] ; then #hacking for openjdk support #ALTERNATIVE=`ls -l /etc/alternatives/java|grep sun` ALTERNATIVE=`ls -l /etc/alternatives/java | grep sun` if [ -z "$ALTERNATIVE" ]; then ALTERNATIVE=`ls -l /etc/alternatives/java|grep oracle` fi if [ -z "$ALTERNATIVE" ]; then ALTERNATIVE=`ls -l /etc/alternatives/java|grep openjdk` fi if [ -z "$ALTERNATIVE" ]; then t=/usr/lib/jvm/java-5-sun && test -d $t && JAVA_HOME=$t t=/usr/lib/jvm/java-6-sun && test -d $t && JAVA_HOME=$t t=/usr/lib/jvm/java-7-icedtea && test -d $t && JAVA_HOME=$t t=/usr/lib/jvm/java-6-openjdk && test -d $t && JAVA_HOME=$t JAVA=${JAVA_HOME}/jre/bin/java fi fi # Problems with jvm and qcv language, so workaround. # We export LANG environment variable to es_ES.UTF-8, so jclic work correctly # with puntuation signs, accents and so on, but jclic enviroment gui uses older # LANG value, viewing gui with the same language as gnome/lxde/X environment. USER_LANG=$(echo $LANG|cut -d "_" -f1) export JAVA=${JAVA:=java} #hacking for leia export LANG=es_ES.UTF-8 #export LANG=es_ES.utf8 VAR_LIST="PULSEAUDIO_ENABLED LLIUREX_TCOS_TEACHER" eval `/usr/sbin/llxcfg-showvars ${VAR_LIST}` # Pulseaudio if present in classroom client and server if [ "$PULSEAUDIO_ENABLED" = "true" ] ; then if [ "$LLIUREX_TCOS_TEACHER" = "Y" ] ; then REMOTE_DISPLAY=$(echo $DISPLAY| awk -F ":" '{print $1}') # if remote_display variable has value, then its a thin client client and force no Via hack if [ "$REMOTE_DISPLAY" ] ; then if [ -x /usr/bin/padsp ]; then padsp -s "$REMOTE_DISPLAY" -n JClic -m JClic-stream $JAVA -jar /usr/share/java/jclic.jar -closestreams=false -language=$USER_LANG "$@" &>/dev/null & exit 0 fi elif [ "$PULSE_SERVER" ] ; then if [ -x /usr/bin/padsp ]; then padsp -s "$PULSE_SERVER" -n JClic -m JClic-stream $JAVA -jar /usr/share/java/jclic.jar -language=$USER_LANG "$@" &>/dev/null & exit 0 fi else if [ -x /usr/bin/padsp ]; then padsp -n JClic -m JClic-stream $JAVA -jar /usr/share/java/jclic.jar -language=$USER_LANG "$@" &>/dev/null & exit 0 fi fi # remote_display has no value, so its the real server or classroom client else if [ -x /usr/bin/padsp ]; then padsp -n JClic -m JClic-stream $JAVA -jar /usr/share/java/jclic.jar -language=$USER_LANG "$@" &>/dev/null & exit 0 fi fi # for standalone workstations now pulseaudio wrapper is necessary else if [ -x /usr/bin/padsp ]; then padsp -n JClic -m JClic-stream $JAVA -jar /usr/share/java/jclic.jar -language=$USER_LANG "$@" &>/dev/null & exit 0 else exec $JAVA -jar /usr/share/java/jclic.jar -language=$USER_LANG "$@" fi fi