How do icons work in Linux/xfce

In Windows, the icon of the given application is included directly in the binary file, but in Linux it is not like that and everything is handled through separate files in “/icons/theme” folder?

For example, if I install Steam package via pacman, the original Steam icon is stored somewhere? And if there is an alternative icon version in the used theme, it’s skipped completely?

I’m bigger fan of using original icons than themed one but it seems like bit harder way than I would have expected :slight_smile:

Some/most will be stored in the /usr/share/icons/hicolor/ folder. This is the first place to look for such icons.

Ok thats correct, original Steam icons are saved in /usr/…/hicolor/ as *.png.

Problem is when I right click on desktop icon/properties/all icon/ there are only icons from used theme and from /home/user/.local/share/icons/hicolor/. So how I can force those icons from /usr/…/hicolor/ or put custom icons into /.local/…/hicolor?.

Which theme is your used theme?

Qogir Dark

Right, first of all I’m using KDE Plasma and Papirus icon theme, not Xfce and Qogir Dark…

What should work is copying the icons you want to the ~/.local/share/icons/Qogir folder, using the same folder structure as Qogir, and changing the filenames so they match those of the same applications icons in the /usr/share/icons/Qogir folder.

I’m saying that the folder should be named “Qogir” because I think that this is where application icons are stored for all the Qogir variants. If this is not the case then use the folder name of Qogir-Dark (or whatever that folder in /usr/share/icons/ is called).

So, if the Steam icon is in /usr/share/icons/Qogir/apps/scalable/ and is called steam.svg, then you need to create that same folder structure under ~/.local/share/icons/ and call the icon you want steam.svg. You may well also need to log out and back in afterwards for it to show.

Thank you. Yes, it behaves somewhat strangely because there are “Qogir” and “Qogir-dark” folders. I see it now. Copying the icons directly into the theme and rebuild icon cache is probably the easiest way.

User space settings in Linux generally override system settings, as a rule-of-thumb to keep in mind!

1 Like

The easiest way until the package for the theme is updated and overwrites those icons. Icons in ~/.local/share/icons/ will persist after an update.