Bug 1760363

Summary: evince addons causing problems in gnome-software
Product: Red Hat Enterprise Linux 8 Reporter: Martin Krajnak <mkrajnak>
Component: evinceAssignee: Marek Kašík <mkasik>
Status: CLOSED ERRATA QA Contact: Desktop QE <desktop-qa-list>
Severity: medium Docs Contact:
Priority: unspecified    
Version: 8.1CC: jkoten, klember, mkasik, tpelka
Target Milestone: rcFlags: pm-rhel: mirror+
Target Release: 8.2   
Hardware: x86_64   
OS: Linux   
Whiteboard:
Fixed In Version: evince-3.28.4-4.el8 Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2020-04-28 16:09:57 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Bug Depends On:    
Bug Blocks: 1768461, 2001781    

Description Martin Krajnak 2019-10-10 11:47:19 UTC
Description of problem:
There are 5 Evince addons which are shown in gnome-software. Problems is, that addons are installed by default, as they are all coming from evince-libs.rpm.

So 2 cases here:
Installing Evince - all addons are installed despite the fact no addons checked

Removing any addon - the action removes all addons including Evince itself, which confuses gnome-software and it is showing Evince as installed until the process is killed and restarted.

Version-Release number of selected component (if applicable):
evince-libs-3.28.4-3.el8.x86_64
evince-3.28.4-3.el8.x86_64
gnome-software-3.30.6-2.el8.x86_64

How reproducible:
always

Steps to Reproduce:
1.Remove 1 of 5 of Evince plugins in gnome-software


Actual results:
All plugins are removed, Evince is removed

Expected results:
Only the plugin is removed

Additional info:

Comment 1 Kalev Lember 2019-10-10 11:53:10 UTC
So, the problem here is that gnome-software expects all the addons that come from a separate rpm to be installable separately. In this case, the addons (metainfo.xml files) are in evince-libs, which the main evince package requires. So they aren't really installable separately as they are always pulled in together with the main evince package, and when trying to remove the addons (evince-libs), it also removes the main evince package.

I think we could improve this by doing either:

a) moving all of the evince backends, together with their metainfo.xml files from 'evince-libs' to 'evince'. However, I am not sure how this would play with other apps that require evince libraries, gnome-books for example: would moving the backends break gnome-books functionality?

b) just remove all of the metainfo.xml files that are shipped in evince-libs, and only keep those that are actually separately installable (those that are in evince-dvi, evince-djvu etc)

I'm leaning towards option b here, mkasik, what do you think?

Comment 2 Martin Krajnak 2019-10-10 12:34:30 UTC
Looking now to evince rpms, looks like evince-dvi is not available in RHEL 8, in gnome-software we have 5 mentioned addons:

evince-comicsdocument, Comic Books, Evince
evince-pdfocument, PDF Documents, Evince
evince-psdocument, PostScript Documents, Evince
evince-tiffdocument, TIFF Documents, Evince
evince-xpsdocument, XPS Documents, Evince

otherwise I am seeing these two rpms, which are not listed in gnome-software (appstream-data):

evince-nautilus.x86_64 : Evince extension for nautilus
evince-browser-plugin.x86_64 : Evince web browser plugin

Should they be included in the addon list ?

Comment 3 Marek Kašík 2019-10-10 14:48:55 UTC
Kalev's b) solution is one which I prefer. I'll test it and will give this a devel_ack+ if it won't cause a regression for me.

Regarding those 2 additional rpms:

The evince-browser-plugin is deprecated in upstream now. It does not work with current Firefox and I have difficulty to run it even with WebKit (if I remember correctly, there are issues with supported versions of Gtk during scan of the plugin). So I would not put a metainfo xml for that there.

The evince-nautilus should probably get the metainfo xml (although with <extends>org.gnome.nautilus</extends>). I'll create one and will propose it upstream. Then we have to wait for being it accepted and translated. We can backport it then. This needs a separate bug since it will take more time.

Comment 4 Marek Kašík 2019-11-04 13:05:05 UTC
The solution works for me so devel_ack+. We have to just update appstream-data then. I'll create a separate bug for this.

Comment 5 Marek Kašík 2019-11-04 14:02:54 UTC
I've filled the bug #1768461 for the update of metadata.

Comment 7 Martin Krajnak 2019-12-18 10:09:59 UTC
Thanks, no evince plugins in gnome-software as well:

evince-3.28.4-4.el8.x86_64
appstream-data-8-20191129.el8

Comment 9 errata-xmlrpc 2020-04-28 16:09:57 UTC
Since the problem described in this bug report should be
resolved in a recent advisory, it has been closed with a
resolution of ERRATA.

For information on the advisory, and where to find the updated
files, follow the link below.

If the solution does not work for you, open a new bug report.

https://access.redhat.com/errata/RHSA-2020:1766