EPEL (Extra Packages for Enterprise Linux) significantly expands the software available on AlmaLinux/Rocky Linux beyond the base repositories — understanding it and other common additional repositories is essential for practical package management.
Why the Base Repositories Alone Are Limiting
AlmaLinux/Rocky Linux's base repositories, being enterprise-focused (following RHEL's conservative approach), include a more limited software selection than many other distributions — many common tools and packages simply aren't available without additional repositories.
What EPEL Provides
A community-maintained repository providing a large collection of additional packages, built specifically for compatibility with RHEL-family distributions — the standard, widely-trusted first additional repository for most AlmaLinux/Rocky Linux setups.
Installing EPEL
sudo dnf install epel-release -y
Verifying EPEL Is Active
dnf repolist | grep epel
Installing a Package from EPEL
sudo dnf install htop -y
Once EPEL is enabled, installing EPEL-provided packages works identically to base repository packages — dnf automatically checks all enabled repositories.
Checking Which Repository a Package Comes From
dnf info htop
The PowerTools/CRB Repository (Also Often Needed)
sudo dnf config-manager --set-enabled crb
Some EPEL packages depend on packages in the "CodeReady Builder" (CRB, formerly called PowerTools) repository — enabling this alongside EPEL resolves many otherwise-confusing dependency resolution failures.
Other Common Additional Repositories
- Remi's RPM repository — provides multiple current PHP versions
- Docker's official repository — see How to Install Docker on AlmaLinux/Rocky Linux
- NodeSource — see How to Set Up Node.js on AlmaLinux/Rocky Linux
Being Cautious About Repository Trustworthiness
Not every third-party repository is equally trustworthy or well-maintained — prefer well-established, widely-used repositories (EPEL, official vendor repositories) over obscure or unmaintained ones; adding an untrustworthy repository is a genuine security risk, since it grants that repository's maintainer effective code execution capability on your system.
Managing Repository Priority
When multiple enabled repositories provide the same package, dnf's priority/exclude configuration determines which version is actually installed — be aware of this when adding multiple repositories that might overlap in package coverage.
Listing All Enabled Repositories
dnf repolist
Disabling a Repository You No Longer Need
sudo dnf config-manager --set-disabled epel-testing
Common Errors
"Requires: package-name" dependency resolution failure despite EPEL enabled — often resolved by also enabling the CRB/PowerTools repository, since some EPEL packages have build-time dependencies located there.
Continue Reading
- How to Use dnf: The Package Manager for AlmaLinux & Rocky Linux
- How to Get Started with AlmaLinux/Rocky Linux on a VPS
- How to Install PHP on AlmaLinux/Rocky Linux
Browse more articles in AlmaLinux & Rocky Linux.