[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Summary: How to fix the gnome startup issues



After struggling with about 5 boxes with this issues, plus reading other people having the same issues, I decided to summarized what to do to solve the infamous Gnome Startup Issue (where it just sits at the splash screen forever). Read on:

You should take the steps in this order to make it work. Of course, you should try to switch to a TTY ( CTRL+ALT+F1) and check what .xsession-errors says to get a hint of why the splash screen it's hanging forever. After that then try this (hopefully in this order). I can assure you that this will solve your problems:

1. make sure that there is no /etc/gtk-2.0/gtkrc file. And if there is one, make sure it's pointing to the right place. i.e. /etc/gtk-2.0/gtkrc -> /usr/shared/themes/Nuvola/gtk-2.0/gtkrc. I found the hard way that this file was pointing to a gtk1.x theme and it was causing the splash screen to just sit there forever (crashing gnome-session and gnome-panel).

2. rm -fr ~/.gnome* ~/.gconf* ~/.gtk* ~/.icons* ~/.themes*. In other words, make sure that your gnome settings are reseted before login in. The best thing to try is to create a dummy user with an empty $HOME and login as that user to see if that helps. That will save you a lot of hassle.

3. make sure there is no .Xdefaults in your $HOME, or any dot file that sets session variables/parameters for X. Things like: .Xmodmap, .xsession, .x-anything. This is the issue for the latest Knoppix distro (cdrom) that it ships with Xfree86 4.3.x and it seems not to like a lot of those old files laying from old home directories. The safest thing to do, of course, is to move all files from $HOME to $HOME/old and then restart gdm/xdm/kdm or whatever you use to start x. Note that starting X from the console sometimes avoids this problems "startx", maybe because they skip gnome-session altogether? go figure...

4. Turn off gconfd, oaf-anything, and all other processes that might be running under your username from a TTY. gconftool-2 --shutdown will help, but do "ps aux | grep username" to see what processes if any are running under your username and kill those (killall -9 process). Make sure that you re-check that your $HOME dot files are not there before restarting the X server|gdm|xdm or whatever you use.

5. After making sure that you do have the latest gnome-2.4 packages from "Sid" (dpkg --list | grep 2.4 | egrep ^i), if things still don't work after doing all of the things said above, then downgrading from xserver-xfree86 4.3.x to the "unstable" current versions 4.2.x will fix your problems :-) I have seen some computers with different drivers that work with Xfree4.3+gnome-2.4, but so far the computers that use "nv" or "nvidia" drivers hang at the splash screen for whatever reason. When you downgrade to xserver-xfree86 4.2, make sure that you set your mouse protocol in /etc/X11/Xfree86-4 file to "PS/2" or "IMPS/2" and not "auto" as this will prevent xserver-xfree86 4.2 from launching (or will launch and your mouse won't work).

If things still don't work, then use KDE :-) nah, just kidding. But, that's what I have experienced so far to be the culprit of the problem (especially #1, that infamous gtkrc file laying around from some badly broken theme or a gtk+1.x theme).

I hope this will help somebody out there and that this will be read over and over for generations to come... :-D

p.s. esound (that piece of @#$@%) have problems when you set it to auto_launch and a user have "Sound Server Startup" check in his/her Preferences for sound. i.e. when /etc/esound/esd.conf is:
[esd]
auto_spawn=1
spawn_options=-terminate -nobeeps -as 5
spawn_wait_ms=100

To solve this, I usually set a "mandatory" option for all users to not allow the sound server to start as they login and set the auto_spawn to 1 and -as to 3 (seconds); in other words, the esd daemon should auto spawn when something needs sound, but quit after 3 seconds of not being used (like when users logout and login as a different user, they won't see a stupid message saying that the esound server did something stupid). The command to set the mandatory setting to not start the sound server is, plus a whole bunch of other things that you might like to lock up in Gnome (if you have multiple workstations that you are responsible for) (you can get an extensibly customizable script from ftp://www.latinomixed.com/downloads/tied_gnome.sh.gz):

GCONFTOOL=gconftool-2

set_bool_mandatory()
{
   # @arg $1 path
   # @arg $2 bool (true|false)
   $GCONFTOOL --direct \
   --config-source xml:readwrite:/etc/gconf/gconf.xml.mandatory \
   --type bool --set $1 "$2"
   if [ $? != 0 ]; then
       echo "Setting $1 failed"
   fi
}

set_bool_defaults()
{
   # @arg $1 path
   # @arg $2 bool (true|false)
   $GCONFTOOL --direct \
   --config-source xml:readwrite:/etc/gconf/gconf.xml.defaults \
   --type bool --set $1 "$2"
   if [ $? != 0 ]; then
       echo "Setting $1 failed"
   fi
}

unset_mandatory()
{
   # @arg $1 path
   $GCONFTOOL --direct \
   --config-source xml:readwrite:/etc/gconf/gconf.xml.mandatory \
   --unset $1
   if [ $? != 0 ]; then
       echo "Unsetting $1 failed"
   fi
}



   unset_mandatory "/desktop/gnome/sound/event_sounds"
   set_bool_mandatory "/desktop/gnome/sound/enable_esd" "true"
# the following line turns on the sound events by default to all users
# so that they can turn it off if they could care less about this
   set_bool_defaults "/desktop/gnome/sound/event_sounds" "true"


Again, I hope this helps somebody... Cheers!

----)(-----
Luis Mondesi
System Administrator
LatinoMixed.com

lemsx1@hotmail.com

"...The Mac does this so smoothly, it feels like an extension of your mind." - Paula Speer, MacWorld Magazine 2003-04

Public signature: http://www.latinomixed.com/lems1/public-a.asc

_________________________________________________________________
MSN Messenger : discutez en direct avec vos amis ! http://www.msn.fr/msger/default.asp



Reply to: