Bug 2322918
Summary: | Installing dnf-automatic: Skipping packages with conflicts (libcurl) and with broken dependencies (dnf5-plugin-automatic) | ||
---|---|---|---|
Product: | [Fedora] Fedora | Reporter: | Osama Albahrani <osalbahr> |
Component: | dnf5 | Assignee: | Marek Blaha <mblaha> |
Status: | ASSIGNED --- | QA Contact: | |
Severity: | medium | Docs Contact: | |
Priority: | high | ||
Version: | 41 | CC: | bugzilla, daniel.mach, egoode, fedora, jkolarik, jmracek, jrohel, mblaha, mike, nsella, packaging-team-maint, pkratoch, ppisar, raymond, rpm-software-management |
Target Milestone: | --- | Keywords: | Desktop, Triaged, Upgrades |
Target Release: | --- | ||
Hardware: | x86_64 | ||
OS: | Linux | ||
URL: | https://discussion.fedoraproject.org/t/installing-dnf-automatic-skipping-packages-with-conflicts-libcurl-and-with-broken-dependencies-dnf5-plugin-automatic/134931 | ||
Whiteboard: | |||
Fixed In Version: | Doc Type: | If docs needed, set a value | |
Doc Text: | Story Points: | --- | |
Clone Of: | Environment: | ||
Last Closed: | Type: | --- | |
Regression: | --- | Mount Type: | --- |
Documentation: | --- | CRM: | |
Verified Versions: | Category: | --- | |
oVirt Team: | --- | RHEL 7.3 requirements from Atomic Host: | |
Cloudforms Team: | --- | Target Upstream Version: | |
Embargoed: |
Description
Osama Albahrani
2024-10-31 10:11:52 UTC
One of dnf-automatic features is ability to inform the user on the upgrade results using an email. This is implemented using libcurl. Unfortunately libcurl-minimal does not support SMTP protocol, so libcurl-full (provided by libcurl package) is required. To resolve your issue you need to swap installed libcurl-minimal with libcurl: # dnf5 swap libcurl-minimal libcurl We should mention it in documentation. So libcurl-minimal is installed in Fedora Workstation by default. We need to find a way how to user-friendly handle this situation. (In reply to Marek Blaha from comment #1) > One of dnf-automatic features is ability to inform the user on the upgrade > results using an email. This is implemented using libcurl. Unfortunately > libcurl-minimal does not support SMTP protocol, so libcurl-full (provided by > libcurl package) is required. > > To resolve your issue you need to swap installed libcurl-minimal with > libcurl: > > # dnf5 swap libcurl-minimal libcurl > > We should mention it in documentation. Thx! That fixed it. ```console $ sudo dnf install dnf-automatic Updating and loading repositories: Repositories loaded. Package Arch Version Repository Size Installing: dnf5-plugin-automatic x86_64 5.2.6.2-1.fc41 fedora 178.4 KiB Transaction Summary: Installing: 1 package Total size of inbound packages is 130 KiB. Need to download 130 KiB. After this operation, 178 KiB extra will be used (install 178 KiB, remove 0 B). Is this ok [y/N]: ``` It is possible to replicate the error in a container: 1. podman run --rm -it fedora 2. dnf swap libcurl libcurl-minimal 3. dnf install dnf-automatic Output: ```console [root@7162ea0436c4 /]# dnf install dnf-automatic Updating and loading repositories: Repositories loaded. Problem: problem with installed package - installed package libcurl-minimal-8.9.1-2.fc41.x86_64 conflicts with libcurl(x86-64) provided by libcurl-8.9.1-2.fc41.x86_64 from fedora - package libcurl-minimal-8.9.1-2.fc41.x86_64 from fedora conflicts with libcurl(x86-64) provided by libcurl-8.9.1-2.fc41.x86_64 from fedora - package dnf5-plugin-automatic-5.2.6.2-1.fc41.x86_64 from fedora requires libcurl-full(x86-64), but none of the providers can be installed - cannot install the best candidate for the job Package Arch Version Repository Size Installing: dnf-automatic noarch 4.21.1-1.fc41 fedora 76.6 KiB Installing dependencies: dbus x86_64 1:1.14.10-4.fc41 fedora 0.0 B dbus-broker x86_64 36-4.fc41 fedora 382.8 KiB dbus-common noarch 1:1.14.10-4.fc41 fedora 11.2 KiB dbus-libs x86_64 1:1.14.10-4.fc41 fedora 368.9 KiB device-mapper x86_64 1.02.199-4.fc41 fedora 348.2 KiB device-mapper-libs x86_64 1.02.199-4.fc41 fedora 414.7 KiB dnf-data noarch 4.21.1-1.fc41 fedora 38.3 KiB duktape x86_64 2.7.0-8.fc41 fedora 616.2 KiB expat x86_64 2.6.3-1.fc41 fedora 291.5 KiB gnupg2 x86_64 2.4.5-3.fc41 fedora 9.5 MiB ima-evm-utils-libs x86_64 1.6.2-2.fc41 fedora 60.8 KiB kbd x86_64 2.6.4-4.fc41 fedora 1.5 MiB kbd-legacy noarch 2.6.4-4.fc41 fedora 567.1 KiB kbd-misc noarch 2.6.4-4.fc41 fedora 2.5 MiB kmod x86_64 33-1.fc41 fedora 235.5 KiB libassuan x86_64 2.5.7-2.fc41 fedora 163.8 KiB libb2 x86_64 0.98.1-12.fc41 fedora 42.2 KiB libcbor x86_64 0.11.0-2.fc41 fedora 73.9 KiB libcomps x86_64 0.1.21-3.fc41 fedora 205.4 KiB libdnf x86_64 0.73.3-1.fc41 fedora 2.1 MiB libfdisk x86_64 2.40.2-4.fc41 fedora 362.9 KiB libfsverity x86_64 1.6-1.fc41 fedora 32.6 KiB libgcrypt x86_64 1.11.0-3.fc41 fedora 1.5 MiB libgpg-error x86_64 1.50-2.fc41 fedora 889.5 KiB libksba x86_64 1.6.7-2.fc41 fedora 398.4 KiB libpkgconf x86_64 2.3.0-1.fc41 fedora 78.2 KiB libseccomp x86_64 2.5.5-2.fc41 fedora 173.3 KiB libsecret x86_64 0.21.4-3.fc41 fedora 563.4 KiB libusb1 x86_64 1.0.27-3.fc41 fedora 166.3 KiB mpdecimal x86_64 2.5.1-16.fc41 fedora 204.9 KiB npth x86_64 1.7-2.fc41 fedora 49.6 KiB pcsc-lite x86_64 2.3.0-1.fc41 fedora 220.1 KiB pcsc-lite-libs x86_64 2.3.0-1.fc41 fedora 68.0 KiB pkgconf x86_64 2.3.0-1.fc41 fedora 88.6 KiB pkgconf-m4 noarch 2.3.0-1.fc41 fedora 14.4 KiB pkgconf-pkg-config x86_64 2.3.0-1.fc41 fedora 989.0 B polkit x86_64 125-1.fc41 fedora 479.5 KiB polkit-libs x86_64 125-1.fc41 fedora 208.0 KiB protobuf-c x86_64 1.5.0-4.fc41 fedora 54.0 KiB python-pip-wheel noarch 24.2-1.fc41 fedora 1.2 MiB python3 x86_64 3.13.0-1.fc41 fedora 31.8 KiB python3-dnf noarch 4.21.1-1.fc41 fedora 2.6 MiB python3-hawkey x86_64 0.73.3-1.fc41 fedora 306.3 KiB python3-libcomps x86_64 0.1.21-3.fc41 fedora 143.4 KiB python3-libdnf x86_64 0.73.3-1.fc41 fedora 3.8 MiB python3-libs x86_64 3.13.0-1.fc41 fedora 40.3 MiB python3-rpm x86_64 4.20.0-1.fc41 fedora 175.3 KiB rpm-sign-libs x86_64 4.20.0-1.fc41 fedora 39.4 KiB systemd x86_64 256.7-1.fc41 fedora 17.0 MiB systemd-pam x86_64 256.7-1.fc41 fedora 1.1 MiB tpm2-tss x86_64 4.1.3-3.fc41 fedora 1.6 MiB unbound-libs x86_64 1.21.1-1.fc41 fedora 1.4 MiB xkeyboard-config noarch 2.42-2.fc41 fedora 6.5 MiB Installing weak dependencies: cryptsetup-libs x86_64 2.7.5-1.fc41 fedora 2.3 MiB diffutils x86_64 3.10-8.fc41 fedora 1.6 MiB gnupg2-smime x86_64 2.4.5-3.fc41 fedora 577.9 KiB kmod-libs x86_64 33-1.fc41 fedora 147.2 KiB libbpf x86_64 2:1.4.6-1.fc41 fedora 402.6 KiB libfido2 x86_64 1.15.0-2.fc41 fedora 238.2 KiB libxkbcommon x86_64 1.7.0-4.fc41 fedora 336.4 KiB pcsc-lite-ccid x86_64 1.6.1-2.fc41 fedora 404.2 KiB pinentry x86_64 1.3.1-2.fc41 fedora 258.0 KiB polkit-pkla-compat x86_64 0.1-29.fc41 fedora 93.8 KiB python-unversioned-command noarch 3.13.0-1.fc41 fedora 23.0 B python3-unbound x86_64 1.21.1-1.fc41 fedora 521.8 KiB qrencode-libs x86_64 4.1.1-8.fc41 fedora 160.9 KiB rpm-plugin-systemd-inhibit x86_64 4.20.0-1.fc41 fedora 16.3 KiB systemd-networkd x86_64 256.7-1.fc41 fedora 2.1 MiB systemd-resolved x86_64 256.7-1.fc41 fedora 671.1 KiB systemd-udev x86_64 256.7-1.fc41 fedora 11.8 MiB unbound-anchor x86_64 1.21.1-1.fc41 fedora 57.3 KiB Skipping packages with conflicts: libcurl x86_64 8.9.1-2.fc41 fedora 818.1 KiB Skipping packages with broken dependencies: dnf5-plugin-automatic x86_64 5.2.6.2-1.fc41 fedora 178.4 KiB Transaction Summary: Installing: 72 packages Skipping: 2 packages Total size of inbound packages is 35 MiB. Need to download 35 MiB. After this operation, 123 MiB extra will be used (install 123 MiB, remove 0 B). Is this ok [y/N]: ``` (In reply to Marek Blaha from comment #1) > One of dnf-automatic features is ability to inform the user on the upgrade > results using an email. This is implemented using libcurl. Unfortunately > libcurl-minimal does not support SMTP protocol, so libcurl-full (provided by > libcurl package) is required. > > To resolve your issue you need to swap installed libcurl-minimal with > libcurl: > > # dnf5 swap libcurl-minimal libcurl > > We should mention it in documentation. This has helped me as well, thank you!!!! "dnf install --allowerasing dnf5-plugin-automatic" is intelligent enough for me to swap the packages without uninstalling other packages. Provided that once installed packages (libcurl-minimal) should not be automatically uninstalled, there cannot be much plain "dnf install" can do. Thank You for documenting "dnf5 swap libcurl-minimal libcurl" - that did the trick for me as well. Noticing the log below while doing it, I could help but wonder what the point of a separate 647.7 KiB libcurl-minimal VS the 818.1 KiB libcurl was... is the (small) "pain" that this introduces worth the 170 KiB saved? I don't suppose that simply (eventually maybe; I don't know how this work) getting rid of libcurl-minimal entirely, and just always "replacing" ("forwarding", however it works) it entirely with libcurl in future releases is an option here? Just a thought that crossed my mind while figuring this out. $ sudo dnf5 swap libcurl-minimal libcurl Updating and loading repositories: Repositories loaded. Package Arch Version Repository Size Removing: libcurl-minimal x86_64 8.9.1-2.fc41 fedora 647.7 KiB Installing: libcurl x86_64 8.9.1-2.fc41 fedora 818.1 KiB Transaction Summary: Installing: 1 package Removing: 1 package Total size of inbound packages is 362 KiB. Need to download 362 KiB. After this operation, 170 KiB extra will be used (install 818 KiB, remove 648 KiB). libcurl-minimal implements a subset of protocols. It exists to decrease an attack surface. If you want to contemplate its usefulness, I recommend opening a bug against curl component. Sending dnf-automatic results defaults to emit_via=stdio. As the default configuration does not require cURL library with SMTP protocol, I'm keen to relax the dependency (e.g. to Recommends level) and make sure that dnf-automatic command properly fails if emit_via is set to "email" and cURL library does not support SMTP. *** Bug 2365231 has been marked as a duplicate of this bug. *** > I'm keen to relax the dependency (e.g. to Recommends level) and make sure that dnf-automatic command properly fails if emit_via is set to "email" and cURL library does not support SMTP.
+1
|