Comment 5 for bug 1562409

Revision history for this message
Saurav Sengupta (sauravsengupta) wrote :

As I see it, the situation seems to be as follows:-

GNOME now uses the "reverse-DNS" format for the file names of several .desktop files, as given in the freedesktop.org specification, e.g., org.gnome.FileRoller.desktop. However, there are older .desktop files installed for these programs as well, and the newer org.gnome.*.desktop files have NoDisplay=true. So the system shows the desktop entries from the older files, but the there being two files for each (both with X-GNOME-UsesNotifications=true) causes duplicate entries to appear in the Notifications panel and the dash.

The correct solution would be either to not have the older files at all OR to have X-GNOME-UsesNotifications=false in one set of files (but the latter may not prevent duplicate entries from appearing in the dash).

To use the files with the new naming format, the following seems to work (Ubuntu GNOME 16.10 upgraded to GNOME 3.22 using gnome3-staging PPA):-
 1. For every org.gnome.*.desktop file, remove or rename the corresponding file of the older naming style. For example, sudo mv file-roller.desktop file-roller.desktop.orig .
 2. In every org.gnome.*.desktop file:-
  a) Comment out the NoDisplay=true line.
  b) Either comment out the OnlyShowIn line, or change every occurrence of OnlyShowIn=Unity; to OnlyShowIn=Unity;GNOME; .

However, the old-style files may get re-created after an update. To prevent this, create an empty file anywhere and, in ~/.local/share/applications/, create symbolic links with the same names, to the empty file. For example, ln -s empty file-roller.desktop . I don't know whether the lines commented out in the org.gnome.*.desktop files will also get undone after updates, although the freedesktop.org specification does say that comments must be preserved across reads and writes.