Release package - All PR's should be against original/rpms/rocky-release ## Notes for Packagers/Builders This package produces multiple variants of `rocky-release`: * Stable: `rocky-release`, `rocky-repos`, `rocky-gpg-keys`, etc * LookAhead: All packages appended with `-lookahead` * Beta: All packages appended with `-Beta` * If `--with=rllookahead` or `--with=rlbeta` are set in mock, those variants are built * If both are set the same time, build will fail When `--with=rllookahead` is set the minor version will typically be `y+1`. So if the current stable is `X.0`, the next would be `X.1`. For pre-releases/beta, both packages should produce `X.Y` until changed in the spec. The `rllh` macro may be versioned out for future use. It does not have to be explicitly set. A `rllh_minor` macro may be introduced in the future. ### How does this benefit us? It allows us to track future minor releases from Stream and see how it will affect us going forward. When a minor release is being branched, the "lookahead" files can just be copied and a new "stable" release is made in preparation. The beta of each RHEL tends to stick around for a month before a release is done, which makes it easier to make sure everything "stays in line" for the most part. ### What about after the five year mark? LookAhead will no longer be produced as the major version will then be in maintenance only mode. ### What is the rloverride macro? This simply sets the dist tag to `.el%{major}.override` and changes the ID="..." tag in `/etc/os-release` to read as `rhel` rather than `rocky`. This helps us perform very specific builds that cannot otherwise be debranded properly, eg dotnet. This should also change the initial macros to only provide `%rhel` and not CentOS or any other derivative macro name, as some packages specifically look for these macros being set as well and *also* applies to those packages that cannot be properly debranded or when debranding has not visual or functional benefit.