Red Hat Bugzilla – Bug 1017801
Don't display icon sets without index.theme
Last modified: 2013-11-10 03:06:46 EST
Created attachment 810548 [details]
gnome shell overview with Fedora icon set
Description of problem:
In Fedora 19 I used "Fedora" icon set (set through gnome-tweak-tool) and everything worked fine. The benefit was that some apps showed nice fedora logos when displaying the default system icon.
In Fedora 20, this completely breaks everything. Gnome Shell doesn't display icons in top right menu, many applications lost their icons, and there are no icons in Nautilus.
Version-Release number of selected component (if applicable):
Steps to Reproduce:
1. run gnome-tweak-tool
2. Appearance -> Icons -> Fedora
3. see broken icons everywhere
Created attachment 810553 [details]
nautilus screenshot with Fedora icon set
I'm not sure how this is a fedora-logos bug. The images haven't changed, GNOME did. Additionally, the only "icon" in fedora-logos is the Fedora logo, so I think you might be referring to some other images package. Perhaps it is missing?
If you can specify the file names for the icons that you used to use in F19, I might be able to help you identify the missing package.
Doesn't fedora-logos have some kind of "dependency" on the GNOME icons? Because when I used it in F19, everything looked exactly the same as with the GNOME icon set, except for the OS icon (fedora logo).
The dependency doesn't seem to work in F20. Basically when I upgraded from F19 to F20, half of my icons went missing. I learned that by switching to "GNOME" icon set they come back.
No, there is no dependency on the GNOME icons. I think you have fedora-logos confused with some other icon package. Possibly bluecurve-icon-theme or tango-icon-theme?
When I said "dependency", I didn't mean RPM dependency, but rather some kind of fallback definition ("if the icon is not in Fedora icon set, search in GNOME icon set").
I'm quite sure I'm not mistaken. Could you please try reproducing this according to the reproducer in comment 0? It can be easily tested in a VM:
When I select "Fedora" icon set in gnome-tweak-tool, I believe it refers to /usr/share/icons/Fedora and that is owned by fedora-logos.
$ rpm -qf /usr/share/icons/Fedora/
I think you are incorrect here. The only "icons" provided by fedora-logos are for Anaconda and the old GNOME 2 start menu icon (which is not used in GNOME 3 afaik). Look through that directory.
It is possible that gnome-tweak-tool is picking up the "Fedora" directory under /usr/share/icons/Fedora and expecting a full set of icons to be there (and since they're not, things are disappearing), but that is either:
A) A bug in gnome-tweak-tool, where it used to fall back to something in case of missing icons (which it really should do, IMHO).
B) A bug in fedora-logos, where we should stop including the /usr/share/icons/Fedora directory (and move the files in there to other places) to prevent the gnome-tweak tool from thinking there is a full icon directory there.
I really think you should work with the GNOME upstream to figure out which of these cases is correct from their perspective, and if I need to make changes to the fedora-logos package, I will.
which means 'use the Mist theme for any icons not in this icon theme'. The Mist theme is part of gnome-themes:
[root@vaioz icons]# rpm -qf /usr/share/icons/Mist/
but fedora-logos does not require this:
[root@vaioz icons]# rpm -q --requires fedora-logos | grep theme
which seems broken. If the stuff in /usr/share/icons/Fedora is not really supposed to be a selectable icon theme, indeed, it should be moved elsewhere and not constructed as an icon theme (with an index.theme file etc) - the few icons it contains could just be moved into hicolor, or something. If we still want it as a selectable icon theme, then it should have a dependency on the theme it inherits.
seems like fedora-icon-theme owns the directories and provides the index.theme file, but contains no actual icons, and does require gnome-themes, so the Mist dependency ought to be installed if fedora-icon-theme is...but kparal had fedora-logos installed with no fedora-icon-theme . As spot says, it may be considered a bug in gnome-tweak-tool that it considers a directory under /usr/share/icons with no index.theme to be a selectable icon theme.
If I install fedora-icon-theme (and gnome-themes), things start to work. So either gnome-tweak-tool should not allow to select icon sets without index.theme present, or the packaging should be done in a different way (put start-here.png and anaconda.png to /usr/share/icons/hicolor?).
So, to summarize:
* fedora-icon-theme provides the index.theme in /usr/share/icons/Fedora, and depends on gnome-themes to satisfy the Inherits=Mist
* fedora-logos and generic-logos provide alternate (branded and non-branded) anaconda logos within that icon theme
* fedora-logos also provides a 'start-here' icon within that icon theme; generic-logos does not
* there are no dependencies of any kind between fedora-logos, fedora-icon-theme and generic-logos
* gnome-tweak-tool considers the directory tree that exists when fedora-logos is installed but fedora-icon-theme is not to be a selectable icon theme
I am not sure what if any of the above things could be considered broken, but that's the space we're functioning in. The 'anaconda' icon is presumably the one used by the installer; I'm not sure why it needs to be in the Fedora icon theme? Couldn't it simply be put in hicolor? I don't immediately see why that wouldn't work. I'm not sure of the purpose of the 'start-here' icon, or why it doesn't exist in generic-logos.
Adding gnome-tweak-tool maintainer to CC.
"In at least one of the theme directories there must be a file called index.theme that describes the theme. The first index.theme found while searching the base directories in order is used. This file describes the general attributes of the theme."
I suppose you could argue that to mean that gnome-tweak-tool should not consider a directory without an index.theme to be an 'icon theme', or that a packaging setup which allows something very icon-theme-y but with no index.theme is incorrect, or both.
gnome-tweak-tool fix is here:
Thanks, reassigning to gnome-tweak-tool. If the icon set is not selectable, we don't need to change packaging (of course we still can if spot thinks it's a good idea).
gnome-tweak-tool-3.10.0-2.fc20 has been submitted as an update for Fedora 20.
* should fix your issue,
* was pushed to the Fedora 20 testing repository,
* should be available at your local mirror within two days.
Update it with:
# su -c 'yum update --enablerepo=updates-testing gnome-tweak-tool-3.10.0-2.fc20'
as soon as you are able to.
Please go to the following url:
then log in and leave karma (feedback).
Updated version fixes the problem, all directories without index.theme are gone.
gnome-tweak-tool-3.10.0-2.fc20 has been pushed to the Fedora 20 stable repository. If problems still persist, please make note of it in this bug report.