About .desktop files and their special function
.desktop
files are special files. They represent applications in the GUI, either on your desktop or in Dash/Unity. To do so, a GUI -name of the application is set in a line inside the file in the line
Name=Eclipse
You can simply change the name of how the application shows in Dash and Unity, by changing this line inside the .desktop
file, without changing the file name of the .desktop
file. In that case, it is irrelevant if the file is executable or not.
If the .desktop
file is on your desktop however, if it is not executable, it does not work as a launcher, for reasons explained in souravac's answer, and "shows" under its own (file) name:
eclipse.desktop
If it is executable and on your desktop, it works as a launcher and so it is is representing an application. Then it shows the application's name, as set in the line Name=
Language specific name
If the .desktop
file has the line:
X-Ubuntu-Gettext-Domain
the file even shows a language- specific name, fetched from a language file, which will then show in Dash and Unity.
below a complicated example: filename = inkskape.desktop, "basic" interface name = Inkskape, translated name = Inkskape Vector Graphics Editor
The ls command
In the ls
command is purely cli- based and always shows the file -name.
smartgit.desktop
is not an application shortcut. What issmartgit.desktop
?