I've been using XFCE for about a week now; I finally gave up on KDE on my desktop because of too many problems with the set-up there (switching between multiple users with multiple X servers running different WM/DE combinations, three monitors and two videocards; it is this last part which seems to have hamstrung KDE when switching users/X instances).
Anyway, XFCE has proven to be very stable in that context, and has gotten me into using XDG files for panel menus, which seem to be very straightforward; I have a menu file that looks like this:
<!DOCTYPE Menu PUBLIC "-//freedesktop//DTD Menu 1.0//EN" "http://www.freedesktop.org/standards/menu-spec/1.0/menu.dtd"> <Menu> <Name>GoldilocksDE</Name> <AppDir>/home/goldilocks/xdg/applications</AppDir> <Include> <Category>Goldilocks-favourites</Category> </Include> </Menu>
Then everytime I want to add an app to that list, I just stick its desktop file in
/home/goldilocks/xdg/applications and it is added to the menu without having to reload, restart, or do anything further. Very nice.
For the most part, I've just been copying these in from
/usr/share/applications, and adding
There's still the default panel menu with a bunch of submenus that contains everything and I'm not bothering with editing that or using
xdg-desktop-menu; the customized menu above is just for the half dozen or so things I use most often. I'm using a custom path instead of
~/.local/share/applications since the system/installers/the package manager uses that. I've copied entries out of there too.
But now I am confused. I tried to copy in an entry for
okular; there's two on the system I could find, one left behind in
/usr/share/appplications/kde4 (actually there's a bunch of
okularApplication_foo.desktop ones in there that seem to be about different mime types), and one in
~/.local/share/applications. Neither of them work when copied into the custom
/home/goldilocks/xdg/applications. I also took one for an application which does work and just replaced a few values appropriately.
[Desktop Entry] Version=1.0 Name=Okular Comment=Document viewer Exec=okular Icon=okular Type=Application Terminal=false Categories=Goldilocks-favourites X-Desktop-File-Install-Version=0.22
No dice. It is just not in the menu. XFCE does not seem to log errors or anything anywhere AFAICT (there's nothing in
/var/log/syslog, and I get a copy of anything using syslog dumped there; journald runs mostly castrated and never shows anything additional to that).
So I've been looking at the man pages found with
apropos xdg, there's not much there, and this freedesktop page makes the format sound as simple and open as I think it is, with the exception of "the 'reverse DNS' convention e.g. org.example.FooViewer.desktop" which none of the desktop files on the system have followed anyway. I also can't seem to find the Okular.desktop file that the big default menu (
/etc/xdg/menus/xfce-applications.menu) uses despite having read this and noted the contents of
env | grep XDG. It doesn't seem to be one of the the files mentioned above, since if I tweak them (e.g., change the icon) it doesn't affect the menu.
Does anyone understand what the issue is here?