Greenwebpage Community Blog Tutorials How to Enable EPEL Repository on AlmaLinux 10
Tutorials

How to Enable EPEL Repository on AlmaLinux 10

AlmaLinux 10 ships lean by design, stable, security-hardened, and limited to a conservative set of packages. That’s great for production reliability, but it means common tools like htop, fail2ban, ffmpeg, or certbot simply aren’t available through the default repositories. That’s what EPEL is for.

This guide covers exactly how to install and enable EPEL on AlmaLinux 10, verify it’s working, enable the CodeReady Builder (CRB) repository it often depends on, and troubleshoot the most common issues, including an important architecture detail specific to AlmaLinux 10 that most tutorials don’t mention.

Table of Content

What Is EPEL and Why You Need It

EPEL (Extra Packages for Enterprise Linux) is a community-maintained repository, backed by the Fedora Project, that provides thousands of additional packages built and tested to work cleanly with RHEL-based distributions like AlmaLinux. Rather than compiling software from source or relying on random third-party repos, EPEL gives you a trusted, well-maintained source for tools the base OS doesn’t ship with.

Common examples of packages only available through EPEL include monitoring tools, compression utilities, developer libraries, and security tools like fail2ban and certbot.

A Note on AlmaLinux 10 and x86_64_v2 Support

If you’re running AlmaLinux 10 on older x86_64_v2 hardware, there’s a detail worth knowing: RHEL 10 upstream moved to requiring x86_64_v3, which meant standard EPEL packages initially didn’t support older CPUs. AlmaLinux OS resolved this by rebuilding EPEL packages from Fedora’s source RPMs specifically for x86_64_v2 systems, distributed with an .alma_altarch suffix for easy identification.

In practice, this means EPEL now works the same way on AlmaLinux 10 regardless of whether you’re on modern or older x86_64 hardware; you don’t need to do anything differently, but it’s useful context if you see that suffix in package names.

How to Enable EPEL Repository on AlmaLinux 10

To enable the EPEL repository on AlmaLinux 10, first update your system with sudo dnf update -y, then install the repository package with sudo dnf install epel-release -y. Since some EPEL packages depend on libraries in the CodeReady Builder repository, also run sudo dnf config-manager –set-enabled crb. Finally, refresh the package cache with sudo dnf clean all && sudo dnf makecache and confirm EPEL is active by running sudo dnf repolist enabled | grep -i epel. The entire process takes under a minute and requires no manual downloads, since AlmaLinux 10 provides the epel-release package directly through its default repositories.

Step 1: Update Your System First

Before adding any new repository, make sure your existing packages and metadata are current:

sudo dnf update

sudo dnf update

This avoids dependency conflicts later and ensures your GPG keys and repo metadata are fresh.

Step 2: Install the EPEL Release Package

On AlmaLinux 10, the epel-release package is available directly and installs everything needed, repository configuration files, GPG keys, and metadata, in one command:

sudo dnf install epel-release -y

That’s it. Unlike some older RHEL-based distros, you don’t need to manually download an RPM from a URL; AlmaLinux 10 provides epel-release through its own repositories by default.

Step 3: Enable the CodeReady Builder (CRB) Repository

Some EPEL packages depend on libraries found in the CodeReady Builder (CRB) repository, which is disabled by default. Enable it with:

sudo dnf config-manager –set-enabled crb

Skipping this step is one of the most common causes of “nothing provides X” dependency errors when installing EPEL packages later.

Step 4: Refresh the DNF Cache

After enabling new repositories, clear and rebuild the package cache so dnf picks up the new metadata:

sudo dnf clean all

sudo dnf makecache

Step 5: Verify EPEL Is Enabled

Confirm the repository is active and listed:

sudo dnf repolist enabled | grep -i epel

You can also check repository details directly:

sudo dnf repoinfo epel

Step 6: Test It by Installing an EPEL Package

Confirm everything works end-to-end by installing a common EPEL-only tool:

sudo dnf install htop -y

htop –version

If the install succeeds and the version prints correctly, EPEL is fully functional on your system.

Enabling or Disabling EPEL for Specific Installs

You don’t always want EPEL active for every transaction; some admins prefer to enable it only when needed, to reduce the chance of pulling in unexpected package versions.

To temporarily enable EPEL for a single install without leaving it enabled system-wide:

sudo dnf install –enablerepo=epel <package-name>

To temporarily disable EPEL for a single transaction:

sudo dnf install –disablerepo=epel <package-name>

To permanently toggle EPEL on or off:

sudo dnf config-manager –set-disabled epel

sudo dnf config-manager –set-enabled epel

Troubleshooting Common EPEL Issues

“No match for argument: epel-release”

This usually means your base repositories aren’t reachable or are misconfigured. Verify your repo list and network connection:

sudo dnf repolist

ping -c 4 8.8.8.8

GPG Key Errors During Install

If you see a warning about an unsigned or unverified package, make sure the EPEL GPG key was imported correctly during installation:

sudo rpm -qa gpg-pubkey* –qf ‘%{name}-%{version}-%{release} –> %{summary}\n’ | grep -i epel

If it’s missing, reinstall the release package:

sudo dnf reinstall epel-release -y

Dependency Errors When Installing EPEL Packages

This is almost always the CRB repository being disabled. Double-check it’s active:

sudo dnf repolist enabled | grep -i crb

Final Thoughts

Enabling EPEL on AlmaLinux 10 takes less than a minute, but it dramatically expands the software available on an otherwise minimal, security-focused base install. The key steps to remember are installing epel-release, enabling CRB alongside it, and refreshing your dnf cache before testing an install. If you manage a fleet of AlmaLinux 10 servers, consider standardizing this setup into your provisioning scripts or configuration management tooling (Ansible, Puppet, etc.) so every new server gets EPEL configured consistently from day one.

FAQs

1. Is EPEL safe to install on AlmaLinux 10?

Yes. EPEL is maintained by the Fedora Project specifically to be compatible with RHEL-based distributions, and all packages are GPG-signed. It’s widely used in production environments, though it’s still good practice to review what you’re installing rather than blindly enabling every optional repo.

2. Do I need to enable CRB every time I install an EPEL package?

No, you only need to enable CRB once per system. It’s a one-time dnf config-manager –set-enabled crb command, after which it stays enabled for all future installs unless you manually disable it.

3. Why do I get “nothing provides X” errors after installing EPEL?

This almost always means the CRB repository is still disabled. EPEL packages frequently depend on development libraries housed in CRB, so if you skip that step, dependency resolution fails even though EPEL itself installed correctly.

4. Can I remove or disable EPEL later without breaking my system?

Yes, as long as you’re not actively using packages that came from it. Run sudo dnf config-manager –set-disabled epel to disable it, or sudo dnf remove epel-release to remove it entirely. Any packages already installed from EPEL will remain unless you remove them separately.

5. Does EPEL work the same way on older x86_64_v2 hardware in AlmaLinux 10?

Yes, but with a caveat worth knowing: RHEL 10 upstream only supports x86_64_v3, so AlmaLinux rebuilt EPEL packages specifically for x86_64_v2 systems (marked with an .alma_altarch suffix). The install steps are identical either way; you don’t need to do anything different.

Exit mobile version