Icons and menus

Mark McLoughlin markmc at redhat.com
Tue Jul 12 14:18:48 UTC 2005


Hi,
	FWIW, it sounds like it'll be fixed in gtk+ by ignoring icon caches
which aren't accompanied by and index.theme file
(like /usr/share/pixmaps) and by making gtk-update-icon-cache not
generate an icon cache where an index.theme file doesn't exist. See:

  http://bugzilla.gnome.org/show_bug.cgi?id=310131

On Tue, 2005-07-12 at 13:30 +0200, Matthias Saou wrote:
> Mark McLoughlin wrote :
> 
> > > Bug report:
> > > https://bugzilla.redhat.com/bugzilla/show_bug.cgi?id=162465
> > > 
> > 	Okay, unless I'm mistaken, the reporter is saying that the menu item
> > for the app does appear in the menu, but the icon does not appear in the
> > menu item.
> > 
> > 	If so, the issue is possibly that there's an icon cache
> > in /usr/share/pixmaps (icon-theme.cache) where you're installing the
> > icon and since you're not updating the icon cache (with
> > gtk-update-icon-cache), the panel never sees the new icon.
> > 
> > 	Now, there should be no icon-theme.cache in /usr/share/pixmaps - none
> > of the Extras or Core packages create one AFAICS, so the cache was
> > either created by some bogus package in the past or the user created the
> > cache himself.
> > 
> > 	Either way, I think its a spurious problem which the user can fix by
> > deleting /usr/share/pixmaps/icon-theme.cache.
> 
> Thanks for the clarifications! I'll check to see if I don't provide any
> "broken" packages that would be creating an icon cache
> in /usr/share/pixmaps, as I've already seen the problem too.

	I did a grep in Fedora Core and Fedora Extras devel branches and didn't
find any packages which create an icon cache in /usr/share/pixmaps.

> > (
> >   As an aside, these days apps should be installing their icon 
> >   in $(datadir)/icons/hicolor/48x48/apps instead of $(datadir)/pixmaps
> >   (as suggested by the icon theme spec) and gtk-update-icon-cache 
> >   should be run in %post and %postun ala:
> > 
> >   $post
> >   touch --no-create %{_datadir}/icons/hicolor
> >   if [ -x /usr/bin/gtk-update-icon-cache ]; then
> >     gtk-update-icon-cache -q %{_datadir}/icons/hicolor
> >   fi
> > )
> 
> Seems a bit overkill. This should work the same, right?
> 
> %post
> gtk-update-icon-cache -q -f %{_datadir}/icons/hicolor || :

	Looks reasonable, yes. The former is just what all the packages in
Fedora Core do.

Cheers,
Mark.




More information about the fedora-extras-list mailing list