Wrong (duplicated) sources are displayed for Shell Extensions
When opening a details page for some GNOME Shell Extension that is available both in the system repository (as RPM) and on extensions.gnome.org, this happens almost every time:
Both sources appear to be the same Fedora RPM source instead of two correct (extensions.gnome.org and RPM) sources that the Shell Extension have.
It seems to happen only (or in most cases only) if Shell Extensions are searched using Add-ons -> Shell Extensions category, not directly by searching them by name from main GS page.
It happens on Fedora 31 Beta (with gnome-software-3.34.0-2.fc32.x86_64) and latest Fedora Rawhide, both Silverblue and non-Silverblue.
Steps to reproduce this issue:
- Open GNOME Software.
- Switch to the Add-ons / Shell Extensions tab.
- Click some extension to open its details page.
- Click the "Source" drop-down menu in window header.
If both the displayed sources are "Fedora", you have reproduced the issue; if not, go back and repeat the steps few more times until the regression is reproduced (it is usually not hard to reproduce this).
Here are some logs:
When the duplicated source is displayed:
12:34:04:0009 Gs pushing back entry for search with topicons
12:34:04:0019 Gs Chaining cancellation from 0x559d022c5de0 to 0x559cfdb770e0
12:34:04:0088 Gs running refine with dedupe-flags=7 with refine-flags=require-license,require-url,require-description,require-version,require-history,require-setup-action,require-origin,require-menu-path,require-addons,require-provenance,require-icon,require-permissions,require-origin-hostname,require-runtime,require-screenshots,require-categories,require-project-group,require-developer-name,require-kudos,content-rating with timeout=60 on apps system/package/rawhide/shell-extension/TopIcons_phocean.net/* took 69ms
12:34:04:0124 Gs GsApp: [0x7f06e98bca10]
kind: shell-extension
state: available
quirk: provenance,needs-reboot
id: TopIcons_phocean.net
unique-id: system/package/rawhide/shell-extension/TopIcons_phocean.net/*
scope: system
bundle-kind: package
kudos: my-language|recent-release
kudo-percentage: 40
name: TopIcons Plus
pixbuf: 0x7f06e80efb60
icon-kind: stock
icon-name: application-x-addon-symbolic
icon-prefix: /usr/share/app-info/icons/fedora
match-value: 00050
version: 22-4.fc32.20190417.76759a5
summary: GNOME Shell Extension
description: This extension moves legacy tray icons (bottom left of Gnome Shell) to the top panel. It is a fork from the original extension from ag with settings for icon opacity, saturation, padding, size and tray position, along with a few minor fixes and integration with the Skype integration extension.
source-00: gnome-shell-extension-topicons-plus
url{homepage}: https://github.com/phocean/TopIcons-plus
license: GPL-2.0
license-is-free: yes
management-plugin: rpm-ostree
menu-path: Add-ons ? Shell Extensions
origin: rawhide
origin-appstream: fedora
origin-hostname: fedoraproject.org
rating: 81
review-rating: [0:0]
review-rating: [1:0]
review-rating: [2:1]
review-rating: [3:2]
review-rating: [4:0]
review-rating: [5:8]
reviews: 0
provides: 0
category: Addon
category: ShellExtension
{ODRS::user_skey}: 9210b5416ab11ed390e83e5f07c29a5a750cdf6e
{GnomeSoftware::PackagingFormat}: RPM
{appstream::source-file}: /usr/share/app-info/xmls/fedora.xml.gz
{GnomeSoftware::Creator}: shell-extensions
{shell-extensions::uuid}: TopIcons@phocean.net
12:34:04:0129 Gs content rating system is guessed as IARC from C
12:34:04:0129 Gs Chaining cancellation from 0x559d022c5de0 to 0x7f06e93b5aa0
12:34:04:0129 Gs Chaining cancellation from 0x559d022c5de0 to 0x559cfd00d220
12:34:04:0130 Gs Disconnecting cancellable 0x559d022c5de0
12:34:04:0139 GsPluginShellExtensions silo already valid
12:34:04:0152 GsPluginOdrs got review data for TopIcons_phocean.net from /home/asciiwolf/.cache/gnome-software/odrs/TopIcons_phocean.net.json
12:34:04:0153 Gs running refine with dedupe-flags=7 with refine-flags=require-size,require-rating,require-reviews,require-review-ratings,require-runtime with timeout=60 on apps system/package/rawhide/shell-extension/TopIcons_phocean.net/* took 23ms
12:34:04:0155 Gs Disconnecting cancellable 0x559d022c5de0
12:34:04:0161 Gs running get-alternates with refine-flags=require-origin,require-provenance,require-origin-hostname with interactive=True with timeout=60 on plugin=flatpak on apps system/package/rawhide/shell-extension/TopIcons_phocean.net/*,system/package/rawhide/shell-extension/TopIcons_phocean.net/* took 31ms
12:34:04:0167 Gs Disconnecting cancellable 0x559d022c5de0
When correct sources are displayed:
12:28:37:0071 Gs pushing back entry for search with topicons
12:28:37:0074 Gs Chaining cancellation from 0x56427fb0fea0 to 0x56427f4aa2a0
12:28:37:0082 GsPluginShellExtensions silo already valid
12:28:37:0198 Gs running refine with dedupe-flags=7 with refine-flags=require-license,require-url,require-description,require-version,require-history,require-setup-action,require-origin,require-menu-path,require-addons,require-provenance,require-icon,require-permissions,require-origin-hostname,require-runtime,require-screenshots,require-categories,require-project-group,require-developer-name,require-kudos,content-rating with timeout=60 on apps system/package/*/shell-extension/TopIcons_phocean.net/* took 123ms
12:28:37:0199 Gs GsApp: [0x7f1e08011360]
kind: shell-extension
state: available
id: TopIcons_phocean.net
unique-id: system/package/*/shell-extension/TopIcons_phocean.net/*
scope: system
bundle-kind: package
kudos: my-language|recent-release|has-screenshots
kudo-percentage: 60
name: TopIcons Plus
pixbuf: 0x7f1e1c101c00
icon-kind: stock
icon-name: application-x-addon-symbolic
match-value: 00050
summary: GNOME Shell Extension
description: This extension moves legacy tray icons (bottom left of Gnome Shell) to the top panel. It is a fork from the original extension from ag with settings for icon opacity, saturation, padding, size and tray position, along with a few minor fixes and integration with the Skype integration extension.
screenshot-00: https://extensions.gnome.org/extension-data/screenshots/screenshot_1031_vjuGb1h.png [<none>]
source-00: gnome-shell-extension-topicons-plus
url{homepage}: https://github.com/phocean/TopIcons-plus
license: GPL-2.0+
license-is-free: yes
management-plugin: shell-extensions
menu-path: Add-ons ? Shell Extensions
origin-appstream: fedora
rating: 81
review-rating: [0:0]
review-rating: [1:0]
review-rating: [2:1]
review-rating: [3:2]
review-rating: [4:0]
review-rating: [5:8]
reviews: 0
provides: 0
size-installed: 51.2?kB
size-download: unknowable
category: Addon
category: ShellExtension
{appstream::source-file}: /usr/share/app-info/xmls/fedora.xml.gz
{GnomeSoftware::Creator}: shell-extensions
{shell-extensions::uuid}: TopIcons@phocean.net
12:28:37:0212 Gs downloading https://extensions.gnome.org/extension-data/screenshots/screenshot_1031_vjuGb1h.png to /home/asciiwolf/.cache/gnome-software/screenshots/624x351/e9f695949e389b77e21d673b311bf2cc10bc15056568eb0f575ff81d9450dadb-screenshot_1031_vjuGb1h.png
12:28:37:0213 Gs downloading https://extensions.gnome.org/extension-data/screenshots/screenshot_1031_vjuGb1h.png to /home/asciiwolf/.cache/gnome-software/screenshots/112x63/e9f695949e389b77e21d673b311bf2cc10bc15056568eb0f575ff81d9450dadb-screenshot_1031_vjuGb1h.png
12:28:37:0214 Gs downloading https://extensions.gnome.org/extension-data/screenshots/screenshot_1031_vjuGb1h.png to /home/asciiwolf/.cache/gnome-software/screenshots/752x423/e9f695949e389b77e21d673b311bf2cc10bc15056568eb0f575ff81d9450dadb-screenshot_1031_vjuGb1h.png
12:28:37:0217 Gs content rating system is guessed as IARC from C
12:28:37:0217 Gs Chaining cancellation from 0x56427fb0fea0 to 0x564281e9f860
12:28:37:0217 Gs Chaining cancellation from 0x56427fb0fea0 to 0x5642801d5ae0
12:28:37:0217 Gs Disconnecting cancellable 0x56427fb0fea0
12:28:37:0217 GsPluginShellExtensions silo already valid
12:28:37:0221 GLib-GIO _g_io_module_get_default: Found default implementation gnome (GProxyResolverGnome) for ?gio-proxy-resolver?
12:28:37:0230 GLib-GIO _g_io_module_get_default: Found default implementation gnutls (GTlsBackendGnutls) for ?gio-tls-backend?
12:28:37:0232 GsPluginShellExtensions silo already valid
12:28:37:0240 GsPluginOdrs got review data for TopIcons_phocean.net from /home/asciiwolf/.cache/gnome-software/odrs/TopIcons_phocean.net.json
12:28:37:0240 Gs running refine with dedupe-flags=7 with refine-flags=require-size,require-rating,require-reviews,require-review-ratings,require-runtime with timeout=60 on apps system/package/*/shell-extension/TopIcons_phocean.net/* took 23ms
12:28:37:0251 Gs running get-alternates with refine-flags=require-origin,require-provenance,require-origin-hostname with interactive=True with timeout=60 on plugin=flatpak on apps system/package/*/shell-extension/TopIcons_phocean.net/*,system/package/rawhide/shell-extension/TopIcons_phocean.net/* took 33ms
12:28:37:0308 Gs Disconnecting cancellable 0x56427fb0fea0
12:28:37:0309 Gs Disconnecting cancellable 0x56427fb0fea0