I thought I’d share a fun hour or so of my afternoon and how I approached tracking down a bug in the Fedora Xfce spin.

The bug is https://bugzilla.redhat.com/show_bug.cgi?id=2170682 “Updates cause Xfce to lose all menu icons”. A curious bug, on updating to the latest version icons in menus no longer were enabled (although the user didn’t disable them and they are enabled by default).

Since the report happily had the update where it started, I went and looked first upstream (which turned out to be a mistake, but you never know). I looked through the recent commits for xfce4-settings to see if anything stood out as possibly being related to this. Nothing really did. All the changes seemed minor and unrelated.

Next I grabbed the latest Fedora 38 prebeta/branched Xfce live media and fired it up in a vm. Sure enough, the icons were not there at all. I checked the live users xsettings.xml vs the default one and they both seemed fine from a quick glance. Then, I saved off the user xsettings.xml file and reset the menu icons option. Sure enough, that one option was added, but the file was otherwise completely the same.

Next I checked the user journal. Bingo. There is a message saying the system xml file is broken/not parsable. Thats the problem! So where does the offending line come from? It’s from the patch we have to set the default theme… the xml wasn’t formed fully correctly and thus xfsettingsd just gave up reading it and never got to the default for menu icons. 🙂

Knowing when something broke really helps you narrow down what to look at for the problem. In some ideal world I would have checked the user journal for errors first, but I did get there eventually.

So if you hit a bug: try and figure out when it started, use that to bound your search for _what changed_ and that will a lot of the time find the culprit.