Bug 327130

Summary: No icons under System section in the main-menu slab
Product: [openSUSE] openSUSE 10.3 Reporter: Tim Lee <timlee>
Component: GNOMEAssignee: James Krehl <jimmyk>
Status: RESOLVED FIXED QA Contact: E-mail List <qa-bugs>
Severity: Critical    
Priority: P5 - None CC: coolo
Version: RC 1Flags: coolo: SHIP_STOPPER-
Target Milestone: ---   
Hardware: i586   
OS: Other   
Whiteboard:
Found By: Integration Test Services Priority:
Business Priority: Blocker: ---
Marketing QA Status: --- IT Deployment: ---
Attachments: tar file of .gconf directory
system-items.xbel
system-items.xbel file
gnome-main-menu-0.9.8-95.i586.rpm
applications.xbel

Description Tim Lee 2007-09-21 14:06:00 UTC
- clean install of 10.3 RC1 from GNOME live CD
- after initial boot created user account for tim
- moved the home directory created by yast to tim.bak
- copied home directory from SLED 10 SP1 to /home on 10.3
- logged in as tim
- the main-menu slab had no icons under System
Comment 1 Tim Lee 2007-09-21 14:07:57 UTC
Created attachment 173900 [details]
tar file of .gconf directory
Comment 2 Mark Gordon 2007-09-21 14:12:01 UTC
I'm seeing something similar, in somewhat limited cases.  On my primary laptop (/home previously used by SLED), I only have Lock Screen.  On other machines (with fresh /home), I'm seeing a wide range of options (Help, Control Center, Install Software, Lock Screen, Logout, Shutdown).
Comment 3 James Krehl 2007-09-21 18:44:06 UTC
Are you seeing the launchers minus the icons or are you not seeing any launchers at all?

As a note, I just installed RC1 from DVD and it's working properly.  Will try with the live CD.
Comment 4 Mark Gordon 2007-09-21 19:01:34 UTC
I'm seeing no launchers at all (except Lock Screen).  This was a DVD install, FWIW.

When I created a fresh user, though, I had all the System options, so I'm inclined to assume it has something to do with previous user settings.
Comment 5 James Krehl 2007-09-21 20:44:20 UTC
Mark, what does ~/.local/share/gnome-main-menu/system-items.xbel from the bad user's home dir contain?  When you created the fresh user where all the icons present?

Tim, can you answer the question in comment #3?
Comment 6 Mark Gordon 2007-09-21 21:22:39 UTC
Created attachment 173984 [details]
system-items.xbel

Hmm... I see a lot of /opt there.
Comment 7 Tim Lee 2007-09-24 16:03:23 UTC
Created attachment 174397 [details]
system-items.xbel file

I am not seeing any launchers at all under the System section of the slab.
Comment 8 James Krehl 2007-09-26 18:07:54 UTC
If ~/.local/share/gnome-main-menu/system-items.xbel exists then it means that the user had specially configured their system area, either by adding/removing applications from it or by rearranging it.  The user file contains full paths, as opposed to just the name of the .desktop file in order to accomodate user created launchers.  If the location of .desktop file changes, e.g. as the result of upgrading from an /opt system to a /usr system, these items become lost.  There are 2 basic work arounds to fix this problem.

First, one can just delete ~/.local/share/gnome-main-menu/system-items.xbel to restore the default.  Or, one can edit the file and correct the paths.

Setting to WONTFIX as per Jared Allen's request.
Comment 9 JP Rosevear 2007-09-26 19:31:43 UTC
What happens if a user upgrades SLED 10 -> SLED 10 SP1 and their gconf settings are migrated?
Comment 10 JP Rosevear 2007-09-26 19:32:35 UTC
Also, if a person adds one thing to the system area, are all items written out with absolute paths?
Comment 11 JP Rosevear 2007-09-26 19:39:41 UTC
Add one item, and:
 <bookmark href="file:///opt/gnome/share/applications/yelp.desktop" added="2007-01-16T05:53:36Z" modified="2007-09-27T22:40:08Z" visited="2007-01-16T05:53:36Z">

So the pre-existing items were all written out as full pathes.  Meaning I think that if you change any item, pretty much all your items will be broken when you move from SLED 10 SP1 or openSUSE 10.1.  Not sure about moving from 10.2.
Comment 12 James Krehl 2007-09-26 20:41:04 UTC
When the system area was configured using GConf it did not use .desktop files to represent the system items.  While not true for every case, it is likely that any change to the default list of items (applications or system) will result in all items being expanded to full paths.  Expanding the path was done to distinguish customized launchers from their corresponding defaults when they have the same basename, e.g. /usr/share/applications/gedit.desktop vs. ~/Desktop/gedit.desktop.

This has been a problem before, #142932, for the applications in particular.  Whenever the path of an application's .desktop file changed the main-menu couldn't keep up.  It was decided then to let those applications fall through the cracks, but just to make sure that everything else was consistent with that.

I think I have a decent solution though which preserves most of the functionality which is to first lookup the .desktop by path falling back to a search by basename.

Please try the packages here:

http://w3.suse.de/~jimmyk/gnome-main-menu/STABLE/v0.9.8-95/

I will reopen and set to NEEDINFO
Comment 13 James Krehl 2007-09-26 20:41:49 UTC
Please try the packages in comment #12.
Comment 14 James Krehl 2007-09-26 21:00:49 UTC
Created attachment 174979 [details]
gnome-main-menu-0.9.8-95.i586.rpm

32bit package for those who can't access http://w3.suse.de.
Comment 15 James Krehl 2007-09-27 20:57:47 UTC
There are newer packages at http://w3.suse.de/~jimmyk/gnome-main-menu/STABLE/v0.9.8-96a/ which deal with the control-center and package-manager changes in 10.3.
Comment 16 Victor Billings 2007-09-27 22:16:59 UTC
I tested this by following these steps : 
1. Install 10.2
2. Customize the "System" area of the main menu by adding the date and time applet
3. Changed the order of the shortcuts listed in the system area by dragging them around.
4. Performing an online update to 10.3

After the update was complete only the Date and Time and one other launcher were shown under the system area of the main menu. 

I then patched up to the gnome-main-menu packages available here :
http://w3.suse.de/~jimmyk/gnome-main-menu/STABLE/v0.9.8-96a/gnome-main-menu-0.9.8-96.i586.rpm

After upgrading, I found that the other system entries were properly shown. However, after closer inspection, I found that there were still some applications with /opt in their path listed in the applications.xbel file. However, these applications were still able to be launched via the main menu. I have attached my applications.xbel for reference.
Comment 17 Victor Billings 2007-09-27 22:17:44 UTC
Created attachment 175328 [details]
applications.xbel
Comment 18 Jared Allen 2007-09-27 22:41:27 UTC
I should note that vbillings used 10.3 RC2 in his test in comment #16.

Since this happens in a 10.2->10.3 upgrade scenario, I am re-opening this bug.  James, are the /opt entries in the attached .xbel file a concern?  Calvin had a concern with your first patch as a result of his code review.  Has that been resolved?  Please forward the latest patch to Calvin and Brady for review, again.
Comment 19 JP Rosevear 2007-09-28 04:44:17 UTC
How do you customize the system area in 10.2?  I can't seem to drag app iconst o it, do I have to actually alter the gconf keys in 10.2 to do this?
Comment 20 Jared Allen 2007-09-28 12:42:27 UTC
(In reply to comment #19 from JP Rosevear)
> How do you customize the system area in 10.2?  I can't seem to drag app iconst
> o it, do I have to actually alter the gconf keys in 10.2 to do this?
> 

You can drag the already-existing launchers around to change their order.  You can also drag from Favorite Applications onto the System area.
Comment 21 James Krehl 2007-10-02 19:43:17 UTC
A patch has been submitted for this bug, with SwampID 13500.
Comment 22 JP Rosevear 2008-03-29 16:22:42 UTC
*** Bug 328750 has been marked as a duplicate of this bug. ***