Bug 1940210 - Software fails to run in GNOME 40 RC1 update
Summary: Software fails to run in GNOME 40 RC1 update
Keywords:
Status: CLOSED CURRENTRELEASE
Alias: None
Product: Fedora
Classification: Fedora
Component: gnome-software
Version: 34
Hardware: All
OS: Linux
unspecified
high
Target Milestone: ---
Assignee: Richard Hughes
QA Contact: Fedora Extras Quality Assurance
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2021-03-17 20:00 UTC by Adam Williamson
Modified: 2021-03-19 17:16 UTC (History)
3 users (show)

Fixed In Version:
Doc Type: If docs needed, set a value
Doc Text:
Clone Of:
Environment:
Last Closed: 2021-03-19 17:16:52 UTC
Type: Bug
Embargoed:


Attachments (Terms of Use)

Description Adam Williamson 2021-03-17 20:00:18 UTC
openQA testing of the GNOME 40 rc1 megaupdate:

https://bodhi.fedoraproject.org/updates/FEDORA-2021-303f6623fa

shows that GNOME Software just doesn't launch. The test opens the overview, types 'update' - which causes the "Software" launcher to be the only visible launcher, and selected, as expected - and hits 'enter'. The icon, the text "Software", and a spinner appear in the top bar for a few seconds, then disappear. The app UI never appears.

The user journal has this somewhere around the time of the failure:

Mar 17 09:10:57 fedora gnome-shell[1426]: Received error from D-Bus search provider org.gnome.Software.desktop during GetResultMetas: Gio.IOErrorEnum: Timeout was reached
Mar 17 09:10:57 fedora gnome-shell[1426]: Wrong number of result metas returned by search provider org.gnome.Software.desktop: expected 3 but got 0
Mar 17 09:10:57 fedora gnome-shell[1426]: Object St.BoxLayout (0x55d5b4a832a0), has been already deallocated — impossible to access it. This might be caused by the object having been destroyed from C code using something such as destroy(), dispose(), or remove() vfuncs.
Mar 17 09:10:57 fedora gnome-shell[1426]: == Stack trace for context 0x55d5b332e180 ==
Mar 17 09:10:57 fedora gnome-shell[1426]: #0   55d5b32f0998 i   resource:///org/gnome/shell/ui/search.js:331 (3d2a230ed600 @ 22)
Mar 17 09:10:57 fedora gnome-shell[1426]: #1   55d5b32f0908 i   resource:///org/gnome/shell/ui/search.js:275 (3d2a230ed7e0 @ 26)
Mar 17 09:10:57 fedora gnome-shell[1426]: #2   55d5b32f0858 i   resource:///org/gnome/shell/ui/search.js:240 (3d2a230ed920 @ 242)
Mar 17 09:10:57 fedora gnome-shell[1426]: #3   55d5b32f0790 i   resource:///org/gnome/shell/ui/remoteSearch.js:278 (3d2a230f0240 @ 149)
Mar 17 09:10:57 fedora gnome-shell[1426]: #4   55d5b32f06f0 i   resource:///org/gnome/shell/ui/remoteSearch.js:304 (3d2a230f0150 @ 23)
Mar 17 09:10:57 fedora gnome-shell[1426]: #5   55d5b32f0638 i   resource:///org/gnome/gjs/modules/core/overrides/Gio.js:117 (240158ca4c90 @ 347)
Mar 17 09:10:57 fedora gnome-shell[1426]: clutter_actor_remove_all_children: assertion 'CLUTTER_IS_ACTOR (self)' failed

Though they may actually be appearing during the time we're launching the app from the overview, not after the launch process begins. It's a bit hard to tell for sure (openQA timestamps the video, but it's not always 100% in sync with the log time).

Comment 1 Milan Crha 2021-03-18 08:11:30 UTC
Is there any image I can try this with, please? I've an up to date rawhide machine and it doesn't expose any of the errors you pasted above. I also tried your steps:
a) restart
b) login
c) type: "updates"
d) press enter

and it shows up the window it only takes it like 5-10 seconds to show up. I renamed /usr/bin/gnome-software to /usr/bin/gnome-software.orig and then created /usr/bin/gnome-software with this content:

---
#!/bin/bash

/usr/bin/gnome-software.orig "$@" 2>&1 | tee /var/tmp/gs-`date +%Y%m%d-%H%M%S`.log
---

and when I repeat the steps and then check the corresponding log it contains, apart of other things:

08:02:36:0188 Gs  plugin fwupd took 25.0 seconds to do setup
08:02:36:0500 Gs  not handling error failed for action get-updates-historical: cannot update repo 'rawhide': Cannot prepare internal mirrorlist: Curl error (6): Couldn't resolve host name for https://mirrors.fedoraproject.org/metalink?repo=rawhide&arch=x86_64 [Could not resolve host: mirrors.fedoraproject.org]; Last error: Curl error (6): Couldn't resolve host name for https://mirrors.fedoraproject.org/metalink?repo=rawhide&arch=x86_64 [Could not resolve host: mirrors.fedoraproject.org]
08:02:39:0895 GsPluginFedoraPkgdbCollections did not find cpe:/o:fedoraproject:fedora:35

I guess it's similar in your case, one of the plugins is causing the delay, which causes follow up failures.

Comment 2 Milan Crha 2021-03-18 08:58:22 UTC
I tried with Kalev's image for the test day [1]. I installed it to a virtual machine and made the file changes outlined above. After I set the user name & password and deny the tour in GNOME 40 the steps above (shortened to type: "upda") bring up the GNOME Software window almost instantly.

[1] http://kalev.fedorapeople.org/Fedora-Workstation-Live-x86_64-34-20210316.n.103.iso

Comment 3 Milan Crha 2021-03-18 16:28:12 UTC
Possibly related upstream bug report:
https://gitlab.gnome.org/GNOME/gnome-software/-/issues/1180
leading to fwupd D-Bus timeout.

Comment 4 Adam Williamson 2021-03-18 19:46:07 UTC
Doesn't reproduce on my 'working' system either, I just updated it and rebooted and Software launches fine there.

We can try backporting the fix for https://gitlab.gnome.org/GNOME/gnome-software/-/issues/1179 into the update, I guess.

Comment 5 Adam Williamson 2021-03-19 17:16:52 UTC
I did that and edited the build into the update, and it passed the openQA run. I do see that the test passed one time *without* the fix, so the failure to launch is apparently not a 100% reproducer, but let's assume it's fixed and close this for now. If the problem shows up again I'll reopen it.


Note You need to log in before you can comment on or make changes to this bug.