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

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


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).


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


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

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.