diff --git a/90-epel.preset b/90-epel.preset
index d4d9701..b3f4e22 100644
--- a/90-epel.preset
+++ b/90-epel.preset
@@ -1,5 +1,9 @@
-# See https://docs.fedoraproject.org/en-US/packaging-guidelines/DefaultServices/
-# for the Fedora policy. EPEL follows the same policy. The EPEL Steering
-# Committee can approve exceptions to the policy, which will be defined in this
-# file.
-
+# Also see:
+# https://fedoraproject.org/wiki/Starting_services_by_default
+#
+# https://bugzilla.redhat.com/show_bug.cgi?id=1901721
+enable x509watch.timer
+#
+# https://bugzilla.redhat.com/show_bug.cgi?id=1986205
+#
+enable certbot-renew.timer
diff --git a/GPL-2.0-only.txt b/GPL
similarity index 96%
rename from GPL-2.0-only.txt
rename to GPL
index 9efa6fb..3c10746 100644
--- a/GPL-2.0-only.txt
+++ b/GPL
@@ -1,8 +1,16 @@
+*****************************************************************************
+The following copyright applies to the Red Hat Linux compilation and any
+portions of Red Hat Linux it does not conflict with. Whenever this
+policy does conflict with the copyright of any individual portion of Red Hat
+Linux, it does not apply.
+
+*****************************************************************************
+
GNU GENERAL PUBLIC LICENSE
Version 2, June 1991
Copyright (C) 1989, 1991 Free Software Foundation, Inc.,
-
+ 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
Everyone is permitted to copy and distribute verbatim copies
of this license document, but changing it is not allowed.
@@ -304,7 +312,8 @@ the "copyright" line and a pointer to where the full notice is found.
GNU General Public License for more details.
You should have received a copy of the GNU General Public License along
- with this program; if not, see .
+ with this program; if not, write to the Free Software Foundation, Inc.,
+ 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
Also add information on how to contact you by electronic and paper mail.
@@ -328,8 +337,8 @@ necessary. Here is a sample; alter the names:
Yoyodyne, Inc., hereby disclaims all copyright interest in the program
`Gnomovision' (which makes passes at compilers) written by James Hacker.
- , 1 April 1989
- Moe Ghoul, President of Vice
+ , 1 April 1989
+ Ty Coon, President of Vice
This General Public License does not permit incorporating your program into
proprietary programs. If your program is a subroutine library, you may
diff --git a/RPM-GPG-KEY-EPEL-10 b/RPM-GPG-KEY-EPEL-10
deleted file mode 100644
index adf4f88..0000000
--- a/RPM-GPG-KEY-EPEL-10
+++ /dev/null
@@ -1,29 +0,0 @@
------BEGIN PGP PUBLIC KEY BLOCK-----
-
-mQINBGV4X6kBEAC3eQxgiWuo08uc3mHo4ELux++uqTnYz/tJzEf9Ou3h36WnhumA
-Nvs+Ts5h8PBx879Y9/aIX1Z20p1kf6tBCinZnEJu59n+TAAsph0+XQlV1l5YkleK
-Z2ff/Fg65k8QcLXWaIGykA/FaKznRiSurGuD6tRGhJw7DawEwBJr8QZSkRUpnH1L
-URW97Q/iKrRPiE5VEayE0y8eAL28jIIiFvR+4oJMzvCsRRB/2wYZ2MlJOW91hcYf
-mbUoXKOBD5UzsJylu7kj25K/ge8rEJ7KicOOwcdYddxsU3DxGSSfwF8AMagENcm2
-XROeXknjm84A8sNlUkFZBJwfuc7eRTiZGJrnQQVYLrkKj8Mxpq9Ts7hU51TqAWNI
-uvGDlJdYNE3D2RMqjMEsZ8ej08Thrib6xslu4NzTBkt+6QNnXL4E3hEgYtoyio60
-GswSz2ulogKg7X4JrNdJYE8/qNowyF3hoVgj5TG1/wQRq+5HlMMOLjgGu9wzLUix
-fnVfEUnzaofbrUf4/GabCaeY8xRe4tFQrvzigQ4g+kgwKKnfAeqBmPov0yljkw9z
-BYJWR5zvaw0ffg9Ing00KUSaXBXA5jSlgk1603Y+LefY1SlXsTyqohiRvGH6FI77
-HNMo72DwoJfFcYjncZUzKgXWJECR4nhVsdj6pKoOjcQ4aSuyVxtsR86ASQARAQAB
-tChGZWRvcmEgKGVwZWwxMCkgPGVwZWxAZmVkb3JhcHJvamVjdC5vcmc+iQJOBBMB
-CAA4FiEEfY0Vy/xOYmiFkfsmM9mFF+N+0VgFAmV4X6kCGw8FCwkIBwIGFQoJCAsC
-BBYCAwECHgECF4AACgkQM9mFF+N+0Vhv/A/+PlhPLSctGRCUEahE+cN4764Acc3p
-l40ZYzXRhqR0/Tc1/cSDjlA3qVTc8SPohi5OJXwCyr9EiMqKoyoDN097euqbYpyp
-yN/Pj0lBjsXwcpdDtZ21WGeQU0Khb04N68bMtJbDaxeBciTvDDQravZuPPh0m4Rg
-Z6myEoa6Aa6EK0hI1Qwi1qIWeRiuEkVT671IaKVETBW5XiUpNBXDAB/L+6DzUF9u
-scBzfsUDiPO6NrpYDtV3jwq22y6gWluIct/Ka8brwPbqK2sBfFzrHboRhfqlTGjs
-7F9qUGwIQZn/A8iozXZYQ0+JG1bhQyvjA8eN1GOcRpT+O7H7JXN49o6IG2As4+iK
-F04+qjqAu2sVfpD8mzM2VubFNllcKKiyCzRYHhSbObRCPzsudDL9GPiXeGGaCuWg
-sDkiA1MESvf2tLETAGBs/TziO4GwmXUtlKbRiq1FYm90mVq9mBxPZ/Idn+yZusNB
-0O5SXIbI8lYZw5n4XTK4b+byHRBYsOTHiTsGvjTF2Y7oSwW2CVUmL6RZ23mI4qoY
-1p5kzRS+GjT1acnTei/FTsOlIKCsjfeHx7uxCkX6xpAD8P3UtLQqfsgH0CL4vSZt
-TGO6L1InQlp4ZG3OYIomTKbD3/R0wod3U3dTqdulQMXL895u6OLTY3spY2m2MO2k
-p9Dfd2pKuxK9Mys=
-=mhQZ
------END PGP PUBLIC KEY BLOCK-----
diff --git a/RPM-GPG-KEY-EPEL-9 b/RPM-GPG-KEY-EPEL-9
new file mode 100644
index 0000000..234c12f
--- /dev/null
+++ b/RPM-GPG-KEY-EPEL-9
@@ -0,0 +1,29 @@
+-----BEGIN PGP PUBLIC KEY BLOCK-----
+
+mQINBGE3mOsBEACsU+XwJWDJVkItBaugXhXIIkb9oe+7aadELuVo0kBmc3HXt/Yp
+CJW9hHEiGZ6z2jwgPqyJjZhCvcAWvgzKcvqE+9i0NItV1rzfxrBe2BtUtZmVcuE6
+2b+SPfxQ2Hr8llaawRjt8BCFX/ZzM4/1Qk+EzlfTcEcpkMf6wdO7kD6ulBk/tbsW
+DHX2lNcxszTf+XP9HXHWJlA2xBfP+Dk4gl4DnO2Y1xR0OSywE/QtvEbN5cY94ieu
+n7CBy29AleMhmbnx9pw3NyxcFIAsEZHJoU4ZW9ulAJ/ogttSyAWeacW7eJGW31/Z
+39cS+I4KXJgeGRI20RmpqfH0tuT+X5Da59YpjYxkbhSK3HYBVnNPhoJFUc2j5iKy
+XLgkapu1xRnEJhw05kr4LCbud0NTvfecqSqa+59kuVc+zWmfTnGTYc0PXZ6Oa3rK
+44UOmE6eAT5zd/ToleDO0VesN+EO7CXfRsm7HWGpABF5wNK3vIEF2uRr2VJMvgqS
+9eNwhJyOzoca4xFSwCkc6dACGGkV+CqhufdFBhmcAsUotSxe3zmrBjqA0B/nxIvH
+DVgOAMnVCe+Lmv8T0mFgqZSJdIUdKjnOLu/GRFhjDKIak4jeMBMTYpVnU+HhMHLq
+uDiZkNEvEEGhBQmZuI8J55F/a6UURnxUwT3piyi3Pmr2IFD7ahBxPzOBCQARAQAB
+tCdGZWRvcmEgKGVwZWw5KSA8ZXBlbEBmZWRvcmFwcm9qZWN0Lm9yZz6JAk4EEwEI
+ADgWIQT/itE0RZcQbs6BO5GKOHK/MihGfAUCYTeY6wIbDwULCQgHAgYVCgkICwIE
+FgIDAQIeAQIXgAAKCRCKOHK/MihGfFX/EACBPWv20+ttYu1A5WvtHJPzwbj0U4yF
+3zTQpBglQ2UfkRpYdipTlT3Ih6j5h2VmgRPtINCc/ZE28adrWpBoeFIS2YAKOCLC
+nZYtHl2nCoLq1U7FSttUGsZ/t8uGCBgnugTfnIYcmlP1jKKA6RJAclK89evDQX5n
+R9ZD+Cq3CBMlttvSTCht0qQVlwycedH8iWyYgP/mF0W35BIn7NuuZwWhgR00n/VG
+4nbKPOzTWbsP45awcmivdrS74P6mL84WfkghipdmcoyVb1B8ZP4Y/Ke0RXOnLhNe
+CfrXXvuW+Pvg2RTfwRDtehGQPAgXbmLmz2ZkV69RGIr54HJv84NDbqZovRTMr7gL
+9k3ciCzXCiYQgM8yAyGHV0KEhFSQ1HV7gMnt9UmxbxBE2pGU7vu3CwjYga5DpwU7
+w5wu1TmM5KgZtZvuWOTDnqDLf0cKoIbW8FeeCOn24elcj32bnQDuF9DPey1mqcvT
+/yEo/Ushyz6CVYxN8DGgcy2M9JOsnmjDx02h6qgWGWDuKgb9jZrvRedpAQCeemEd
+fhEs6ihqVxRFl16HxC4EVijybhAL76SsM2nbtIqW1apBQJQpXWtQwwdvgTVpdEtE
+r4ArVJYX5LrswnWEQMOelugUG6S3ZjMfcyOa/O0364iY73vyVgaYK+2XtT2usMux
+VL469Kj5m13T6w==
+=Mjs/
+-----END PGP PUBLIC KEY BLOCK-----
diff --git a/crb b/crb
deleted file mode 100755
index dfdd88f..0000000
--- a/crb
+++ /dev/null
@@ -1,99 +0,0 @@
-#!/bin/bash
-#
-# Enable / Disable / Status the codeready-builder(CRB) or equivalent repo.
-#
-# Copyright (C) 2024
-# SPDX-License-Identifier: GPL-2.0-only
-#
-# Authors:
-# Troy Dawson
-#
-
-
-###############
-# Show help
-###############
-usage() {
- echo "Usage `basename $0` [ enable | disable | status ] " >&2
- echo >&2
- echo "Enable, Disable, or give the status of the CodeReady Builder (CRB) repo" >&2
- echo >&2
- echo "Options:" >&2
- echo " enable" >&2
- echo " Enable the CRB repo" >&2
- echo " disable" >&2
- echo " Disable the CRB repo" >&2
- echo " status" >&2
- echo " Show if the CRB repo is enabled or disabled" >&2
- echo " help" >&2
- echo " Show this options menu" >&2
- echo >&2
- echo "Environment Variable:" >&2
- echo " FORCE_DNF=1 Set this before the command to force the use of" >&2
- echo " 'dnf config-manager' even on RHEL systems." >&2
- echo " Example: FORCE_DNF=1 $(basename "$0") enable" >&2
- echo >&2
- popd &>/dev/null
- exit 1
-}
-
-
-# Show the status
-show_status()(
- # Determine if a version of CRB is enabled
- crb_repo=$(dnf repolist | grep -i -e crb -e powertools -e codeready | grep -v -i -e debug -e source -e eus -e virt -e rhui | awk '{print $1}')
- if [ "${crb_repo}" == "" ] ; then
- echo "CRB repo is disabled"
- else
- echo "CRB repo is enabled and named: ${crb_repo}"
- fi
-)
-
-# Enable or Disable the repo
-enable_disable_repo(){
- command="$1"
- # Determine which repo we need to change
- crb_repo=$(dnf repolist --all | grep -i -e crb -e powertools -e codeready | grep -v -i -e debug -e source -e eus -e virt -e rhui | awk '{print $1}')
-
- # Determine if we are on RHEL or not, then do the correct steps
- source /etc/os-release
- if [[ "${FORCE_DNF:-0}" -eq 0 && "${NAME}" =~ "Red Hat" ]] ; then
- subscription-manager repos ${command} ${crb_repo}
- else
- # Determine if dnf-command(config-manager) is installed
- if ! rpm -q --whatprovides 'dnf-command(config-manager)' > /dev/null 2>&1 ; then
- echo "Error: Please run: dnf install 'dnf-command(config-manager)'" >&2
- echo " before trying to enable/disable the CRB repo." >&2
- echo "Aborting"'!' >&2
- exit 1
- fi
- # Everything else uses dnf config-manager
- dnf config-manager ${command} ${crb_repo}
- fi
-}
-
-###############
-# Get our arguments
-###############
-key="$1"
-case $key in
-enable | --enable )
- echo "Enabling CRB repo"
- enable_disable_repo --enable
- show_status
-;;
-disable | --disable )
- echo "Disabling CRB repo"
- enable_disable_repo --disable
- show_status
-;;
-status | --status )
- show_status
-;;
-* )
- usage
- exit 2
-;;
-esac
-
-exit 0
diff --git a/epel-modular.repo b/epel-modular.repo
new file mode 100644
index 0000000..d898507
--- /dev/null
+++ b/epel-modular.repo
@@ -0,0 +1,30 @@
+[epel-modular]
+name=Extra Packages for Enterprise Linux Modular $releasever - $basearch
+# It is much more secure to use the metalink, but if you wish to use a local mirror
+# place its address here.
+#baseurl=https://download.example/pub/epel/$releasever/Modular/$basearch/
+metalink=https://mirrors.fedoraproject.org/metalink?repo=epel-modular-$releasever&arch=$basearch&infra=$infra&content=$contentdir
+enabled=1
+gpgcheck=1
+countme=1
+gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL-$releasever
+
+[epel-modular-debuginfo]
+name=Extra Packages for Enterprise Linux Modular $releasever - $basearch - Debug
+# It is much more secure to use the metalink, but if you wish to use a local mirror
+# place its address here.
+#baseurl=https://download.example/pub/epel/$releasever/Modular/$basearch/debug/
+metalink=https://mirrors.fedoraproject.org/metalink?repo=epel-modular-debug-$releasever&arch=$basearch&infra=$infra&content=$contentdir
+enabled=0
+gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL-$releasever
+gpgcheck=1
+
+[epel-modular-source]
+name=Extra Packages for Enterprise Linux Modular $releasever - $basearch - Source
+# It is much more secure to use the metalink, but if you wish to use a local mirror
+# place its address here.
+#baseurl=https://download.example/pub/epel/$releasever/Modular/source/tree/
+metalink=https://mirrors.fedoraproject.org/metalink?repo=epel-modular-source-$releasever&arch=$basearch&infra=$infra&content=$contentdir
+enabled=0
+gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL-$releasever
+gpgcheck=1
diff --git a/epel-next-testing.repo b/epel-next-testing.repo
new file mode 100644
index 0000000..53d7531
--- /dev/null
+++ b/epel-next-testing.repo
@@ -0,0 +1,30 @@
+[epel-next-testing]
+name=Extra Packages for Enterprise Linux $releasever - Next - Testing - $basearch
+# It is much more secure to use the metalink, but if you wish to use a local mirror
+# place its address here.
+#baseurl=https://download.example/pub/epel/testing/next/$releasever/Everything/$basearch/
+metalink=https://mirrors.fedoraproject.org/metalink?repo=epel-testing-next-$releasever&arch=$basearch&infra=$infra&content=$contentdir
+enabled=0
+gpgcheck=1
+countme=1
+gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL-$releasever
+
+[epel-next-testing-debuginfo]
+name=Extra Packages for Enterprise Linux $releasever - Next - Testing - $basearch - Debug
+# It is much more secure to use the metalink, but if you wish to use a local mirror
+# place its address here.
+#baseurl=https://download.example/pub/epel/testing/next/$releasever/Everything/$basearch/debug/
+metalink=https://mirrors.fedoraproject.org/metalink?repo=epel-testing-next-debug-$releasever&arch=$basearch&infra=$infra&content=$contentdir
+enabled=0
+gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL-$releasever
+gpgcheck=1
+
+[epel-next-testing-source]
+name=Extra Packages for Enterprise Linux $releasever - Next - Testing - $basearch - Source
+# It is much more secure to use the metalink, but if you wish to use a local mirror
+# place its address here.
+#baseurl=https://download.example/pub/epel/testing/next/$releasever/Everything/source/tree/
+metalink=https://mirrors.fedoraproject.org/metalink?repo=epel-testing-next-source-$releasever&arch=$basearch&infra=$infra&content=$contentdir
+enabled=0
+gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL-$releasever
+gpgcheck=1
diff --git a/epel-next.repo b/epel-next.repo
new file mode 100644
index 0000000..bb1bc23
--- /dev/null
+++ b/epel-next.repo
@@ -0,0 +1,30 @@
+[epel-next]
+name=Extra Packages for Enterprise Linux $releasever - Next - $basearch
+# It is much more secure to use the metalink, but if you wish to use a local mirror
+# place its address here.
+#baseurl=https://download.example/pub/epel/next/$releasever/Everything/$basearch/
+metalink=https://mirrors.fedoraproject.org/metalink?repo=epel-next-$releasever&arch=$basearch&infra=$infra&content=$contentdir
+enabled=1
+gpgcheck=1
+countme=1
+gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL-$releasever
+
+[epel-next-debuginfo]
+name=Extra Packages for Enterprise Linux $releasever - Next - $basearch - Debug
+# It is much more secure to use the metalink, but if you wish to use a local mirror
+# place its address here.
+#baseurl=https://download.example/pub/epel/next/$releasever/Everything/$basearch/debug/
+metalink=https://mirrors.fedoraproject.org/metalink?repo=epel-next-debug-$releasever&arch=$basearch&infra=$infra&content=$contentdir
+enabled=0
+gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL-$releasever
+gpgcheck=1
+
+[epel-next-source]
+name=Extra Packages for Enterprise Linux $releasever - Next - $basearch - Source
+# It is much more secure to use the metalink, but if you wish to use a local mirror
+# place its address here.
+#baseurl=https://download.example/pub/epel/next/$releasever/Everything/source/tree/
+metalink=https://mirrors.fedoraproject.org/metalink?repo=epel-next-source-$releasever&arch=$basearch&infra=$infra&content=$contentdir
+enabled=0
+gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL-$releasever
+gpgcheck=1
diff --git a/epel-playground.repo b/epel-playground.repo
new file mode 100644
index 0000000..3736236
--- /dev/null
+++ b/epel-playground.repo
@@ -0,0 +1,30 @@
+[epel-playground]
+name=Extra Packages for Enterprise Linux $releasever - Playground - $basearch
+# It is much more secure to use the metalink, but if you wish to use a local mirror
+# place its address here.
+#baseurl=https://download.example/pub/epel/playground/$releasever/Everything/$basearch/os/
+metalink=https://mirrors.fedoraproject.org/metalink?repo=playground-epel$releasever&arch=$basearch&infra=$infra&content=$contentdir
+enabled=0
+gpgcheck=1
+countme=1
+gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL-$releasever
+
+[epel-playground-debuginfo]
+name=Extra Packages for Enterprise Linux $releasever - Playground - $basearch - Debug
+# It is much more secure to use the metalink, but if you wish to use a local mirror
+# place its address here.
+#baseurl=https://download.example/pub/epel/playground/$releasever/Everything/$basearch/debug/tree/
+metalink=https://mirrors.fedoraproject.org/metalink?repo=playground-debug-epel$releasever&arch=$basearch&infra=$infra&content=$contentdir
+enabled=0
+gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL-$releasever
+gpgcheck=1
+
+[epel-playground-source]
+name=Extra Packages for Enterprise Linux $releasever - Playground - $basearch - Source
+# It is much more secure to use the metalink, but if you wish to use a local mirror
+# place its address here.
+#baseurl=https://download.example/pub/epel/playground/$releasever/Everything/source/tree/
+metalink=https://mirrors.fedoraproject.org/metalink?repo=playground-source-epel$releasever&arch=$basearch&infra=$infra&content=$contentdir
+enabled=0
+gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL-$releasever
+gpgcheck=1
diff --git a/epel-release.spec b/epel-release.spec
index a866f61..12efb41 100644
--- a/epel-release.spec
+++ b/epel-release.spec
@@ -1,91 +1,202 @@
+%bcond_with base
+%bcond_without next
+%bcond_with modular
+%bcond_with playground
+
Name: epel-release
-Version: 10
-Release: %autorelease
+Version: 9
+Release: 1%{dist}
Summary: Extra Packages for Enterprise Linux repository configuration
-# Most things in this package are not considered copyrightable. If that were
-# true for everything in the package, the license identifier would be
-# LicenseRef-Not-Copyrightable. However, the exception is the crb script,
-# which is GPL-2.0-only. Per advice from Fedora Legal, we should use
-# GPL-2.0-only as the license identifier for the package in this scenario.
-# https://bugzilla.redhat.com/show_bug.cgi?id=2302438
-License: GPL-2.0-only
+License: GPLv2
+
+# This is a EPEL maintained package which is specific to
+# our distribution. Thus the source is only available from
+# within this srpm.
+URL: http://download.fedoraproject.org/pub/epel
+Source0: http://download.fedoraproject.org/pub/epel/RPM-GPG-KEY-EPEL-%{version}
+Source1: GPL
+
+Source100: epel.repo
+Source101: epel-next.repo
+Source102: epel-modular.repo
+Source103: epel-playground.repo
+
+Source200: epel-testing.repo
+Source201: epel-next-testing.repo
+Source202: epel-testing-modular.repo
+
+# EPEL default preset policy (borrowed from fedora's 90-default.preset)
+Source300: 90-epel.preset
+
BuildArch: noarch
-URL: https://epel.io
-
-# keys
-Source10: https://download.fedoraproject.org/pub/epel/RPM-GPG-KEY-EPEL-%{version}
-
-# repo configs
-Source20: epel.repo
-Source21: epel-testing.repo
-
-# preset policy
-Source30: 90-epel.preset
-
-# Add epel crb script
-Source31: crb
-# epel crb script is licensed GPL-2.0-only
-Source32: GPL-2.0-only.txt
-
-# The setup process for EPEL involves installing epel-release before the EPEL
-# repository is available. For this to continue to work correctly, all
-# dependencies of this package must be available from the default repositories.
-# Notably, if weak dependencies of this package are not present at the time of
-# installation, they will be skipped and never get installed.
-# https://pagure.io/epel/issue/328
-
-# This should only be installed on Enterprise Linux with the same major version
-Requires: (redhat-release >= %{version} with redhat-release < %[%{version} + 1])
-
-# crb needs config-manager to run
-# But only recommend it, incase people do not need crb
-Recommends: dnf-command(config-manager)
-
-# SELinux policy modules related to EPEL
-Recommends: (selinux-policy-extra if selinux-policy)
+Requires: redhat-release >= %{version}
+# epel-release is only for enterprise linux, not fedora
+Conflicts: fedora-release
+%if %{with next}
+Recommends: (epel-next-release if centos-stream-release)
+%endif
%description
This package contains the Extra Packages for Enterprise Linux (EPEL) repository
-configuration and GPG key.
+GPG key as well as configuration for yum.
+
+
+%if %{with next}
+%package -n epel-next-release
+Summary: Extra Packages for Enterprise Linux Next repository configuration
+Requires: %{name} = %{version}-%{release}
+
+
+%description -n epel-next-release
+This package contains the Extra Packages for Enterprise Linux (EPEL) Next
+configuration for yum.
+%endif
+
%prep
%setup -q -c -T
-# Add epel crb script license
-install -pm 644 %{SOURCE32} .
+install -pm 644 %{SOURCE1} .
%install
-# keys
-install -Dp -m 0644 -t %{buildroot}%{_sysconfdir}/pki/rpm-gpg %{S:10}
+# GPG Key
+install -Dpm 644 %{SOURCE0} \
+ %{buildroot}%{_sysconfdir}/pki/rpm-gpg/RPM-GPG-KEY-EPEL-%{version}
-# repo configs
-install -Dp -m 0644 -t %{buildroot}%{_sysconfdir}/yum.repos.d %{S:20} %{S:21}
+# yum repo configs
+install -dm 755 %{buildroot}%{_sysconfdir}/yum.repos.d
+%if %{with base}
+install -pm 644 %{SOURCE100} %{SOURCE200} %{buildroot}%{_sysconfdir}/yum.repos.d
+%endif
+%if %{with next}
+install -pm 644 %{SOURCE101} %{SOURCE201} %{buildroot}%{_sysconfdir}/yum.repos.d
+%endif
+%if %{with modular}
+install -pm 644 %{SOURCE102} %{SOURCE202} %{buildroot}%{_sysconfdir}/yum.repos.d
+%endif
+%if %{with playground}
+install -pm 644 %{SOURCE103} %{buildroot}%{_sysconfdir}/yum.repos.d
+%endif
-# preset policy
-install -Dp -m 0644 -t %{buildroot}%{_prefix}/lib/systemd/system-preset %{S:30}
-
-# Add epel crb script
-install -D -pm744 -t %{buildroot}%{_bindir} %{SOURCE31}
-
-
-%post
-# Doing a check to see if crb is enabled is as hard and resource intense as enabling or disabling crb.
-# So we will say crb is recommended, without first checking. But only on the initial install.
-if [ "$1" -eq 1 ] ; then
- echo "Many EPEL packages require the CodeReady Builder (CRB) repository."
- echo "It is recommended that you run %{_bindir}/crb enable to enable the CRB repository."
-fi
+# systemd presets
+install -pm 644 -D %{SOURCE300} %{buildroot}%{_prefix}/lib/systemd/system-preset/90-epel.preset
%files
-%license GPL-2.0-only.txt
-%{_sysconfdir}/pki/rpm-gpg/RPM-GPG-KEY-EPEL-%{version}
+%license GPL
+%if %{with base}
%config(noreplace) %{_sysconfdir}/yum.repos.d/epel.repo
%config(noreplace) %{_sysconfdir}/yum.repos.d/epel-testing.repo
+%endif
+%if %{with modular}
+%config(noreplace) %{_sysconfdir}/yum.repos.d/epel-modular.repo
+%config(noreplace) %{_sysconfdir}/yum.repos.d/epel-testing-modular.repo
+%endif
+%if %{with playground}
+%config(noreplace) %{_sysconfdir}/yum.repos.d/epel-playground.repo
+%endif
+%{_sysconfdir}/pki/rpm-gpg/*
%{_prefix}/lib/systemd/system-preset/90-epel.preset
-%{_bindir}/crb
+
+
+%if %{with next}
+%files -n epel-next-release
+%config(noreplace) %{_sysconfdir}/yum.repos.d/epel-next.repo
+%config(noreplace) %{_sysconfdir}/yum.repos.d/epel-next-testing.repo
+%endif
%changelog
-%autochangelog
+* Fri Oct 08 2021 Carl George - 9-1
+- Initial package for epel9-next
+
+* Fri Sep 03 2021 Mohan Boddu - 8-13
+- Change the baseurl to point to source/tree for srpms
+
+* Fri Jul 30 2021 Kevin Fenzi - 8-12
+- Enable certbot-renew.timer ( rhbz#1986205 )
+
+* Thu Jun 03 2021 Carl George - 8-11
+- Add epel-next-release subpackage
+
+* Sat Dec 05 2020 Kevin Fenzi - 8-10
+- Add x509watch.timer enabled by default. Fixes bug #1901721
+
+* Sat Oct 31 2020 Kevin Fenzi - 8-9
+- Add countme feature for epel. Fixes bug #1825984
+
+* Fri Dec 13 2019 Merlin Mathesius - 8-8%{dist}
+- Add modular repos.
+
+* Thu Oct 10 2019 Stephen Smoogen - 8-7%{dist}
+- Remove failovermethod from EPEL8 tree. It is no longer needed.
+
+* Mon Sep 16 2019 Stephen Smoogen - 8-6%{dist}
+- Change gpg key to use -8 versus -$releasever. This fixes bash problem
+
+* Tue Aug 6 2019 Stephen Smoogen - 8-5%{dist}
+- Fix playground release to have os/ on its name [Kevin Fenzi]
+- Make sure all values of $release are $releasever
+
+
+* Thu Aug 1 2019 Pablo Greco - 8-4
+- Use the correct var for dnf to expand
+- Update playground source url
+- Remove epel-modules repo
+- Use https in baseurl
+
+* Thu Aug 1 2019 Stephen Smoogen - 8-3
+- Make sure that the key name is named correctly
+
+* Thu Aug 1 2019 Stephen Smoogen - 8-2
+- Make baseurl paths match dl.fedoraproject.org
+- Add draft of epel8 packaging
+- Fix docs
+
+* Thu Jul 18 2019 Stephen Smoogen - 8-1
+- Update for RHEL-8
+- Add playground repo data
+- Clean out 90-epel.preset to make sure we dont override RHEL-8 items. Just add items in which EPEL needs.
+
+* Mon Oct 02 2017 Kevin Fenzi - 7-11
+- Add Conflicts on fedora-release to prevent people from installing on Fedora systems. Fixes bug #1497702
+
+* Sat Jun 24 2017 Kevin Fenzi - 7-10
+- Change mirrorlist= in repo files to be metalink= (as thats what they are). Fixes bug #1451212
+
+* Tue Dec 27 2016 Kevin Fenzi - 7-9
+- Add preset for drbdlinks package. Fixes bug #1405744
+
+* Sat Jul 23 2016 Kevin Fenzi - 7-8
+- Drop duplicate libstoragemgmt from presets. Fixes bug #1358971
+
+* Fri Jun 03 2016 Kevin Fenzi - 7-7
+- Drop initial-setup from presets. Fixes bug #1342511
+
+* Wed Mar 30 2016 Jason L Tibbitts III - 7-6
+- Remove macros.epel; let epel-rpm-macros handle it instead.
+
+* Tue Nov 25 2014 Rex Dieter 7-5
+- fix typo in macros.epel
+
+* Fri Nov 21 2014 Rex Dieter 7-4
+- add systemd 90-epel.preset
+
+* Fri Nov 21 2014 Rex Dieter 7-3
+- implement %%epel macro
+
+* Tue Sep 02 2014 Kevin Fenzi 7-2
+- Make repo files config(noreplace). Fixes bug #1135576
+
+* Thu Aug 28 2014 Dennis Gilmore - 7-1
+- enable gpg checking now we are out of beta
+
+* Wed Jun 18 2014 Kevin Fenzi 7-0.2
+- Drop unneeded up2date post/postun
+- Fixed up description.
+- Fixes bugs #1052434 and #1093918
+
+* Mon Dec 16 2013 Dennis Gilmore - 7-0.1
+- initial epel 7 build. gpg cheking is disabled
+
diff --git a/epel-testing-modular.repo b/epel-testing-modular.repo
new file mode 100644
index 0000000..f312bb2
--- /dev/null
+++ b/epel-testing-modular.repo
@@ -0,0 +1,30 @@
+[epel-testing-modular]
+name=Extra Packages for Enterprise Linux Modular $releasever - Testing - $basearch
+# It is much more secure to use the metalink, but if you wish to use a local mirror
+# place its address here.
+#baseurl=https://download.example/pub/epel/testing/$releasever/Modular/$basearch
+metalink=https://mirrors.fedoraproject.org/metalink?repo=testing-modular-epel$releasever&arch=$basearch&infra=$infra&content=$contentdir
+enabled=0
+gpgcheck=1
+countme=1
+gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL-$releasever
+
+[epel-testing-modular-debuginfo]
+name=Extra Packages for Enterprise Linux Modular $releasever - Testing - $basearch - Debug
+# It is much more secure to use the metalink, but if you wish to use a local mirror
+# place its address here.
+#baseurl=https://download.example/pub/epel/testing/$releasever/Modular/$basearch/debug
+metalink=https://mirrors.fedoraproject.org/metalink?repo=testing-modular-debug-epel$releasever&arch=$basearch&infra=$infra&content=$contentdir
+enabled=0
+gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL-$releasever
+gpgcheck=1
+
+[epel-testing-modular-source]
+name=Extra Packages for Enterprise Linux Modular $releasever - Testing - $basearch - Source
+# It is much more secure to use the metalink, but if you wish to use a local mirror
+# place its address here.
+#baseurl=https://download.example/pub/epel/testing/$releasever/Modular/source/tree/
+metalink=https://mirrors.fedoraproject.org/metalink?repo=testing-modular-source-epel$releasever&arch=$basearch&infra=$infra&content=$contentdir
+enabled=0
+gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL-$releasever
+gpgcheck=1
diff --git a/epel-testing.repo b/epel-testing.repo
index 8335438..0211f45 100644
--- a/epel-testing.repo
+++ b/epel-testing.repo
@@ -2,35 +2,29 @@
name=Extra Packages for Enterprise Linux $releasever - Testing - $basearch
# It is much more secure to use the metalink, but if you wish to use a local mirror
# place its address here.
-#baseurl=https://download.example/pub/epel/testing/$releasever${releasever_minor:+z}/Everything/$basearch/
-metalink=https://mirrors.fedoraproject.org/metalink?repo=epel${releasever_minor:+-z}-testing-$releasever&arch=$basearch
-gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL-$releasever_major
-gpgcheck=1
-repo_gpgcheck=0
-metadata_expire=24h
-countme=1
+#baseurl=https://download.example/pub/epel/testing/$releasever/Everything/$basearch/
+metalink=https://mirrors.fedoraproject.org/metalink?repo=testing-epel$releasever&arch=$basearch&infra=$infra&content=$contentdir
enabled=0
+gpgcheck=1
+countme=1
+gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL-$releasever
[epel-testing-debuginfo]
name=Extra Packages for Enterprise Linux $releasever - Testing - $basearch - Debug
# It is much more secure to use the metalink, but if you wish to use a local mirror
# place its address here.
-#baseurl=https://download.example/pub/epel/testing/$releasever${releasever_minor:+z}/Everything/$basearch/debug/
-metalink=https://mirrors.fedoraproject.org/metalink?repo=epel${releasever_minor:+-z}-testing-debug-$releasever&arch=$basearch
-gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL-$releasever_major
-gpgcheck=1
-repo_gpgcheck=0
-metadata_expire=24h
+#baseurl=https://download.example/pub/epel/testing/$releasever/Everything/$basearch/debug/
+metalink=https://mirrors.fedoraproject.org/metalink?repo=testing-debug-epel$releasever&arch=$basearch&infra=$infra&content=$contentdir
enabled=0
+gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL-$releasever
+gpgcheck=1
[epel-testing-source]
name=Extra Packages for Enterprise Linux $releasever - Testing - $basearch - Source
# It is much more secure to use the metalink, but if you wish to use a local mirror
# place its address here.
-#baseurl=https://download.example/pub/epel/testing/$releasever${releasever_minor:+z}/Everything/source/tree/
-metalink=https://mirrors.fedoraproject.org/metalink?repo=epel${releasever_minor:+-z}-testing-source-$releasever&arch=source
-gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL-$releasever_major
-gpgcheck=1
-repo_gpgcheck=0
-metadata_expire=24h
+#baseurl=https://download.example/pub/epel/testing/$releasever/Everything/source/tree/
+metalink=https://mirrors.fedoraproject.org/metalink?repo=testing-source-epel$releasever&arch=$basearch&infra=$infra&content=$contentdir
enabled=0
+gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL-$releasever
+gpgcheck=1
diff --git a/epel.repo b/epel.repo
index f186dbd..c162fe5 100644
--- a/epel.repo
+++ b/epel.repo
@@ -2,35 +2,29 @@
name=Extra Packages for Enterprise Linux $releasever - $basearch
# It is much more secure to use the metalink, but if you wish to use a local mirror
# place its address here.
-#baseurl=https://download.example/pub/epel/$releasever${releasever_minor:+z}/Everything/$basearch/
-metalink=https://mirrors.fedoraproject.org/metalink?repo=epel${releasever_minor:+-z}-$releasever&arch=$basearch
-gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL-$releasever_major
-gpgcheck=1
-repo_gpgcheck=0
-metadata_expire=24h
-countme=1
+#baseurl=https://download.example/pub/epel/$releasever/Everything/$basearch/
+metalink=https://mirrors.fedoraproject.org/metalink?repo=epel-$releasever&arch=$basearch&infra=$infra&content=$contentdir
enabled=1
+gpgcheck=1
+countme=1
+gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL-$releasever
[epel-debuginfo]
name=Extra Packages for Enterprise Linux $releasever - $basearch - Debug
# It is much more secure to use the metalink, but if you wish to use a local mirror
# place its address here.
-#baseurl=https://download.example/pub/epel/$releasever${releasever_minor:+z}/Everything/$basearch/debug/
-metalink=https://mirrors.fedoraproject.org/metalink?repo=epel${releasever_minor:+-z}-debug-$releasever&arch=$basearch
-gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL-$releasever_major
-gpgcheck=1
-repo_gpgcheck=0
-metadata_expire=24h
+#baseurl=https://download.example/pub/epel/$releasever/Everything/$basearch/debug/
+metalink=https://mirrors.fedoraproject.org/metalink?repo=epel-debug-$releasever&arch=$basearch&infra=$infra&content=$contentdir
enabled=0
+gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL-$releasever
+gpgcheck=1
[epel-source]
name=Extra Packages for Enterprise Linux $releasever - $basearch - Source
# It is much more secure to use the metalink, but if you wish to use a local mirror
# place its address here.
-#baseurl=https://download.example/pub/epel/$releasever${releasever_minor:+z}/Everything/source/tree/
-metalink=https://mirrors.fedoraproject.org/metalink?repo=epel${releasever_minor:+-z}-source-$releasever&arch=source
-gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL-$releasever_major
-gpgcheck=1
-repo_gpgcheck=0
-metadata_expire=24h
+#baseurl=https://download.example/pub/epel/$releasever/Everything/source/tree/
+metalink=https://mirrors.fedoraproject.org/metalink?repo=epel-source-$releasever&arch=$basearch&infra=$infra&content=$contentdir
enabled=0
+gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL-$releasever
+gpgcheck=1