Love to see this thread is still allive
boroshan wrote:One thing I'd add - GiveConsole isn't the best place to kill apps started by XDM. It works ok for most things, but if you kill XDM with control-R (as I sometimes do) then the progam will remain running, at least if it doesn't depend on X, anyway.
No, the problem is not GiveConsole - this is the only place where these things can go. It is that control-R thing. Take a look at the Xresources file of xdm (/etc/X11/xdm/Xresources). At the top there is the option
Code: Select all
xlogin*login.translations: #override \
Ctrl<Key>R: abort-display()\n\
...
The funktion abort-display is explained in the xdm manpage:
Code: Select all
abort-display
Terminates the server, disabling it. This action
is not accessible in the default configuration.
There are various reasons to stop xdm on a system console, such as
when shutting the system down, when using xdmshell,
to start another type of server, or to generally access the console.
Sending xdm a SIGHUP will restart the display. See the section
Controlling XDM.
Basically this means that control-R exits the X-Server but not xdm. This is needed if you can choose between different X-Servers (normally on different hosts). In this case you run a chooser which let you -surprise- choose the server you want to login. If you did so and change your mind you can type control-R and get back to the chooser to connect to another server.
If you do this with only one local server running, you will exit X - meaning kill it and all X-apps. This includes xdm, but as xdm is not shut down properly, the none-X apps will stay.
There is no function to kill xdm in the supported functions for the *translation resource. The closest ones are abort-session (which will restart the X-Server) and restart-session (which will reset the server and starts a new session). So I think it's generally a good advice to avoid the control-R on a normal desktop system (with only one local server running).
Just stick to
Hope on my next post I have better news ...
