home *** CD-ROM | disk | FTP | other *** search
- #!/bin/bash
-
- # $XConsortium: startx.cpp,v 1.4 91/08/22 11:41:29 rws Exp $
- # $XFree86: xc/programs/xinit/startx.cpp,v 3.2 1998/12/20 11:58:22 dawes Exp $
- #
- # This is just a sample implementation of a slightly less primitive
- # interface than xinit. It looks for user .xinitrc and .xserverrc
- # files, then system xinitrc and xserverrc files, else lets xinit choose
- # its default. The system xinitrc should probably do things like check
- # for .Xresources files and merge them in, startup up a window manager,
- # and pop a clock and serveral xterms.
- #
-
-
- userclientrc=$HOME/.xinitrc
- userserverrc=$HOME/.xserverrc
-
- if [ -f /etc/X11/wmconfig/xinitrc ] ; then
- sysclientrc=/etc/X11/wmconfig/xinitrc
- else
- sysclientrc=/etc/X11/xinit/xinitrc
- fi
-
- if [ -f /etc/X11/wmconfig/xserverrc ] ; then
- sysserverrc=/etc/X11/wmconfig/xserverrc
- else
- sysserverrc=/etc/X11/xinit/xserverrc
- fi
- clientargs=""
- serverargs=""
-
-
-
-
-
-
- if [ -f $userclientrc ]; then
- clientargs=$userclientrc
- else if [ -f $sysclientrc ]; then
- clientargs=$sysclientrc
- fi
- fi
-
-
-
-
- if [ -f $userserverrc ]; then
- serverargs=$userserverrc
- else if [ -f $sysserverrc ]; then
- serverargs=$sysserverrc
- fi
- fi
-
- 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
- serverargs="$serverargs $1"
- fi ;;
- esac
- shift
- done
-
- # do an exec -> don't leave startx in memomry during X session
- exec xinit $clientargs -- $serverargs >> $HOME/.xerrors 2>&1
-