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

Non working distro-sync #738

Closed
praiskup opened this issue Jul 19, 2023 · 8 comments · Fixed by #745
Closed

Non working distro-sync #738

praiskup opened this issue Jul 19, 2023 · 8 comments · Fixed by #745
Assignees

Comments

@praiskup
Copy link
Member

praiskup commented Jul 19, 2023

I have dnf5 installed from dnf copr enable copr.fedorainfracloud.org/rpmsoftwaremanagement/dnf5-unstable:

dnf5-5.1.0-20230719020203.0.gc17c4f61.fc38.x86_64
libdnf5-5.1.0-20230719020203.0.gc17c4f61.fc38.x86_64

I disabled the Copr repository, and I fail to "downgrade" the package using the
distro-sync command

$ dnf copr disable copr.fedorainfracloud.org/rpmsoftwaremanagement/dnf5-unstable
$ dnf copr distro-sync dnf5
Updating and loading repositories:
Repositories loaded.
Nothing to do.

I can not even downgrade for that matter...

$ dnf downgrade dnf5
Problem: conflicting requests
  - cannot install both dnf5-5.0.13-2.fc38.x86_64 and dnf5-5.1.0-20230719020203.0.gc17c4f61.fc38.x86_64
  - cannot install both dnf5-5.0.6-2.fc38.x86_64 and dnf5-5.1.0-20230719020203.0.gc17c4f61.fc38.x86_64
  - problem with installed package 

(I have alias dnf=dnf5)

@evan-goode
Copy link
Member

Likely another issue caused by us changing the default value of allow_vendor_change to false (#722, #701, #623).

Does it work with --setopt=allow_vendor_change=true?

@j-mracek
Copy link
Contributor

j-mracek commented Jul 20, 2023

The question is whether we should revert allow_vendor_change to true.
Basically there are several problems

  • command line packages are refused to get installed when they have a different vendor
    • This could be fixed
  • disabling copr repository results in refusing installation of packages from original repositories - skipping all upgrades
    • I thing it is not fixable, because it is the principle of the feature
  • cryptic solver message
    • it is impossible to guess that the real issue is related to a different vendor of both packages
    • - cannot install both dnf5-5.0.13-2.fc38.x86_64 and dnf5-5.1.0-20230719020203.0.gc17c4f61.fc38.x86_64
  • repoquery info does not show vendor

@Conan-Kudo @dcantrell @kontura @evan-goode @m-blaha @jrohel @pkratoch @inknos I think it would be better to revert the default of allow_vendor_change for now to decrease pressure on DNF5 Fedora 39 release. What do you think?

@j-mracek j-mracek self-assigned this Jul 20, 2023
@m-blaha
Copy link
Member

m-blaha commented Jul 20, 2023

I totally agree with going back to true. The most concerning issue (and what currently renders setting allow_vendor_change=false unusable) is that cryptic error message part. Even we as devs (or at least me) are just guessing what's the root cause, based on similar errors reported recently. I guess fixing this will require some adjustments in libsolv's problem reporting, right?

@praiskup
Copy link
Member Author

Does it work with --setopt=allow_vendor_change=true?

Ah, yes, I forgot.

cryptic error message part

Agreed, but here actually was no error message, just "Nothing to do". So +1 for being more explicit. E.g:

Not {upgrading,downgrading,...} because of RPM Vendor change:
    dnf5    "Fedora Copr - user praiskup" => "Fedora Project"
    libdnf5 "Fedora Copr - user praiskup" => "Fedora Project"
    ...
Nothing to do.

@m-blaha
Copy link
Member

m-blaha commented Jul 20, 2023

Agreed, but here actually was no error message, just "Nothing to do". So +1 for being more explicit. E.g:

Not {upgrading,downgrading,...} because of RPM Vendor change:
    dnf5    "Fedora Copr - user praiskup" => "Fedora Project"
    libdnf5 "Fedora Copr - user praiskup" => "Fedora Project"
    ...
Nothing to do.

Oh yeah, this even worse than cannot install both... message.
Can this be handled the same way as --best? I mean using double goal resolving with different settings?

@m-blaha
Copy link
Member

m-blaha commented Jul 20, 2023

This is how upgrade to copr version of the package looks like with zypper:

❯ sudo zypper update dnf
Loading repository data...
Reading installed packages...
There is an update candidate for 'dnf' from vendor 'Fedora Copr - user rpmsoftwaremanagement', while the current vendor is 'Fedora Project'. Use 'zypper install dnf-4.16.1-20230720005933.8.g9e8ec484.fc38.noarch' to install this candidate.
Resolving package dependencies...
Nothing to do.

@Conan-Kudo
Copy link
Member

The information should exist from libsolv, since Zypper is able to report it as @m-blaha shows. So I guess, what are we missing to be able to expose that?

@Conan-Kudo
Copy link
Member

I also think that we probably should have a short-hand flag --setopt=allow_vendor_change=[True|False]... Something like --[no-]allow-vendor-change to make it more obvious and documented.

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

Successfully merging a pull request may close this issue.

5 participants