This page describes the anatomy of the HEPiX X11 scripts, i.e. what runs behind the scene from the login panel to the end of the X session.
The xdm
wrappers check if the user should run
the HEPiX scripts and if yes start the HEPiX X session.
The behaviour of xdm
is defined its configuration
file named xdm-config
. With the default configuration
here is what happens when xdm
starts its job:
xdm-config
The HEPiX X11 scripts use wrappers that replace the normal xdm
files and scripts while keeping a copy of the old ones of course. The
old files are used if the user should not run the HEPiX scripts (root for
instance, see is_hepix
). The wrappers can be customised at site,
cluster or system level (see xdm
Files)
and here is what the hep level files do:
Xresources
: define several X resources for xdm
, including xlogin
"bindings"
like F1
starts a failsafe session, F2
a debug session;
see the file itself for more information
Xstartup
: add the user in /etc/utmp
with utmp_update
and handle the console tasks (e.g. ownership of /dev/console
) when appropriate
Xsession
: execute the "real" HEPiX X session described below
Xreset
: remove the user from /etc/utmp
and handle the console tasks
You should have in mind the picture of the HEPiX X session when reading the following...
Here is what the HEPiX X session does in (gory) details:
/etc/nologin
xmessage
$HOME/.hepix
$HOME/.hepix/xsession.log
xsecure
apply_policy
xresources
and creating $HOME/.hepix/generated_xresources
mxconns
and set $XDISPLAY
if $HX_START_MXCONNS
is set
xclients.m
$HX_DESKTOP
and maybe exec
another program
(e.g. CDE desktop)
dump_shell_env
if $HX_SOURCEPROFILE
$HX_STARTUP
and maybe exec
another program
(e.g. $HOME/.xsession
)
xsetfp
according to $HX_FONT_PATH
$HX_KEYBOARD
,
maybe creating $HOME/.hepix/generated_xmodmaprc
$HX_WM
,
maybe creating $HOME/.hepix/wm/generated_wmrc
$HX_ROOT_WINDOW
xclients
$HX_LAST_CLIENT
Here are the major "branches" that can prevent you from executing all the tasks described above:
$HX_DESKTOP
, you escape in step 6.4
$HX_STARTUP
(or have a valid $HOME/.xsession
),
you escape in step 6.6
Here are the settings at hep level:
xresources
, xclients
and xclients.m
are empty
xkeyboard
or xkbd.$HX_KEYBOARD
file
xprofile
contains:
HX_WM="fvwm" HX_SOURCEPROFILE="yes" HX_DESKTOP="hepix" HX_LAST_CLIENT="window-manager" HX_STARTUP="hepix" HX_START_MXCONNS="no"
Lionel Cons, 8-Jan-1997