File x2goruncommand of Package x2go

#!/bin/bash

DISPLAY=":$1"
X2GO_AGENT_PID=$2
X2GO_SESSION=$3
cmd=$5
sndsys=$6
X2GO_SESS_TYPE=$7
export DISPLAY
export X2GO_AGENT_PID
export X2GO_SESSION
cmd=`echo $cmd |sed 's/X2GO_SPACE_CHAR/ /g'`

X2GO_ROOT=${HOME}/.x2go
MESSAGE_FILE=$X2GO_ROOT/C-$X2GO_SESSION/cmdoutput
echo "exec $cmd" >> $MESSAGE_FILE

if [ "$sndsys" == "esd" ]
then
  export ESPEAKER=localhost:$4
elif [ "$sndsys" == "arts" ]
then 
  export ARTS_SERVER=localhost:$4
fi

if [ "$cmd" == "WWWBROWSER" ]
then
     if [ -e "/usr/bin/firefox" ]
     then
         cmd="/usr/bin/firefox"
     elif  [ -e "/usr/bin/iceweasel" ]
     then
         cmd="/usr/bin/iceweasel"
     elif  [ -e "/usr/bin/abrowser" ]
     then
         cmd="/usr/bin/abrowser"
     elif  [ -e "/usr/bin/konqueror" ]
     then
         cmd="/usr/bin/konqueror"
     elif  [ -e "/usr/bin/galeon" ]
     then
         cmd="/usr/bin/galeon"
     fi
fi

if [ "$cmd" == "MAILCLIENT" ]
then
     if [ -e "/usr/bin/thunderbird" ]
     then
         cmd="/usr/bin/thunderbird"
     elif  [ -e "/usr/bin/icedove" ]
     then
         cmd="/usr/bin/icedove"
     elif  [ -e "/usr/bin/kmail" ]
     then
         cmd="/usr/bin/kmail"
     elif  [ -e "/usr/bin/evolution" ]
     then
         cmd="/usr/bin/evolution"
     fi
fi

if [ "$cmd" == "OFFICE" ]
then
     if [ -e "/usr/bin/ooffice" ]
     then
         cmd="/usr/bin/ooffice"
     fi
fi

if [ "$cmd" == "TERMINAL" ]
then
     if [ -e "/usr/bin/konsole" ]
     then
         cmd="/usr/bin/konsole"
     elif  [ -e "/usr/bin/gnome-terminal" ]
     then
         cmd="/usr/bin/gnome-terminal"
     elif  [ -e "/usr/bin/rxvt" ]
     then
         cmd="/usr/bin/rxvt"
     elif  [ -e "/usr/bin/xterm" ]
     then
         cmd="/usr/bin/xterm"
     fi
fi

EXEC=`which $cmd`
if [ "$EXEC" != "" ] && [ -x `which $cmd` ]
then
  $cmd
  if [  "$X2GO_SESS_TYPE" == "R" ] #### some applications can quit immediately, we waiting until x2goagent exists
  then
     while [ -d /proc/$X2GO_AGENT_PID ]
     do
         sleep 1
     done
  fi
else
   echo "X2GORUNCOMMAND ERR NOEXEC:$cmd" > $MESSAGE_FILE
fi 

kill -TERM  $X2GO_AGENT_PID
sudo x2gopgwrapper changestatus 'F' $X2GO_SESSION  > /dev/null
export HOSTNAME
x2goumount_session $X2GO_SESSION
openSUSE Build Service is sponsored by