programmatically adding cross-platform menu items



I'm working with Gnome 2.8.0/KDE3.3.1 on CentOS 4 and Gnome 2.16/KDE
3.5.4 on CentOS 5. I have a script that creates the following
structure in a user's home directory when software is being installed
without root privileges:
.config/
  menus/
    applications-merged/
      <xml-based menu file>

.local/
  share/
    desktop-directories/
      <.directory files>
    applications/
      <.desktop files>

There are two full sets of .desktop files. One that shows up only
under kde, and one that only shows up under gnome. On CentOS 4/Gnome
2.8, this works great, and both desktops have the exact same menus.***

On CentOS 5/Gnome2.16, however, this fails. The menu items still show
up as expected in KDE, but fail to appear at all in Gnome. Moving (and
slightly altering) the contents of the .menu file in the
applications-merged directory to the applications.menu file (in
.config/menus) seems to fix the problem, but it seems easier to just
have the external file and have it be the same on both platforms.

Is there something I'm missing, or an easier way to go about it?

Thanks,
-Chris

***The reason for the two sets of files (one for each desktop) is
because I needed certain menu items to point to folders, so I needed
one to have kfmclient and another gnome-open


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