#!/bin/sh

case `id -u` in
0)
	;;
*)
	echo "gnome-xgl-switch must be run as root" 1>&2
	exit 1
	;;
esac

case $1 in
-e|--enable|--enable-xgl)
	sed -i -e 's/^DISPLAYMANAGER_XSERVER *=.*/DISPLAYMANAGER_XSERVER="Xgl"/' /etc/sysconfig/displaymanager
	shift
	if [ -n "$*" ]; then
		sed -i -e 's/^DISPLAYMANAGER_XGL_OPTS *=.*/DISPLAYMANAGER_XGL_OPTS="'"$*"'"/' /etc/sysconfig/displaymanager
	fi
	;;
-d|--disable|--disable-xgl)
	sed -i -e 's/^DISPLAYMANAGER_XSERVER *=.*/DISPLAYMANAGER_XSERVER="Xorg"/' /etc/sysconfig/displaymanager
	;;
*)
	echo "Usage: gnome-xgl-switch --enable-xgl [ xgl-options ]" 1>&2
	echo "       gnome-xgl-switch --disable-xgl" 1>&2
	exit 1
	;;
esac

if [ -x /sbin/conf.d/SuSEconfig.xdm ] ; then
  /sbin/SuSEconfig --module xdm | sed "s+\(.*\)+$0: \1+g" | /bin/logger
else
  MD5DIR="/var/adm/SuSEconfig/md5" \
  /etc/X11/xdm/SuSEconfig.xdm | sed "s+\(.*\)+$0: \1+g" | /bin/logger
fi

if [ -x /usr/sbin/gdm-safe-restart ] ; then
  /usr/sbin/gdm-safe-restart || exit 1
fi

exit 0
