[5519] in Release_7.7_team
The 9.9 default xsession
daemon@ATHENA.MIT.EDU (Greg Hudson)
Wed Jul 5 15:41:45 2006
Date: Wed, 5 Jul 2006 15:41:38 -0400
Message-Id: <200607051941.k65JfcFl004703@egyptian-gods.mit.edu>
From: Greg Hudson <ghudson@MIT.EDU>
To: release-team@MIT.EDU
X-Spam-Score: 3.548
X-Spam-Level: *** (3.548)
X-Spam-Flag: NO
I've been wrestling with the issue of how to incorporate gnome-session
into the 9.9 xsession, which is a harder problem than I thought.
After a lot of research, I think I'm close to a workable design.
gnome-session runs three categories of things:
1. Hardcoded things (gconfd-2 for its own use; gnome-settings-daemon)
2. Stuff listed in the user's session file or the default session
3. Stuff in desktop entries in the auto-start directories
Category 3 doesn't exist in the RHEL-4 gnome-session (I think!), but
does in more recent versions; we can ignore it for now. Anything run
from category 2 or 3 needs to be an X session client, so that it can
be properly saved into a user session file at logout time. Ergo, any
Athena startup tasks which aren't X session clients need to be run
separately from gnome-session.
So, here is what we run as part of an X login assuming the Dash
interface hasn't been selected:
gnome-settings-daemon Hardcoded launch by gnome-session
metacity X session client
gnome-panel X session client
nautilus X session client
gnome-terminal X session client
xscreensaver Conditional lanuch by gnome-settings-daemon
zwgc Not an X session client (uses X)
get_message Not an X session client (Zephyr output)
mailquota Not an X session client (text output)
from Not an X session client (text output)
olc who Not an X session client (no output)
authwatch Not an X session client (uses X)
athneteventd Not an X session client (no output)
As noted by Bob earlier, we'll need to launch some of kind of console
to show the output of from and olc who, and possibly console messages
as well.
There is also the question of how existing configuration options
should affect the new startup. In general, I'd like to have fewer
configuration options for xsession and more of people using custom
.xsession files if they don't want to buy into the GNOME gunk.
ATHENA_DASH_INTERFACE: Unchanged. It's really easy to continue
supporting this stuff.
WINDOW_MANAGER: Conveniently, gnome-wm already uses this variable.
But window managers which aren't X session clients (including twm
variants, I think) may cause problems.
ZEPHYR_CLIENT: Unchanged.
skip_capplets, skip_panel, skip_initial_xterm: Desupport, I think.
People can customize their sessions using the session property
capplet if they want, or use a custom .xsession file to run
non-GNOME stuff.
skip_x_startup: Would no longer affect xscreensaver, but otherwise
unchanged (disables zwgc, get_message, mailquota, from, olc who, and
authwatch).
skip_xss: Desupport, or make a one-time code bit to convert this
into a false setting of
/apps/gnome_settings_daemon/screensaver/start_screensaver.