No desktop -- where'd it go? (OpenSUSE 11.2)

Hi,

I switched from Ubuntu to OpenSUSE several days ago, and I’m impressed. Each of the past three releases of Ubuntu has introduced a new catastrophic problem to my laptop, but OpenSUSE appears to “just work.” So, if you’re involved in the development or testing of OpenSUSE, thank you for what appears to be a great distro.

I’m having a problem with my desktop – it appears that the whole thing has somehow become disabled:

  1. There are no icons
  2. Right clicking does not display a context menu
  3. Holding the left mouse button and dragging does not create a selection box

The only thing I have is my wallpaper and the top and bottom Gnome bars, which work fine.

Best I can tell, this problem happened when I was inexplicably prompted by Nautilus for elevated privileges upon logging in. I knew that was odd, but I authenticated anyway instead of canceling the operation.

When the authentication went through, the My Computer icon (or whatever it’s called in Gnome) appeared as “Root’s Computer.” Erm, okay – according to the System menu, my unprivileged user name was in the Log Out option.

I logged out, then logged back in, and was prompted for super user authentication again. This time I refused to perform the authentication. Ever since then, my desktop has been in its current state.

I tried to figure out why I was being asked for super user authentication, and I think I know why, but it doesn’t make sense to me, and I don’t think you’re gonna buy it, either. :slight_smile: I had modified the Applications->System->File Manager->Nautilus shortcut to run it as the super user (I changed the target to ‘gnomesu nautilus’). Now, I can already hear everyone applying common sense and saying that merely having a shortcut in a menu can’t cause a superuser prompt (unless you click it, of course), but I swear up and down that once I deleted that shortcut, the super user prompt stopped.

Anyway, I’d like to get my desktop back.

Here’s what I’ve checked so far.

  1. In gconf-editor:

    /apps/nautilus/desktop/computer_icon_visible: enabled (weird – I had to enable it)

    /apps/nautilus/desktop/preferences/show_desktop: enabled (was already enabled)

  2. I’ve verified that root hasn’t somehow taken ownership of the contents of ~/Desktop. The permissions, owner and group are good.

  3. With a “ps ax | grep -i nautilus” I saw something like “nautilus --disable-desktop” (most likely --no-desktop, going by the Nautilus man page). This is most likely the smoking gun, but I don’t know what to do with this bit of information.

Thanks

EDIT: I only saw the nautilus --no-desktop thing once.

Do you log into the GUI as root? This is a sure way to mess things up by changing ownerships just by being root in a GUI.

DO NOT LOG INTO A GUI AS ROOT!

There is nothing you can do in a root GUI you can not do as a normal user becoming root temporarily.

You can fix the ownership problems as you find them. I suspect some files in ~/.gnome and ~/.gnome2 may have been effected also. Rem might just want to rename them and reset up your desktop.

Sorry, but I think I was unambiguously clear that:

I did NOT log in as root
I WAS logged in as an unpriviliged user
My permissions in ~/Desktop have NOT been taken over as root

Thanks for the suggestion for .gnome2, though, but I checked and it’s okay

EDIT: I don’t have a .gnome directory under ~

Sorry miss read I see lots of this here, users logging into a gui as root then later there is a problem.

So it still seems something in the ~/.gnome is messed rename them (outside the GUI) and see if that brings things back if you want to check first create a new user and see if he has the same problem. If not then is a gnome config problem and the quickest way to fix is to simply make new .gnome directories

log out press CRTL-ALT-F1 log in as you rm -R ~/.gnome*
be very very careful with that command.

become root
su -

and type
reboot

I don’t have a .gnome directory, but I recursively looked at .gnome2 with:

find . -name “*” | xargs ls -la

and everything was owned by me. Nevertheless, I renamed the directory, rebooted and another one was generated. However, the problem remains.

I created a new ‘test’ user and that user’s desktop is fine. I’d really rather not nuke and recreate my user…

Hi
Check the ownership of the file .Xauthority if it’s owned by root then
use the command;


sudo rm ~/.Xauthority

Then try logging into the GUI


Cheers Malcolm °¿° (Linux Counter #276890)
SUSE Linux Enterprise Desktop 11 (i586) Kernel 2.6.32.12-0.7-pae
up 0:10, 2 users, load average: 0.11, 0.12, 0.09
ASUS eeePC 1000HE ATOM N280 1.66GHz | GPU Mobile 945GM/GMS/GME

Heh… I don’t have a .Xauthority file. I’ve verified, however, that every single file, hidden and visible, is owned by me.

Also, for fun, I renamed ~/.gconf, rebooted (hey, why not – throw enough **** at the wall and see what sticks), and that didn’t make a difference.

I really think the solution lies with the “nautilus --no-desktop” I mentioned in my first post, but I don’t know where to go with it.

WTF!!!

Remember the Nautilus shortcut I said I modified and then deleted?

Out of a willingness to try absolutely anything, I recreated the Nautilus shortcut under Applications->System->File Manager. As you’d probably expect, nothing happened.

Then I clicked it, and BAM. My desktop came back.

Okay, it turns out that that was only a temporary solution – upon logging out and logging back in, I had no desktop again.

The problem is that for some reason, Nautilus no longer autoruns when I log in.

I created another test account and tried the steps for reproduction detailed in my first post. I reproduced it – this absolutely causes the problem to occur.

Something happens when the shortcut is deleted and manually recreated (if you set the shortcut back to what it was, rather than deleting it, the problem does not occur – but if you delete and recreate the shortcut, the problem does occur). The recreated shortcut lives in ~/.local/share/applications/nautilus.desktop. If the shortcut is not mucked around with, that file will not exist, which means it’s being pulled in from some global Gnome menu.

I examined the contents of the manually-recreated shortcut and saw this:


[Desktop Entry]
Categories=System;FileManager;
Encoding=UTF-8
Exec=nautilus
GenericName=File Browser
Hidden=true
Icon=gnome-fs-directory
Name=Nautilus
Name[en_US]=Nautilus
NoDisplay=false
OnlyShowIn=GNOME;
StartupNotify=true
Terminal=false
Type=Application
X-GNOME-AutoRestart=true
X-GNOME-Autostart-Notify=true
X-GNOME-Autostart-Phase=Desktop
X-GNOME-Bugzilla-Bugzilla=GNOME
X-GNOME-Bugzilla-Component=general
X-GNOME-Bugzilla-Product=nautilus
X-GNOME-Bugzilla-Version=2.28.4
X-GNOME-Provides=filemanager
X-SuSE-translate=true

Upon seeing that AutoRestart property, I’ve come to realize that there’s apparently more to Gnome “shortcuts” than, say, Windows shortcuts. I was kinda hoping that property would have been set to false, then all I’d have to do is set it to true and all would be right with the world, but unfortunately that was not the case.

Anyway, seeing this, I wanted to replace that nautilus.desktop with whatever Gnome does out of the box. I don’t know where Gnome stores its global menu, though – I figured /usr/share somewhere, but I couldn’t find it.

RESOLUTION:

Ultimately, the problem is that something in this process causes Nautilus to stop running automatically, so I ran gnome-session-properties and added an entry for Nautilus, even though properly-functioning accounts on my machine do not have an entry for Nautilus there (it must be set somewhere else). This permanently fixed my problem.

Also, I made a mistake by making the target shortcut “gnomesu nautilus” – what I wanted to do was have a shortcut for a root file manager window, so I should have created a shortcut to “gnomesu nautilus ~” to start it in a directory. Instead, I was starting Nautilus itself as root.