centos 7.4 can not install `dnf`from epel

It is so weird, I have a centos7 VM box. Try to install dnf because it is a dependency of another package.

Most instructions on internet is like this:

sudo yum install epel-release
sudo yum install dnf

But nothing installs. No package dnf available

Even followed DNF blog: http://dnf.baseurl.org/2016/07/01/fresh-dnf-for-rhel-7-and-centos-7/

# cat <<EOF > /etc/yum.repos.d/dnf-stack-el7.repo
[dnf-stack-el7]
name=Copr repo for dnf-stack-el7 owned by @rpm-software-management
baseurl=https://copr-be.cloud.fedoraproject.org/results/@rpm-software-management/dnf-stack-el7/epel-7-\$basearch/
skip_if_unavailable=True
gpgcheck=1
gpgkey=https://copr-be.cloud.fedoraproject.org/results/@rpm-software-management/dnf-stack-el7/pubkey.gpg
enabled=1
enabled_metadata=1

Still nothing installs

# cat /etc/centos-release
CentOS Linux release 7.4.1708 (Core)

# yum search dnf
Loading mirror speeds from cached hostfile
 * base: centos.bhs.mirrors.ovh.net
 * epel: mirror.umd.edu
 * extras: centos.bhs.mirrors.ovh.net
 * remi-safe: remi.mirror.ate.info
 * updates: centos.bhs.mirrors.ovh.net
========================================================================= N/S matched: dnf ==========================================================================
dnf-langpacks.noarch : Langpacks plugin for dnf
dnf-langpacks-conf.noarch : Configuration file for DNF Langpacks plugin
etckeeper-dnf.noarch : DNF plugin for etckeeper support
python-dnf-langpacks.noarch : Langpacks plugin for dnf-2
mirrormanager2-mirrorlist.noarch : MirrorList serving mirrors to yum/dnf

How can I install dnf? I assume this should be a trivial task. What have I done wrong?


Solution 1:

WARNING: EPEL 7 DNF is very old and has issues to include security flaws. This appears to be the reason it was removed. That said here is the work around to get it working on Centos 7.

wget http://springdale.math.ias.edu/data/puias/unsupported/7/x86_64/dnf-conf-0.6.4-2.sdl7.noarch.rpm
wget http://springdale.math.ias.edu/data/puias/unsupported/7/x86_64//dnf-0.6.4-2.sdl7.noarch.rpm
wget http://springdale.math.ias.edu/data/puias/unsupported/7/x86_64/python-dnf-0.6.4-2.sdl7.noarch.rpm
yum install python-dnf-0.6.4-2.sdl7.noarch.rpm  dnf-0.6.4-2.sdl7.noarch.rpm dnf-conf-0.6.4-2.sdl7.noarch.rpm

Solution 2:

This will install dnf-0.6.4 on CentOS/7.

curl -OL https://raw.githubusercontent.com/tamama/repository/master/sh/tamama/node-provisioning/tamama-centos/7.3/setup.sh
sudo sh setup.sh