Bug 1827546

Summary: Nothing provides perl(Digest::SHA1) needed by ddclient-3.9.1-1.el8.noarch
Product: [Fedora] Fedora EPEL Reporter: kbulgrien
Component: ddclientAssignee: Scott Talbert <swt>
Status: CLOSED NOTABUG QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: unspecified Docs Contact:
Priority: unspecified    
Version: epel8CC: anto.trande, i, jrowens.fedora, swt, thomas
Target Milestone: ---   
Target Release: ---   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2020-04-24 21:52:13 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:

Description kbulgrien 2020-04-24 07:19:46 UTC
Description of problem:

$ sudo yum install ddclient

Last metadata expiration check: 0:53:54 ago on Fri 24 Apr 2020 01:13:08 AM CDT.
Error:
 Problem: conflicting requests
  - nothing provides perl(Digest::SHA1) needed by ddclient-3.9.1-1.el8.noarch
(try to add '--skip-broken' to skip uninstallable packages or '--nobest' to use not only best candidate packages)

Install of ddclient failed with error code (1).
Version-Release number of selected component (if applicable):

How reproducible:

Attempt to install ddclient

Steps to Reproduce:
1. Minimal install of CentOS 8
2. Install EPEL
3. Attempt install of ddclient

Actual results:

ddclient not installed.

Expected results:

ddclient installed.

Additional info:

N/A

Comment 1 Scott Talbert 2020-04-24 13:00:36 UTC
Do you have the 'PowerTools' repository enabled?  That is where the perl-Digest-SHA1 package is, unfortunately.

Comment 2 kbulgrien 2020-04-24 21:15:15 UTC
Both 6 and 7 put this package in Base, so yes, it is unfortunate.

The steps to reproduce are accurate.  Since the DVD install and adding EPEL did not enable 'PowerTools', it is not enabled.

$ yum repolist
Last metadata expiration check: 13:19:00 ago on Fri 24 Apr 2020 02:08:21 AM CDT.
repo id           repo name                                               status
AppStream         CentOS-8 - AppStream                                    4,830
BaseOS            CentOS-8 - Base                                         1,661
*epel             Extra Packages for Enterprise Linux 8 - x86_64          5,335
extras            CentOS-8 - Extras                                          15

This make me curious about how one should easily come to realize that EPEL requires things from a disabled repository.

Maybe that (try to add '--skip-broken' to skip uninstallable packages or '--nobest' to use not only best candidate packages) hint could mention a better alternative, namely, that rather than immediately considering it "broken", one might try to determine whether the dependency is in a repository that is not enabled (i.e. yum repolist --disabled)

Since that list is long, given the that information about what ddclient needs is it possible to use yum tools to search for perl(Digest::SHA1) in disabled repositories (without enabling them)?

$ yum search -v perl-Digest-SHA1
Loading "fastestmirror" plugin
Loading "security" plugin
Config time: 0.090
Yum Version: 3.2.29
Setting up Package Sacks
Loading mirror speeds from cached hostfile
 * base: mirrors.raystedman.org
 * epel: pubmirror2.math.uh.edu
 * extras: repos.hou.layerhost.com
 * updates: ftp.usf.edu
pkgsack time: 1.197
rpmdb time: 0.001
tags time: 0.000
======================== N/S Matched: perl-Digest-SHA1 =========================
perl-Digest-SHA1.i686 : Digest-SHA1 Perl module
Repo        : base
Matched from:




  Name and summary matches only, use "search all" for everything.

$ yum search -v perl-Digest-SHA1
Loading "fastestmirror" plugin
Config time: 0.020
Yum version: 3.4.3
Setting up Package Sacks
Loading mirror speeds from cached hostfile
 * base: mirrors.gigenet.com
 * epel: dfw.mirror.rackspace.com
 * extras: centos.mirrors.hoobly.com
 * updates: centos-distro.1gservers.com
pkgsack time: 0.335
rpmdb time: 0.000
tags time: 0.000
======================== N/S matched: perl-Digest-SHA1 ========================
perl-Digest-SHA1.x86_64 : Digest-SHA1 Perl module
Repo        : base




  Name and summary matches only, use "search all" for everything.

Comment 3 kbulgrien 2020-04-24 21:37:28 UTC
It appears that searching disabled repositories lays in some proximity to yum plugins and subscription manager, or more specifically a "search-disabled-repos" plugin.

Comment 4 Scott Talbert 2020-04-24 21:52:13 UTC
It's in the EPEL documentation: https://fedoraproject.org/wiki/EPEL

    on CentOS 8 it is recommended to also enable the PowerTools repository since EPEL packages may depend on packages from it:

   # dnf config-manager --set-enabled PowerTools

Unfortunately, I don't think there's anything we can do about this at the package level.  Maybe you could take it up with CentOS to suggest enabling the PowerTools automatically?

Comment 5 kbulgrien 2020-04-25 00:08:44 UTC
Thanks for the help.  Will make note that when EPEL is pulled down that that page needs to be checked for changing dependencies.