[5519] in Release_7.7_team

home help back first fref pref prev next nref lref last post

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.

home help back first fref pref prev next nref lref last post