[0m


XINIT(1)	    UNIX Programmer's Manual		 XINIT(1)



[1mNAME
     [0mxinit - X Window System initializer

[1mSYNOPSIS
     xinit [0m[[client] options] [-- [server] [display] options]

[1mDESCRIPTION
     [0mThe _x_i_n_i_t program is used to start the X Window System
     server and a first client program (usually a terminal emula-
     tor) on systems that cannot start X directly from _x_d_m(1) or
     in environments that use multiple window systems.	When this
     first client exits, _x_i_n_i_t will kill the X server and then
     terminate.

     If no specific client program is given on the command line,
     _x_i_n_i_t will look for a file in the user's home directory
     called ._x_i_n_i_t_r_c to run as a shell script to start up client
     programs.	If no such file exists, _x_i_n_i_t will use the fol-
     lowing as a default:

	  xterm -geometry +1+1 -n login -display :0


     If no specific server program is given on the command line,
     _x_i_n_i_t will look for a file in the user's home directory
     called ._x_s_e_r_v_e_r_r_c to run as a shell script to start up the
     server.  For efficiency, this script should run the server
     with `exec' - see the BUGS section below.

     If no such file exists, _x_i_n_i_t will use the following as a
     default:

	     X :0

     Note that this assumes that there is a program named _X in
     the current search path.  However, servers are usually named
     _X_d_i_s_p_l_a_y_t_y_p_e where _d_i_s_p_l_a_y_t_y_p_e is the type of graphics
     display which is driven by this server.  The site adminis-
     trator should, therefore, make a link to the appropriate
     type of server on the machine, or create a shell script that
     runs _x_i_n_i_t with the appropriate server.

     An important point is that programs which are run by ._x_i_n_-
     _i_t_r_c should be run in the background if they do not exit
     right away, so that they don't prevent other programs from
     starting up.  However, the last long-lived program started
     by ._x_i_n_i_t_r_c (usually a window manager or terminal emulator)
     should be left in the foreground so that the script won't
     exit until the client exits (which indicates that the user
     is done and that _x_i_n_i_t should exit).





Printed 29/3/95             Release 4				1






XINIT(1)	    UNIX Programmer's Manual		 XINIT(1)



     An alternative client and/or server may be specified on the
     command line.  The desired client program and its arguments
     should be given as the first command line arguments to
     _x_i_n_i_t.  To specify a particular server command line, append
     a double dash (--) to the _x_i_n_i_t command line (after any
     client and arguments) followed by the desired server com-
     mand.

     Both the client program name and the server program name
     must begin with a slash (/) or a period (.).  Otherwise,
     they are treated as an arguments to be appended to their
     respective startup lines.	This makes it possible to add
     arguments (for example, foreground and background colors)
     without having to retype the whole command line.

     If an explicit server name is not given and the first argu-
     ment following the double dash (--) is a colon followed by a
     digit, _x_i_n_i_t will use that number as the display number
     instead of zero.  All remaining arguments are appended to
     the server command line.

[1mEXAMPLES
     [0mBelow are several examples of how command line arguments in
     _x_i_n_i_t are used.

     [1mxinit   [0mThis will start up a server named _X and run the
	     user's ._x_i_n_i_t_r_c, if it exists, or else start an
	     _x_t_e_r_m.

     [1mxinit -- /usr/bin/X11/Xqdss :1
	     [0mThis is how one could start a specific type of
	     server on an alternate display.

     [1mxinit -geometry =80x65+10+10 -fn 8x13 -j -fg white -bg navy
	     [0mThis will start up a server named _X, and will append
	     the given arguments to the default _x_t_e_r_m command.
	     It will ignore ._x_i_n_i_t_r_c.

     [1mxinit -e widgets -- ./Xsun -l -c
	     [0mThis will use the command ./_X_s_u_n -_l -_c to start the
	     server and will append the arguments -_e _w_i_d_g_e_t_s to
	     the default _x_t_e_r_m command.

     [1mxinit /usr/ucb/rsh fasthost cpupig -display ws:1 -- :1 -
	     a 2 -t 5
	     [0mThis will start a server named _X on display 1 with
	     the arguments -_a _2 -_t _5.  It will then start a
	     remote shell on the machine [1mfasthost [0min which it
	     will run the command _c_p_u_p_i_g, telling it to display
	     back on the local workstation.





Printed 29/3/95             Release 4				2






XINIT(1)	    UNIX Programmer's Manual		 XINIT(1)



     Below is a sample ._x_i_n_i_t_r_c that starts a clock, several ter-
     minals, and leaves the window manager running as the
     ``last'' application.  Assuming that the window manager has
     been configured properly, the user then chooses the ``Exit''
     menu item to shut down X.

	     xrdb -load $HOME/.Xres
	     xsetroot -solid gray &
	     xclock -g 50x50-0+0 -bw 0 &
	     xload -g 50x50-50+0 -bw 0 &
	     xterm -g 80x24+0+0 &
	     xterm -g 80x24+0-0 &
	     twm

     Sites that want to create a common startup environment could
     simply create a default ._x_i_n_i_t_r_c that references a site-wide
     startup file:

	     #!/bin/sh
	     . /usr/local/lib/site.xinitrc

     Another approach is to write a script that starts _x_i_n_i_t with
     a specific shell script.  Such scripts are usually named
     _x_1_1, _x_s_t_a_r_t, or _s_t_a_r_t_x and are a convenient way to provide a
     simple interface for novice users:

	     #!/bin/sh
	     xinit /usr/local/bin/startx -- /usr/bin/X11/Xhp :1


[1mENVIRONMENT VARIABLES
     DISPLAY [0mThis variable gets set to the name of the display to
	     which clients should connect.

     [1mXINITRC [0mThis variable specifies an init file containing
	     shell commands to start up the initial windows.  By
	     default, ._x_i_n_i_t_r_c in the home directory will be
	     used.

[1mBUGS
     [0mIf the X server is being started from a shell script, then
     it should be run with the shell's _e_x_e_c command.  This is
     because the server sends a SIGUSR1 to its parent process as
     soon as it is ready to accept connections, and this signal
     will not reach xinit unless it is the direct parent of the X
     server.

     If you don't run the server with _e_x_e_c it will still work,
     but the session startup time may be significantly slower.

[1mSEE ALSO
     [0mX(1), Xserver(1), xterm(1), xrdb(1)



Printed 29/3/95             Release 4				3






XINIT(1)	    UNIX Programmer's Manual		 XINIT(1)



[1mCOPYRIGHT
     [0mCopyright 1988, Massachusetts Institute of Technology.
     See _X(_1) for a full statement of rights and permissions.

[1mAUTHOR
     [0mBob Scheifler, MIT Laboratory for Computer Science

















































Printed 29/3/95             Release 4				4



[0m