Ubuntu – How to fix program icons that appear as a question mark in the Launcher

13.04iconslauncher

In the left side of the screen there are icons: Software Center, Ubuntu One, etc. System icons can be seen but icons of the programs that I have installed can not be seen. Rather there is a "?" for the icons. How can I solve this problem?

Best Answer

.desktop files control the behavior of launcher shortcuts in Linux. To check the icon in use, you will need to open the appropriate .desktop file that is located in either /usr/share/applications or in ~/.local/share/applications by typing the following command: (I'm assuming you installed Eclipse from the software center, so the more likely option is in use:

sudo -H gedit /usr/share/applications/eclipse.desktop

If this file is empty, you will need to exit without saving, and substitute the path in the command. Go down to the line marked Icon= and if there are any comments in it (designated by #), remove this comment, as i have heard of a bug that causes the icon to display, however i don't know if it has been fixed as yet.

If there is no Icon= line, find an appropriate icon in .png format and put the full path in this line including the Icon=.

Edit:

From the comments, you have said that you are running this from a link on the desktop. The proper way to do this would be to create a desktop launcher and asscociate the icon from it. To do this, open a terminal and type:

gedit ~/Desktop/eclipse.desktop

this will open a blank document. To make it a launcher add this to the file, substituting the correct paths for both the Exec= and the Icon= lines:

[Desktop Entry]
Type=Application
Encoding=UTF-8
Name=Eclipse
Comment=Eclipse
Exec=<path_to_eclipse>/eclipse
Icon=<path_to_eclipse>/icon.xpm
Terminal=false
Type=Application
Categories=GNOME;Application;Development;

Save and close, then make the file executable by typing chmod +x ~/Desktop/eclipse.desktop

Now, when you open this shortcut, the icon set will appear in the launcher.