Who can contribute to EPEL?
Anyone may contribute to EPEL. If you are using RHEL or compatible spin-offs,and you have the required skills for maintaining packages or arewilling to learn, you are welcome to contribute.
How do I get my packages into EPEL?
You have to follow the sameprocessas Fedora except that you request an EPEL branch such as epel8 or epel9.
How do I request a EPEL branch for an existing Fedora package?
Look here for the procedure usedto get a Fedora package in EPEL.
I maintain a package in Fedora. Do I have to maintain it for EPEL?
No. You can if you want, or you can ask someone else to maintain thepackage in EPEL for you. In some cases, you may be approached by acurrent EPEL maintainer who wants to maintain your package in EPEL.
I maintain a package in Fedora and want to maintain packages in EPEL, too, but I don’t have a RHEL subscription for testing?
Please seethis pagefor information about getting a free RHEL subscription for EPEL package maintenance.
I’m a Fedora contributor and want to maintain my packages in EPEL, too. What do I have to do and what do you expect from me?
All Fedora packagers can request EPEL branches in Git via the normalprocedure. Please keep in mind that by building your packages in EPEL weexpect that you are aware of the special EPEL guidelines and policies and that you will adhere to them.You should also plan to maintain the packages for the near future — ideally for several years, or for the full planned lifetime of EPEL.Remember that RHEL has a planned lifetime of 10 years.
You may want to look into formalizing your packaging role in yourcompany or other organization. If you can do that, thisgeneric jobdescription may help. Aside from making sure that you are recognizedfor the value you give your organization, formal role recognitionensures that your organization has someone continuing to maintain thepackage, even if someone new is in the role.
It is the maintainer’s responsibility to ensure that their EPEL packages work on RHEL.Please seethis pagefor information about getting a free RHEL subscription for EPEL package maintenance.
How do you make sure that packages in EPEL and in Fedora do not split?
The plan is to have one primary maintainer per package who isresponsible for making certain that the package enhancements applied toone tree find their way into the other trees (for example, Fedora devel).
This maintainer decides what makes sense to apply for the package ingeneral. New EL branches for new EL releases are normally created fromthe associated Fedora branch on which the EL release is based.Therefore, the EL maintainer has a genuine interest in gettingenhancements merged into Fedora.
Will my packages from Fedora simply build unchanged on EPEL
Most likely they will build unchanged. However, there are specific itemsto consider. All your build requirements in the package must be part ofRHEL or EPEL.
I need to build a package that in turn requires another one I have just added. How do I do this?
You will need to request a buildroot override in bodhi.
How can I know which packages are part of RHEL?
The easiest ways to do this are to either use theRHEL developer subscriptionor check the RHEL package manifests.
You can also check the package source repos in theCentOS Stream GitLab space.Note that a GitLab branch corresponds to the same major version of RHEL,e.g. the c9s branch for RHEL 9.If a branch has a dead.package
file,that means it was removed during development of that RHEL versionand is thus eligible for EPEL.
I want to build packages for EPEL but some of my packages dependencies are not available in EPEL — or — I’d like to see a Fedora package in EPEL that is not yet available there
See here how to get a Fedorapackage in EPEL.
RHEL 8 has binaries in the release, but is missing some corresponding -devel package. How do I build a package that needs that missing -devel package?
There is a short term and a long term solution. These two solutionsshould be used together.
Short Term: Create an epel package that only has the missing packages.
Be prepared to maintain this package as long as it is needed.
It is recommended that you name it <package>-epel
It is recommended that you add the epel-packagers-sig group as aco-maintainer
It qualifies for an exception to the package review process so you can request the repo with
fedpkg request-repo --exception <package>-epel
Once the repo is created, you must retire the rawhide branch to make it clear that this is an EPEL-only package and it shouldn’t be branched for future Fedora releases
fedpkg retire 'EPEL-only package'
If you need help building this, ask for help. We have some examples.
When/If the missing package(s) are added to RHEL CRB, retire your-epel package.
Long Term: Request the package be added to RHEL 8 and 9 CRBrepository.
To initiate this process, please file an issue inhttps://issues.redhat.com and request it be added to RHEL 8 and 9.Report the bug against the RHEL project, assign it to the properCentOS Stream versions and add the source package name in the Component field.More details on this can be found in theCentOS contributor guide.
Be sure to say that it is impacting an EPEL build, and which packageit is impacting.
Can I bring a modular package into EPEL?
When EPEL 8 was launched, it came together with the EPEL 8Modular repo as an effort to bring modular packages to EPEL. After years of struggle,it was decidedto disable by default the EPEL 8 Modular repository on October 31st 2022, and thento archive the repository from Febraury 14th 2023 onward.Currently there is no plan to bring modularity back to EPEL.
If you want to bring a package that is distributed as modular in Fedorayou will need to create anon-modular version of the package.