#!/bin/sh
#
# (c) 1999 Red Hat Software, Inc.
# (c) 2000 Kondara Project

bindir=/usr/X11R6/bin

userserverrc=$HOME/.xserverrc
sysclientrc=/etc/X11/xinit/xinitrc
sysserverrc=/etc/X11/xinit/xserverrc
clientargs=""
serverargs=""

if [ -f $sysclientrc ]; then
    clientargs=$sysclientrc
fi

if [ -f $userserverrc ]; then
    serverargs=$userserverrc
else if [ -f $sysserverrc ]; then
    serverargs=$sysserverrc
fi
fi

display=:0
whoseargs="client"
while [ "x$1" != "x" ]; do
    case "$1" in
	/''*|\.*)	if [ "$whoseargs" = "client" ]; then
		    if [ "x$clientargs" = x ]; then
			clientargs="$1"
		    else
			clientargs="$clientargs $1"
		    fi
		else
		    if [ "x$serverargs" = x ]; then
			serverargs="$1"
		    else
			serverargs="$serverargs $1"
		    fi
		fi ;;
	--)	whoseargs="server" ;;
	*)	if [ "$whoseargs" = "client" ]; then
		    clientargs="$clientargs $1"
		else
    		    case "$1" in
		        :[0-9]) display="$1"
		        ;;
                        *) serverargs="$serverargs $1"
			;;
		    esac
		fi ;;
    esac
    shift
done

# abort if X server is already running, so that we don't overwrite
# $HOME/.Xauthority file
if env DISPLAY=$display xdpyinfo > /dev/null 2>&1 ; then
    echo "X server is already active for display $display"
    exit 1
fi

# set up default Xauth info for this machine
mcookie=`mcookie`
serverargs="$serverargs -auth $HOME/.Xauthority"
xauth add $display . $mcookie
xauth add `hostname -f`$display . $mcookie

xinit $clientargs -- $display $serverargs

# various machines need special cleaning up,
# which should be done here

