6

I am using Xfce-4.10 on Debian 7. But I found some icons are missing (and only "x"'s appear) in the application menu. Take ipython3 as an example. Here's the ipython3.desktop:

# If you want ipython3 to appear in a linux app launcher ("start menu"), install this by doing:
# sudo desktop-file-install ipython3.desktop

[Desktop Entry]
Comment=Enhanced interactive Python shell
Exec=ipython3
GenericName[en_US]=IPython3
GenericName=IPython3
Icon=ipython3
Name[en_US]=ipython3
Name=ipython3
Categories=Development;Utility;
StartupNotify=false
Terminal=true
Type=Application

The theme is installed (currently tango-icon-theme, but other themes don't work either). The icon file is at /usr/share/icons/hicolor/scalable/apps/ipython3.svg. It can be displayed in an image viewer.

Reinstalling ipython3 doesn't help. I also tried to replace the ipython3.svg with some other normal icon files (libreoffice-calc.svg, for example). This doesn't help either.

Any ideas to bring the icons back? Thank you.

2 Answers 2

1

Try to

gtk-update-icon-cache /usr/share/icons/hicolor/

as root in order to refresh the icons cache. It may be also performed for another directories containing the icon themes (with index.theme files).

1

Here's a snippet I'm using on peppermint;

for i in $(find /usr/share/icons/ -maxdepth 1 -type d); do sudo rm -f $i/.icon-theme.cache; sudo gtk-update-icon-cache -t -i $i; done

for i in $(find ~/.icons -maxdepth 1 -type d); do sudo rm -f $i/.icon-theme.cache; sudo gtk-update-icon-cache -t -i $i; done

You can easily save the code part to a file, like "regeniconcache", to whatever directory you want, and then make it executable:

chmod 755 ~/regeniconcache

and then put it into the user-executable scripts folder by:

sudo ln -sf ~/regeniconcache /usr/sbin/regeniconcache

from the terminal Every time you notice that some widget complains that there's an icon cache file missing, you can simply type

regeniconcache

into the terminal and press enter, and the entire icon cache will be regenerated.

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .