#! /bin/ksh

USAGE="usage: $(basename "$0") { dtlogin | gdm2 }"

if [ $# -ne 1 ]; then
  print -u 2 -r -- "${USAGE}"
  exit 1
fi

# get the name of the gnome login service
GDM_LOGIN_FRMI="$( svcs -a -H -o FMRI | grep "gdm2-login" 2>/dev/null | svcs -a -H -o FMRI | grep "graphical-login/gdm:default" 2>/dev/null )"
if [ "${GDM_LOGIN_FRMI}"x = ""x ] ; then
  echo "ERROR Can not detect the name of the SMF service for the GNOME login"
  exit 5
fi


case "${1}" in

    dtlogin ) 
      echo "Switching from gdm2 (Gnome Login) to dtlogin  ..."
      svcadm disable "${GDM_LOGIN_FRMI}"

      echo /usr/dt/bin/dtconfig -e
      ;;

    gnome | gdm2 )
      echo "Switching from dtlogin to gdm2 (Gnome Login) ..."

      echo /usr/dt/bin/dtconfig -d
      echo /usr/dt/bin/dtconfig -kill

      svcadm enable "${GDM_LOGIN_FRMI}"
      ;;

    *)
      print -u2 -r -- "${USAGE}"
      RC=1
      ;;

esac

exit "${RC}" 

