Description of problem: Can't do a dnf update. I've done successful 'dnf distrosync' and 'dnf autoremove' and 'dnf clean all' but 'dnf update' fails with this error every time, not sure why. I do not have lua-libs-5.4.2-2.fc34.i686 installed so I don't know why dnf says it's a problem. Version-Release number of selected component (if applicable): $ rpm -qa | grep lua lua-libs-5.4.2-2.fc34.x86_64 lua-5.4.2-2.fc34.x86_64 lua-posix-35.0-3.fc34.x86_64 mod_lua-2.4.46-10.fc34.x86_64 lua-srpm-macros-1-4.fc34.noarch How reproducible: Always Steps to Reproduce: 1. dnf update 2. 3. Actual results: $ sudo dnf update Last metadata expiration check: 0:01:54 ago on Sat 01 May 2021 02:00:08 PM MDT. Dependencies resolved. Problem: lua-libs-5.4.2-2.fc34.i686 has inferior architecture - package lua-5.4.2-2.fc34.x86_64 requires lua-libs = 5.4.2-2.fc34, but none of the providers can be installed - cannot install both lua-libs-5.4.3-1.fc34.x86_64 and lua-libs-5.4.2-2.fc34.x86_64 - cannot install both lua-libs-5.4.2-2.fc34.x86_64 and lua-libs-5.4.3-1.fc34.x86_64 - cannot install the best update candidate for package lua-libs-5.4.2-2.fc34.x86_64 - cannot install the best update candidate for package lua-5.4.2-2.fc34.x86_64 ============================================================================================================================================================================= Package Architecture Version Repository Size ============================================================================================================================================================================= Skipping packages with conflicts: (add '--best --allowerasing' to command line to force their upgrade): lua-libs x86_64 5.4.3-1.fc34 _dnf_local 218 k Transaction Summary ============================================================================================================================================================================= Skip 1 Package Nothing to do. Complete! $ sudo dnf update --best --allowerasing Last metadata expiration check: 0:02:03 ago on Sat 01 May 2021 02:00:08 PM MDT. Error: Problem: cannot install the best update candidate for package lua-5.4.2-2.fc34.x86_64 - problem with installed package lua-5.4.2-2.fc34.x86_64 - package lua-5.4.2-2.fc34.x86_64 requires liblua-5.4.so()(64bit), but none of the providers can be installed - cannot install the best update candidate for package lua-libs-5.4.2-2.fc34.x86_64 - lua-libs-5.4.2-2.fc34.i686 has inferior architecture - package lua-5.4.2-2.fc34.x86_64 requires lua-libs = 5.4.2-2.fc34, but none of the providers can be installed - cannot install both lua-libs-5.4.3-1.fc34.x86_64 and lua-libs-5.4.2-2.fc34.x86_64 - cannot install both lua-libs-5.4.2-2.fc34.x86_64 and lua-libs-5.4.3-1.fc34.x86_64 (try to add '--skip-broken' to skip uninstallable packages) $ Expected results: Updates should be possible without error. Additional info:
debugdata.tar from using dnf --debugsolver, 63M https://drive.google.com/file/d/1d-IzJC6VGt3JG2DHVS4tJiQQuCGy4I8P/view?usp=sharing
This could be a dnf local plugin bug?
If I disable the dnf local plugin: ]$ sudo dnf update Last metadata expiration check: 0:19:51 ago on Sat 01 May 2021 02:00:08 PM MDT. Dependencies resolved. Nothing to do. Complete! Switching to dnf.
Reenable the local plugin, and enable u-t. sudo dnf update --enablerepo=updates-testing Fedora 34 - x86_64 - Test Updates 2.9 MB/s | 8.1 MB 00:02 Last metadata expiration check: 0:00:06 ago on Sat 01 May 2021 02:22:13 PM MDT. Dependencies resolved. ============================================================================================================================================================================= Package Architecture Version Repository Size ============================================================================================================================================================================= Upgrading: copy-jdk-configs noarch 4.0-0.fc34 updates-testing 27 k lua x86_64 5.4.3-1.fc34 updates-testing 189 k lua-libs x86_64 5.4.3-1.fc34 _dnf_local 218 k Transaction Summary ============================================================================================================================================================================= Upgrade 3 Packages Total download size: 434 k So I guess somehow (?) the dnf_local repo has a newer lua-libs. So it was trying to use that even though u-t wasn't enabled.
Nope. lua and lua-libs are both present in the _dnf_local repo directory, but dnf update refuses to use the lua there. $ find repodir/ -name lua* repodir/lua-libs-5.4.3-1.fc34.x86_64.rpm repodir/lua-libs-5.4.2-2.fc34.x86_64.rpm repodir/lua-5.4.3-1.fc34.x86_64.rpm $ sudo dnf reinstall lua lua-libs Last metadata expiration check: 0:29:50 ago on Sat 01 May 2021 02:00:08 PM MDT. Installed package lua-5.4.3-1.fc34.x86_64 (from updates-testing) not available. Dependencies resolved. ============================================================================================================================================================================= Package Architecture Version Repository Size ============================================================================================================================================================================= Reinstalling: lua-libs x86_64 5.4.3-1.fc34 _dnf_local 218 k Transaction Summary ============================================================================================================================================================================= Total size: 218 k Installed size: 544 k Is this ok [y/N]: n Operation aborted. $ sudo dnf reinstall lua lua-libs --enablerepo=updates-testing Last metadata expiration check: 0:08:00 ago on Sat 01 May 2021 02:22:13 PM MDT. Dependencies resolved. ============================================================================================================================================================================= Package Architecture Version Repository Size ============================================================================================================================================================================= Reinstalling: lua x86_64 5.4.3-1.fc34 updates-testing 189 k lua-libs x86_64 5.4.3-1.fc34 updates-testing 218 k Transaction Summary ============================================================================================================================================================================= Total download size: 407 k Installed size: 1.1 M Is this ok [y/N]: n Operation aborted. $ But it's a bit strange still that the original error had someting to do with inferior architecture.
The inferior architecture is dnf trying to find anything that could fix the problem you have and letting you know the one package it did find which would replace it is of the wrong architecture. The real issue (and probably what the title for this bug should be) is that the _dnf_local (whatever plugin or tool causes that *1*) is not seeing repodir/lua-5.4.3-1.fc34.x86_64.rpm for some reason. I would check to see if it has the right labels, permissions or is actually a good RPM file. Then I would add debugging to the dnf command to see if it gives any clues why it isn't adding that to the repository mix. *1* I am unfamiliar with that name showing up in a dnf command so not sure how that happens.
Thank you very much for the report. The issue is related to dnf-plugin-local that keeps cached packages. In case that the cached rpms creates a difficulty for upgrade, because cached rpm has the highest version but there is not a package with the same version for secondary architecture. The issue can be resolved by uninstalling of dnf-plugin-local, disable of repository _dnf_local, disable of dnf-plugin-local plugin in configuration (in `/etc/dnf/plugins/local.conf` in section [main] add line `enabled = false`) or commandline (--disableplugin). I know that the behaviour is not nice but there is no way how to improve it in the plugin. The plugin cannot store all packages just for an possible requirement in the future. It only stores packages installed on the system.