Red Hat Bugzilla – Bug 1294628
Gnome software cached wrong desktop file (if more than one)
Last modified: 2016-01-17 20:48:19 EST
Description of problem:
I'm testing Synology Cloud Station Drive package.
(you can download from here http://global.download.synology.com/download/Tools/CloudStation/4.0-4062/Fedora/Installer/x86_64/synology-cloud-station-drive-4.0-4062.x86_64.rpm)
After I install rpm through gnome-software, the launch button show up but not effect when I click it.
I found that this package has TWO desktop file, and one is put in /opt/Synology, another one is in /usr/share/applications. packagekit choose first one as launch entry and that is not in /usr/share/applications folder which lead to no such file error.
The problem can be solved by reboot, so I think here must be some data not updated or cache not cleared. I try pkcon refresh force, update-desktop-database, etc, but no one works.
Version-Release number of selected component (if applicable):3.18.2
Steps to Reproduce:
1. Install synology Cloud Station package
launch button has no effect
From the source code here
Gnome-software just *guess* app id using a for loop over all files that package installed and find the first desktop as it app id.
In Synology package, there are two desktop file, and the wrong one is used.
The solution in code should we only check desktop file under normal desktop file path. eg. /usr/share/applications or user home directory.
Why is the desktop file in /usr/ more important than the one in /opt? Why is the package installing a desktop file in /opt anyway? I'm not against fixing this, but I also think it makes sense to fix the package.
Author: Richard Hughes <firstname.lastname@example.org>
Date: Thu Jan 7 17:20:01 2016 +0000
Only match packaged .desktop files in /usr/share/applications
Sorry for the late reply. I won't touch the bug status, but just reply question from Richard. This package use another desktop file to setup up autostart. The file is located in /opt and only link to ~/.config/autostart/ (I'm not so sure about the path) when user want the software autostart. That's why there are two desktop file.
Richard, thanks for helping solve the bug. Thank you.