Quick start
The simplest way to enable a Copr repository:user/project with the owner and project name.
Methods to enable repositories
Using DNF (recommended)
For modern Fedora, CentOS Stream, RHEL, and other distributions with DNF:dnf-plugins-corepackage must be installed
Using YUM
For older distributions with YUM:yum-plugin-coprpackage must be installed
Manual repository file
Download and install the repository file manually.Download repository file
Visit the project overview page on Copr and find the repository file download link.Or download directly:
Repository file format
A typical Copr repository file looks like:Repository file options
baseurl The repository URL. Uses$releasever (OS version) and $basearch (architecture) variables.
gpgcheck=1
Verifies package signatures using the GPG key.
gpgkey
URL to the GPG public key for signature verification.
enabled=1
The repository is enabled by default.
skip_if_unavailable=True
DNF/YUM won’t fail if the repository is temporarily unavailable.
Group repositories
For projects owned by groups (starting with@):
Subproject repositories
Enable subprojects (CoprDirs) with the full subproject name:Multilib repositories
For projects with multilib enabled,dnf copr enable automatically installs the multilib repository file on capable systems.
Manual multilib setup
If you need to manually enable multilib:- Download the multilib repository file from the project page
- Or modify the standard repository file to include the i386 repository
Installing packages
Once the repository is enabled, install packages normally:Repository priority
Some Copr projects set repository priority to control package preference.Using cost parameter
If a Copr package has the same version-release as a distribution package, you can prefer the Copr version:It’s better for package maintainers to bump the release number instead of users modifying repository priority.
Using priority parameter
If the project owner set arepo_priority, it will be included in the repository file:
Disabling repositories
Temporarily disable a Copr repository:enabled=1 to enabled=0.
Removing repositories
Completely remove a Copr repository:Searching Copr repositories
Search for projects on Copr:Using different Copr instances
Copr has multiple instances. The default is Fedora Copr, but you can use others:openEuler Copr
Custom Copr instance
Security considerations
Verifying trust
- Check the project owner’s FAS account
- Review the project description and homepage
- Examine build logs and SRPM sources
- Look for community feedback or known users
GPG signature verification
Copr automatically signs all packages. GPG verification is enabled by default (gpgcheck=1).
The GPG key is automatically imported when you enable the repository.
Inspect packages before installation
View package information:Troubleshooting
Repository not found
Ifdnf copr enable fails:
- Verify the project name is correct
- Check if the project exists on copr.fedorainfracloud.org
- Ensure your OS version has a matching chroot
GPG key issues
If you see GPG key errors:Repository unavailable
If the repository is temporarily unavailable,skip_if_unavailable=True prevents DNF from failing. You can continue using other repositories.
Conflicting packages
If Copr packages conflict with distribution packages:Repository caching
If you don’t see new packages immediately:Example workflows
Installing a development version
Testing a pull request build
Switching between stable and testing
Repository file locations
Repository files are stored in:- Fedora/RHEL/CentOS:
/etc/yum.repos.d/ - Repository files follow the pattern:
_copr:copr.fedorainfracloud.org:user:project.repo
Best practices
Keep repositories organized
Keep repositories organized
Disable or remove repositories you’re not actively using to reduce metadata download time:
Pin important packages
Pin important packages
If you rely on specific Copr packages, consider using version locks:
Review updates carefully
Review updates carefully
Before upgrading packages from Copr repositories, check the changelog:
Document enabled repositories
Document enabled repositories
Keep track of which Copr repositories you have enabled: