Thank you to unman for giving me the thread to follow. The way the icons are chosen could be improved easily. I'd be happy to contribute a patch if I knew the procedure for doing so. (It would not touch dom0.)
To close out the thread, here is the answer to my question. The process of updating the Q menus is controlled by dom0's /usr/lib/python3.5/site-packages/qubesappmenus/receive.py. When updating the Q menus, dom0 first asks the vm for its desktop files. The vm provides these using /etc/qubes-rpc/qubes.GetAppmenus, which is a shell script that jumbles all the desktop files on the system together and sends to stdout. dom0 sanitizes and parses this, and assembles the results into a bunch of desktop files in dom0's ~/.local/share/qubes-appmenus/VM. As it is doing this it notes which icons specified in the desktop files have relative paths (typically, all of them). For each icon name, dom0 asks the vm to run /etc/qubes-rpc/qubes.GetImageRGBA and deliver the resulting icon file to dom0. For icons described by a relative path, the first thing this shell script does is resolve the icon name to a file name using /usr/lib/qubes/xdg-icon, which is also a shell script, and is where the actual resolution takes place. This resolution is simplistic. It uses a fixed list of icon theme names (on my system: Humanity, Adwaita, gnome, oxygen), followed by any additional icon themes in /usr/share/icons. The first theme that has a suitably named icon is the theme whose icon file gets used. I don't have Humanity installed, so I was getting Adwaita icons every time, and overwriting them was the only way I could change my icons. A simple fix is to insert my desired icon theme at the beginning of the fixed list of themes. This is not the right way to solve the problem in general. To solve it properly would require deciding what the right behavior is: should the theme used in dom0 (meaning: one of the same name) get used? Or should the theme preferred by that template's user account get used? Not sure what the most natural answer is. But I'm satisfied for now. Thank you! Daniel -- You received this message because you are subscribed to the Google Groups "qubes-users" group. To unsubscribe from this group and stop receiving emails from it, send an email to qubes-users+unsubscr...@googlegroups.com. To post to this group, send email to qubes-users@googlegroups.com. To view this discussion on the web visit https://groups.google.com/d/msgid/qubes-users/20190302173219.78fddd83%40allcock.org. For more options, visit https://groups.google.com/d/optout.