#!/bin/sh
DESKTOP=$( grep DESKTOP /etc/linuxmint/info | awk -F = '{print $2}' )
check_start="startlxde startmintfluxbox startfluxbox gnome-session startkde startxfce4 openbox-session icewm-session icewm-session-lite icewm-session-experimental blackbox wmaker"
if [ "DESKTOP" = "Gnome" ];
then
	Default=gnome-session
elif [ "DESKTOP" = "GNOME" ];
then
	Default=gnome-session
elif [ "DESKTOP" = "Kde" ];
then
	Default=startkde
elif [ "DESKTOP" = "KDE" ];
then
	Default=startkde
elif [ "DESKTOP" = "XFCE" ];
then
	Default=startxfce4
elif [ "DESKTOP" = "Xfce" ];
then
	Default=startxfce4
elif [ "DESKTOP" = "Fluxbox" ];
then
	Default=startmintfluxbox
elif [ "DESKTOP" = "FLUXBOX" ];
then
	Default=startmintfluxbox
elif [ "DESKTOP" = "FluxBox" ];
then
	Default=startmintfluxbox
elif [ "DESKTOP" = "LXDE" ];
then
	Default=startlxde
elif [ "DESKTOP" = "Lxde" ];
then
	Default=startlxde
else
	Default=$1
fi

if [ "x$Default" = "x" ];
then
  for test_start in $check_start
  do
    if which "$test_start" > /dev/null 2>&1
    then
      Default=$test_start
      break;
    fi
  done
fi

case $Default in
startxfce4)
	exec /bin/bash -login /etc/X11/Xsession startxfce4
	;;
icewm-session)
	icewmbg &
	icewmtray &
	icewmhint &
	exec /bin/bash -login /etc/X11/Xsession icewm-session
	;;
wmaker)
	exec /bin/bash -login /etc/X11/Xsession wmaker
	;;
blackbox)
	exec /bin/bash -login /etc/X11/Xsession blackbox
	;;
startfluxbox)
	exec /bin/bash -login /etc/X11/Xsession startfluxbox
	;;
gnome-session)
	exec /bin/bash -login /etc/X11/Xsession gnome-session
	;;
startmintfluxbox)
	exec /bin/bash -login /etc/X11/Xsession startmintfluxbox
	;;
openbox-session)
	exec /bin/bash -login /etc/X11/Xsession openbox-session
	;;
openbox-gnome)
	exec /bin/bash -login /etc/X11/Xsession openbox-gnome-session
	;;
openbox-kde)
	exec /bin/bash -login /etc/X11/Xsession openbox-kde-session
	;;
kde)
	exec /bin/bash -login /etc/X11/Xsession startkde
	;;
icewm-session-experimental)
	icewmbg &
	icewmtray &
	icewmhint &
	exec /bin/bash -login /etc/X11/Xsession icewm-session-experimental
	;;
icewm-session-lite)
	icewmbg &
	icewmtray &
	icewmhint &
	exec /bin/bash -login /etc/X11/Xsession icewm-session-lite
	;;
gdm-ssh-session)
	exec /bin/bash -login /etc/X11/Xsession /usr/lib/gdm/gdm-ssh-session
	;;
startlxde)
	exec /bin/bash -login /etc/X11/Xsession startlxde
	;;
*)
	exec /bin/bash -login /etc/X11/Xsession $Default
	;;
esac
