With a display manager

xdm, CDE, KDE

If the X Window environment is started by a display manager like dtlogin or xdm, XposeXrecord can be integrated transparently by modifying the configuration file Xservers. The configuration files are stored in different directories depending on the X Window environment:

X Window environment Base directory
CDE /etc/dt/config
/usr/dt/config
KDE /etc/opt/kde3/share/config/kdm
X11 xdm /usr/lib/X11/xdm
/etc/X11/xdm
/usr/X11R5/lib/X11/xdm
/usr/X11R6/lib/X11/xdm
/usr/X11R7/lib/X11/xdm
/usr/X11R7/lib/X11/xdm
...
Oracle/Sun OpenWindows xdm /usr/openwin/lib/xdm

Usually the configuration files of the CDE environment are stored in the directory /etc/dt/config/. If this directory does not contain the file Xservers, you may modify the default configuration in /usr/dt/config/. However, these modifications may be overwritten during installation or upgrade of system software.

The correct procedure is more complicated: create a copy of the Xservers file in the directory /etc/dt/config/:

mkdir -p /etc/dt/config
chmod a+rx /etc/dt/config
cp /usr/dt/config/Xservers /etc/dt/config/Xservers

If the file /usr/dt/config/Xconfig contains a line like

Dtlogin.servers: /usr/dt/config/Xservers

then modify it, so that the display manager loads the modified version of the Xservers file:

Dtlogin.servers: /etc/dt/config/Xservers

The file Xservers contains a line for the local X Window server (here an example of a CDE configuration under Oracle Solaris):

:0 Local local_uid@console root /usr/openwin/bin/Xsun :0

In this line the call of the X Window server has to be substituted by a call of the xposexrecord program (in the following simple configuration using the default values):

:0 Local local_uid@console root /opt/XSOXposeXrecord/bin/xposexrecordserverCommand /usr/openwin/bin/Xsun :1

Here only the call of the xposexrecord program with the serverCommand configuration statement (X Window server) was inserted and the display number was changed from 0 to 1 (Display connection).

The whole entry must be written in one line. More complex configurations can be specified using a configuration file (Configuration file). When calling the xposexrecord program, the display manager may append more arguments for the X Window server. Therefore, the line in the Xservers file must be terminated by an incomplete serverCommand configuration statement:

:0 Local local_uid@console root /opt/XSOXposeXrecord/bin/xposexrecord/etc/opt/XSOXposeXrecord/xposexrecord.conf serverCommand

If the display manager is running during modification of the configuration files, one of the following commands lets it load the new configuration (base_directory stands for one of the above-mentioned directories):

/usr/dt/bin/dtconfig -reset
kill -HUP `cat base_directory/xdm-pid`
kill -HUP `cat /usr/tmp/xdm-pid`
/etc/init.d/xdm stop && /etc/init.d/xdm start

Usually you find error messages in one of the files:

/var/dt/Xerrors
base_directory/xdm-errors
/etc/X11/xdm/xdm-errors
base_directory/Xerrors
/usr/tmp/Xerrors

Gnome display manager gdm

For transparently integrating XposeXrecord under Gnome, the configuration file of the display manager gdm gdm.conf (in the directory /etc/X11/gdm or in /etc/opt/gnome/gdm) has to be modified in the section [servers].

First declare that the XposeXrecord proxy is to be executed instead of the standard X Window server by commenting the standard server and adding the proxy server:

#0=Standard
0=X-Software-XposeXrecord
#1=Standard

Then add the parameters of the XposeXrecord proxy after the definition of the standard server:

# Definition of the standard X server.
[server-Standard]
name=Standard server
command=/usr/X11R6/bin/X
flexible=true
# Definition of the X-Software XposeXrecord proxy server.
[server-X-Software-XposeXrecord]
name=X-Software XposeXrecord proxy
command=/opt/XSOXposeXrecord/bin/xposexrecordserverCommand /usr/X11R6/bin/X :1
flexible=false

Here the command for the standard server was augmented by the call of the xposexrecord program with the serverCommand configuration statement (X Window server) and the display number 1 was added (Display connection). With the proxy server stacked in between it is not possible to start additional servers later (flexible=false).

Usually you find error messages in one of the directories:

/var/log/gdm/
/var/lib/log/gdm/

Extensive tracing can be switched on in the section [debug] of the configuration file:

#Enable=false
Enable=true

Copyright © 2018 X-Software GmbH
info@x-software.com
2016-03-15 09:36:31 +0100