Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

pkcon what-provides does not return anything #737

Open
mcrha opened this issue Apr 2, 2024 · 6 comments
Open

pkcon what-provides does not return anything #737

mcrha opened this issue Apr 2, 2024 · 6 comments

Comments

@mcrha
Copy link
Contributor

mcrha commented Apr 2, 2024

This had been reported downstream as:
https://bugzilla.redhat.com/show_bug.cgi?id=2271783

See it for more details, if needed.

This is with PackageKit-1.2.8-3.fc40.x86_64. Running:

pkcon what-provides /usr/share/applications/org.mozilla.firefox.desktop

returns nothing, similar as:

pkcon what-provides /usr/share/applications/yelp.desktop

supposing these apps are installed and the files exist.

I also tried:

$ pkcon what-provides \*/firefox.desktop
Getting provides                        [=========================]         
Finished                                [                         ] (0%)  
(pkcon:4110): GLib-GIO-CRITICAL **: 16:09:16.751: g_task_return_error: assertion 'error != NULL' failed

(pkcon:4110): GLib-GIO-CRITICAL **: 16:09:16.751: GTask 0x5620ac735c30 (source object: 0x5620ac7322f0, source tag: 0x7f70489ec4e0) finalized without ever returning (using g_task_return_*()). This potentially indicates a bug in the program.
                                        [=========================]         
Waiting in queue                        [                  ==     ]         ^C

where I stopped the "waiting in queue" by Ctrl+C, because it looked like an indefinite wait. I suppose the runtime warning is the cause of the "Waiting in queue". It seems to me as a closely related problem to the first one, but if you think it should be filled separately, then I can do it, just let me know.

@sidt4
Copy link
Contributor

sidt4 commented Apr 2, 2024

I was thinking, the argument to what-provides must be some functionality string (as pkcon search file <filename> provides the package the file belongs to). No ?

$ apt show gnome-shell
Package: gnome-shell
Version: 46.0-1
...
Provides: notification-daemon, polkit-1-auth-agent

Though that doesn't work either in Debian:

$ pkcon what-provides notification-daemon
Getting provides                        [=========================]         
Loading cache                           [=========================]         
Finished                                [=========================]         

@Conan-Kudo
Copy link
Member

This needs #495 to be finished.

@Conan-Kudo
Copy link
Member

Hmm, wait this is a different aspect. I'm not sure why this isn't working...

@mcrha
Copy link
Contributor Author

mcrha commented Apr 17, 2024

The thing is that it did work in the past, thus it's a regression. I did not try to find in which version of PackageKit (or its dependency?) it broke.

@mcrha
Copy link
Contributor Author

mcrha commented Apr 17, 2024

Interestingly, on Fedora 39 I've installed PackageKit-1.2.6-11.fc39.x86_64 and gnome-software works fine there, still the pkcon what-provides returns nothing for the firefox.desktop file. Downgrading to the same version of PackageKit in Fedora 40 does not fix the problem, even the dnf packages are of the same versions here.

I'll investigate this further on the gnome-software side and let you know.

@mcrha
Copy link
Contributor Author

mcrha commented Apr 17, 2024

This is interesting. Trying gnome-46 branch on Fedora 39 does not show any problem. Trying gnome-45 branch on Fedora 40 exhibits the problem, even the PackageKit versions are the same in both Fedoras. With "the problem" I mean the downstream bug referenced in the description above.

The firefox's appstream data changed in Fedora 40, it used to reference firefox.desktop with ID system/package/fedora/firefox.desktop/ in Fedora 39, while it's org.mozilla.firefox.desktop with ID system/*/*/org.mozilla.firefox/*. Those stars in the middle mean gnome-software was not able to pair the .desktop filename with any package (this bug here is about it, the what-provides is used to check which package is responsible for the app, but it's nothing new).

I realized the /usr/share/swcatalog/xml/fedora.xml.gz does not contain the Firefox itself on Fedora 40, but it does contain it in Fedora 39. That is the reason why the downstream bug works fine on Fedora 39, but not on Fedora 40.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

3 participants