manatools / dnfdragora

dnfdragora is a dnf frontend based on libyui abstraction
GNU General Public License v3.0
130 stars 41 forks source link

Updates are available, but the updates list is empty #222

Open L-U-T-i opened 7 months ago

L-U-T-i commented 7 months ago

Yesterday, I've noticed there are no updates on my notebook (according to dnfdragora), which hasn't been updated for about a month. As I knew there have been quite some updates in between (on other machines), I've tried with terminal and got:

# dnf update
Last metadata expiration check: 0:02:50 ago on ned 19 nov 2023 12:49:12.
Error: 
 Problem: cannot install the best update candidate for package gstreamer1-plugins-ugly-1.18.4-1.el9.x86_64
  - nothing provides gstreamer1-plugins-ugly-free(x86-64) >= 1.22.1 needed by gstreamer1-plugins-ugly-1:1.22.1-1.el9.x86_64
(try to add '--skip-broken' to skip uninstallable packages or '--nobest' to use not only best candidate packages)

I've noticed there is an issue with gstreamer1-plugins-ugly version 1.22.1 update, as it requires a dependency gstreamer1-plugins-ugly-free >= 1.22.1, which is available in Alma repo, but not yet on Rocky repo (don't know why...), on my other PC some days ago (where I've seen this update in dnfdragora normally).

Yumex-dnf displayed quite some updates on my notebook, and I've installed most of them. I've left for testing purposes uninstalled updates: chromium 119.0.6045.159-1.el9 (x86_64) (epel-testing) chromium-common 119.0.6045.159-1.el9 (x86_64) (epel-testing) gstreamer1-plugins-ugly 1.22.1-1.el9 (x86_64) (rpmfusion-free-updates)

I've cheched manually, the files are all there: https://dl.fedoraproject.org/pub/epel/testing/9/Everything/x86_64/Packages/c/chromium-119.0.6045.159-1.el9.x86_64.rpm https://dl.fedoraproject.org/pub/epel/testing/9/Everything/x86_64/Packages/c/chromium-common-119.0.6045.159-1.el9.x86_64.rpm https://download1.rpmfusion.org/free/el/updates/9/x86_64/g/gstreamer1-plugins-ugly-1.22.1-1.el9.x86_64.rpm

Both repos are normally enabled in /etc/yum.repos.d.

What is weird is that also dnf doesn't list chromium updates:

# dnf list updates
Last metadata expiration check: 1:49:12 ago on ned 19 nov 2023 18:15:59.
Available Upgrades
gstreamer1-plugins-ugly.x86_64                                                                                 1:1.22.1-1.el9     

or

# dnf update --nobest
Last metadata expiration check: 0:03:15 ago on ned 19 nov 2023 12:49:12.
Dependencies resolved.

 Problem: cannot install the best update candidate for package gstreamer1-plugins-ugly-1.18.4-1.el9.x86_64
  - nothing provides gstreamer1-plugins-ugly-free(x86-64) >= 1.22.1 needed by gstreamer1-plugins-ugly-1:1.22.1-1.el9.x86_64
====================================================================================================================================================================================================================================
 Package                                                       Architecture                                 Version                                              Repository                                                    Size
====================================================================================================================================================================================================================================
Skipping packages with broken dependencies:
 gstreamer1-plugins-ugly                                       x86_64                                       1:1.22.1-1.el9                                       rpmfusion-free-updates                                       206 k

Transaction Summary
====================================================================================================================================================================================================================================
Skip  1 Package

Nothing to do.
Complete!

I'm not sure about how to reproduce my issue, as everything seems to be the same on my PC and on my notebook. My distro is Rocky Linux 9.2

In any case, if yumex-dnf list all 3 updates, I'd expect also dnfdragora would.

anaselli commented 7 months ago

Well it depends on if you have set "Consider package to update as uptates" into dnfdragora option system settingss

L-U-T-i commented 7 months ago

Sorry to bother, I've missed that on my notebook epel-testing repo priority was lower than epel one. What is weird is that even after fixing that (repo priority of epel-testing is now the same as epel) those updates are still not showing up on my notebook...

Checking the option you've mentioned is not a solution for me, as I want repo priorities to be respected (issue https://github.com/manatools/dnfdragora/issues/163) - at the end, this is the purpose of them, as I understand it...

anaselli commented 7 months ago

I've still missed any priority information from dnfdaemon. As far as I can say i cannot understand if a package is the same but has a different priority. A parameter for the query should be added i believe. Do you know if dnf API allows such a query?

L-U-T-i commented 7 months ago

I'm not sure I understand...

Repo priority for epel and for epel testing is now the same, so newer versions / releases published in epel-testing (where they appear before epel repo) should update installed packages. Normally it works like that as expected. Also dnf launched from terminal updated the package in my case as expected.

Have no clue what might be the issue in this case. What I've tried before updating the package was to tick the option you've mentioned above, and update showed on the list, what confuses me even more (but I don't know what exactly this option changes in the code execution / update select logic).

I can get repo priorities from dnf with:

$ dnf config-manager --dump "epel" | grep priority
priority = 30

$ dnf config-manager --dump "epel-testing" | grep priority
priority = 30