I ran into an issue recently trying to install a application menu link on a debian system (desktop was mate in this case, but I think it applies to any gnome based desktop). The issue was that I would install a new .directory file for a new menu entry along with the .desktop file, and when I did, the application would show up under "Other" and not under the menu category I was trying to add.
The processes being:
- create your menu entry in a file named company-company.directory
- create your application entry in a file name company-appname.desktop
- install with the command xdg-desktop-menu install company-company.directory company-appname.desktop
Running this as the local user, correctly installs the files in ~/.local/share/, but it does not write a menu file. And so the application will show up under Applications->Other
If you run the command as root, it will install system wide, and creates the menu for you under /etc/xdg/menus/applications-merged/company-company.menu
But if you don't want this installed system wide, it seems like the only way to fix this is to setup the .menu file manually? I feel like I'm doing this wrong, and there is a way to specify the menu in a user folder, but at the time I can't seem to figure this out.
To fix the issue I created the /etc/xdg/menus/applications-merged/company-company.menu file manually like this:
<!DOCTYPE Menu PUBLIC "-//freedesktop//DTD Menu 1.0//EN" "http://www.freedesktop.org/standards/menu-spec/menu-1.0.dtd"> <Menu> <Name>Applications</Name> <Menu> <Name>company-company</Name> <Directory>company-company.directory</Directory> <Include> <Category>Company</Category> </Include> </Menu> </Menu>
This added the menu entry, and the locally installed applications now show up in the correct location.