(KDE) Unable to change icon associated with mimetype due to missing subdirectories.

TW 20151128 / KDE Frameworks 5.16.0 / System Settings 5.4.3

Attempting to change the icon associated with a mimetype (System Settings -> Applications -> File Associations) fails to work.

Within system settings it gives the appearance of having worked, however having closed System Settings the icon is unchanged when viewing a directory listing using Dolphin, and if one again uses System Settings it shows the original icon.

This section of “.xsession-errors-:0” gave the clue…

m_userSpecifiedIcon has changed. Now set to "text-rdf+xml"
Entry  "application/rdf+xml"  is dirty. Saving.
m_userSpecifiedIcon has changed. Now set to "text-rdf+xml"
writing "/home/paul/.local/share/mime/packages/application-rdf+xml.xml"
Couldn't open "/home/paul/.local/share/mime/packages/application-rdf+xml.xml" for writing
"application/rdf+xml" hasDefinitionFile: false

Specifically, the “Couldn’t open…” - The subdirectory didn’t exist.

Having manually created ~/.local/share/mime/packages, changing the icon then worked correctly.

I have 3 users on that particular machine, none of whom had a “~/.local/share/mime/*” subdirectory.

Interestingly, System Settings was able to create an additional subdirectory, “~/.local/share/mime/application”.

I tried again with one of the other users, initially just creating “~/.local/share/mime” - which failed, it had to be “~/.local/share/mime/packages”.

So it seems that System Settings expects that subdirectory to “just be there”… :slight_smile:

I guess a bug report against kcm_filetypes is probably in order.

Bug report: https://bugs.kde.org/show_bug.cgi?id=356237