Gnome and custom icons sets some application menu icons not showing

I have recently gotten into a bit of customization, now I am noticing something with custom icon sets. When I place a custom icon set in ~/.icons and then run “gtk-update-icon-cache” to build up a cache it seems not for all menu’s in some applications all of the icon shows up. An example of this is Gnome calculator.

I’m using Silverblue, when I overlay an icon-theme package there doesn’t seem to be a problem. I’ve searched around everywhere and can’t seem to find the cause of this. A good example of this is the “papirus-icon-theme” rpm package vs when you download “papirus-icon-theme” from gnome-look.org and place it in ~/.icons.

So my only conclusion is that I am missing something that’s not very common knowledge? Anyone have an idea what it is?

Hi,

I suppose the papyrus theme doesn’t provide all necessary icons.

To ensure always having fallbacks, open the index.theme file in the papyrus folder, and check if you have proper inheriting:

[Icon Theme]
Inherits=Adwaita,AdwaitaLegacy,hicolor

Thanks for your reply. It seems the downloaded icon them didn’t have that but this set there.

[Icon Theme]
Inherits=breeze,hicolor

I changed that to what you have there, updated the cache, then logged out and logged in again.

From your explanation, my understanding those are fallback definitions so that, if the used icon set doesn’t have an icon for some reason it then use one of those prioritized in that order?

Exactly.
I think breeze was to ensure proper fallback on KDE desktop. On GNOME, prefer Adwaita instead.

I tried changing that to Adwaita then the problem persists in my downloaded them in ~/.icons/Papirus/index.theme.The odd thing is I installed the “Papirus” theme using the rpm package and checked out the index.theme. The index.theme file there and it has Inherits=breeze,hicolor as well.

Quite confusing why the rpm package version does work while not having Breeze installed, while the downloaded version of Papirus doesn’t work, even when changing Inherits= to Inherits=Adwaita,AdwaitaLegacy,hicolor.

I also ran gtk-update-icon-cache and logged out and logged in again. Am I still missing a step or something?

Can you run the app with the environment variable
GTK_DEBUG=icontheme,iconfallback
?

That should give you some insights.

That comes back empty. It’s probably useful to know that I’m running Silverblue and all my graphical applications are Flatpaks. I did check to see if Adwaita and Breeze are installed as Flatpaks and they are. I tried installing “org.gtk.Gtk3theme.Breeze” as well but that didn’t seem to make a difference.

@gwillems I have it working now. I came across this link about theming and Flatpaks.

I ran the following.


flatpak --user override --filesystem=$HOME/.icons
flatpak --user override --env=ICON_THEME=Papirus

Now Gnome Calculator is getting the correct theme and it works when I apply the same to my other themes as well.

Thanks for your help and pointing me in the right direction!

1 Like

@gwillems do you want me to mark your reply as solution. I don’t like marking my own answer as solution whens someone else helped actually helped me get there?

I think the right solution is your one, better mark it instead of mine.

1 Like

This topic was automatically closed 45 days after the last reply. New replies are no longer allowed.