Thomas Adam <tho...@fvwm.org> writes: > On Wed, Apr 27, 2011 at 09:06:31PM -0400, des...@verizon.net wrote: >> Thomas Adam <tho...@fvwm.org> writes: >> >> > On Tue, Apr 26, 2011 at 09:31:02PM -0400, des...@verizon.net wrote: >> >> Jesús J. Guerrero Botella <jesus.guerrero.bote...@gmail.com> writes: >> >> >> >> > $ ls /etc/xdg/menus/ >> >> > kde-4.6-applications.menu kde-information.menu lxde-applications.menu >> >> > >> >> > I can send you the files if you need to take a look inside. >> >> >> >> Yes, send me lxde-applications.menu. >> >> It's the only one of those that I don't have. >> >> >> >> I think kde-4.6-applications would serve as a main menu, but >> >> obviously, a name like that is a moving target. >> > >> > Can't we just glob() for these or do a readdir() on these? >> >> No, you're on the wrong track. >> >> All that needs changing is the identifier for the root menu. >> >> This code: >> >> my @menu_bases = (qw( >> applications >> debian-menu >> ) >> ); >> >> Just add lxde-applications to that list like this: >> >> my @menu_bases = (qw( >> lxde-applications >> applications >> debian-menu >> ) >> ); >> >> and you'll be in business. >> >> But none of this makes sense to me. >> The code we are using came from arch-linux. >> >> I'll see if I can figure out what they've been up to. > > OK -- it seems a bit stupid to me. But: > > http://standards.freedesktop.org/menu-spec/menu-spec-1.0.html > > Says: > > $XDG_CONFIG_DIRS/menus/${XDG_MENU_PREFIX}applications.menu This file > contains the XML definition of the main application menu layout. The first > file found in the search path should be used; other files are ignored. This > implies that if the user has their own ${XDG_MENU_PREFIX}applications.menu, > it replaces the system wide one. (Though the user's menu may explicitly > merge the system wide one.) > > Systems that offer multiple desktop environments and that want to use > distinct menu layouts in the different environments can use differently > prefixed .menu files. In this case the $XDG_MENU_PREFIX environment variable > must be set by the system to reflect the .menu file that is being used. > > For example if a system contains both the GNOME and the KDE desktop > environments it can decide to use gnome-applications.menu as the menu layout > in GNOME sessions and kde-applications.menu as the menu layout in KDE > sessions. To correctly reflect this, it should set the $XDG_MENU_PREFIX > environment variable to "gnome-" respectively "kde-". > > Implementations may chose to use .menu files with other names for tasks or > menus other than the main application menu. Such usage is not covered by > this specification. > > > But we're not setting or using XDG_MENU_PREFIX, so perhaps we ought to be.
I think we're getting emails late? The change I committed a day or 2 ago uses XDG_MENU_PREFIX.