summaryrefslogtreecommitdiffstats
path: root/trinity-base/tdm/files/tdm-9999-xsession.script
diff options
context:
space:
mode:
Diffstat (limited to 'trinity-base/tdm/files/tdm-9999-xsession.script')
-rwxr-xr-xtrinity-base/tdm/files/tdm-9999-xsession.script66
1 files changed, 66 insertions, 0 deletions
diff --git a/trinity-base/tdm/files/tdm-9999-xsession.script b/trinity-base/tdm/files/tdm-9999-xsession.script
new file mode 100755
index 00000000..a131c29c
--- /dev/null
+++ b/trinity-base/tdm/files/tdm-9999-xsession.script
@@ -0,0 +1,66 @@
+#! /bin/sh
+# Xsession - run as user
+
+session=$1
+
+# Note that the respective logout scripts are not sourced.
+case $SHELL in
+ */bash)
+ [ -z "$BASH" ] && exec $SHELL $0 "$@"
+ set +o posix
+ [ -f /etc/profile ] && . /etc/profile
+ if [ -f $HOME/.bash_profile ]; then
+ . $HOME/.bash_profile
+ elif [ -f $HOME/.bash_login ]; then
+ . $HOME/.bash_login
+ elif [ -f $HOME/.profile ]; then
+ . $HOME/.profile
+ fi
+ ;;
+ */zsh)
+ [ -z "$ZSH_NAME" ] && exec $SHELL $0 "$@"
+ emulate -R zsh
+ [ -d /etc/zsh ] && zdir=/etc/zsh || zdir=/etc
+ zhome=${ZDOTDIR:-$HOME}
+ # zshenv is always sourced automatically.
+ [ -f $zdir/zprofile ] && . $zdir/zprofile
+ [ -f $zhome/.zprofile ] && . $zhome/.zprofile
+ [ -f $zdir/zlogin ] && . $zdir/zlogin
+ [ -f $zhome/.zlogin ] && . $zhome/.zlogin
+ setopt shwordsplit noextendedglob
+ ;;
+ */csh|*/tcsh)
+ # [t]cshrc is always sourced automatically.
+ # Note that sourcing csh.login after .cshrc is non-standard.
+ xsess_tmp=`mktemp /tmp/xsess-env-XXXXXX`
+ $SHELL -c "if (-f /etc/csh.login) source /etc/csh.login; if (-f ~/.login) source ~/.login; /bin/sh -c export -p >! $xsess_tmp"
+ . $xsess_tmp
+ rm -f $xsess_tmp
+ ;;
+ *) # Plain sh, ksh, and anything we don't know.
+ [ -f /etc/profile ] && . /etc/profile
+ [ -f $HOME/.profile ] && . $HOME/.profile
+ ;;
+esac
+
+[ -f /etc/xprofile ] && . /etc/xprofile
+[ -f $HOME/.xprofile ] && . $HOME/.xprofile
+
+case $session in
+ "")
+ exec xmessage -center -buttons OK:0 -default OK "Sorry, $DESKTOP_SESSION is no valid session."
+ ;;
+ failsafe)
+ exec xterm -geometry 80x24-0-0
+ ;;
+ custom)
+ exec /bin/sh $HOME/.xsession
+ ;;
+ default)
+ exec @TRINITY_INSTALL_PATH@/bin/starttde
+ ;;
+ *)
+ eval exec "$session"
+ ;;
+esac
+exec xmessage -center -buttons OK:0 -default OK "Sorry, cannot execute $session. Check $DESKTOP_SESSION.desktop."