I am writing a desktop entry for an application that doesn't come with one (let's say application A). As usual, I just copy a desktop entry that exists already (let's say the desktop entry of application B), change the filename of the copy, and replace the fields' values (so that I don't have to look up the fields' names).

I initially kept application B's icon, because that's generally the last thing I change (and I had no image yet). I also initially inverted the Comment and GenericName fields, by mistake. I tested my desktop entry with the launcher, saw that application A is correctly launched, but the generic name is wrong and the icon is the one from application B, so I changed the respective fields and... nothing? It's still the old field values? It's displaying the icon of the other application and also the wrong generic name.

I could have messed up the icon image absolute path, sure, but the new icon filename has nothing to do with application B's icon, so it's very weird. Also, I deleted the field Comment, corrected the field GenericName and the current generic name displayed in the launcher is a string that is not written at all in the desktop file (the generic name displayed in the launcher is the old value I had entered initially for the GenericName field).

I obviously logged out, and when that failed to update the fields' values, I also rebooted my computer, and still the icon is the other application's, and the generic name is incorrect. The launcher still launches application A correctly, though.

Any idea how to correct all this?

1 Answer 1


My desktop environment is a KDE environment, so I looked up the system cache and running the command kbuildsycoca5 --noincremental did the trick for me. Basically, it triggers a full rebuild of the KSycoca database. The source that explains it is here [x]. I have now the correct icon and correct generic name.

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .