This patch introduces generic failsafe session support for GDM by defining a "FailSafe" boolean key for GDM's .desktop session files in /usr/share/xsessions/ If the key is not present it's value is assumed to be false. If it's key/value is present and assigned "true" then the session is considered failsafe and the session name displayed to the user is appended with "(Failsafe)" to indicate it as such.
On the deamon side, when launching a session, a new API function has been added to check if the session is a failsafe session, and if so it bypasses the usual execution of /etc/gdm/Xsession and instead launches the failsafe session command directly. This is analagous to the older pre-2.27.x GDM failsafe session behaviour. Code changes: See attached diff gdm-17-failsafe-session.diff Index: ext-sources/xterm.desktop =================================================================== --- ext-sources/xterm.desktop (revision 19353) +++ ext-sources/xterm.desktop (working copy) @@ -2,6 +2,7 @@ Encoding=UTF-8 Name=xterm Comment=Failsafe session with only xterm +FailSafe=true Exec=/usr/X11/bin/xterm TryExec=/usr/X11/bin/xterm Icon= Index: base-specs/gdm.spec =================================================================== --- base-specs/gdm.spec (revision 19353) +++ base-specs/gdm.spec (working copy) @@ -57,7 +57,8 @@ Patch15: gdm-15-lang.diff # date:2009-09-02 owner:yippi type:bug bugzilla:594818 doo:10915 Patch16: gdm-16-gconf.diff - +# date:2009-09-11 owner:niall type:bug bugzilla:594833 +Patch17: gdm-17-failsafe-session.diff URL: http://projects.gnome.org/gdm/ BuildRoot: %{_tmppath}/%{name}-%{version}-build @@ -86,6 +87,7 @@ %patch14 -p1 %patch15 -p1 %patch16 -p1 +%patch17 -p1 %build %ifos linux @@ -187,6 +189,8 @@ %{_localstatedir}/lib/gdm %changelog +* Fri Sep 11 2009 - niall.power at sun.com +- Add patch gdm-17-failsafe-session.diff to address bugzilla: 594833 * Thu Sep 10 2009 - brian.cameron at sun.com - Add patch gdm-16-gconf.diff to address doo bug #10915. * Tue Sep 08 2009 - brian.cameron at sun.com -------------- next part -------------- An embedded and charset-unspecified text was scrubbed... Name: gdm-17-failsafe-session.diff URL: <http://mail.opensolaris.org/pipermail/jds-review/attachments/20090911/c8a2e7bd/attachment.ksh>
