I'm pretty sure I understand the workflow, or what will be the workflow, for CentOS Stream and RHEL, but there's one thing I'm curious about that I'd love to have clarified, at least to the extent that it's been planned or thought about so far:
Historically, a major release of RHEL has been cut from Fedora and polished up (or chopped down or...) but now that CentOS Stream exists, I can see several paths forward.
One possibility I envision is that CStream will progress at about the same pace as RHEL point releases today, which would suggest that when it comes time to branch something for RHEL 9, that might once again be Fedora, with the branch then being a major release of CStream that'll be polished into what will be released as RHEL 9.0.
Another possibility is that CStream will move somewhat quicker, with point releases over time covering more ground, somewhat obviating the notion of a major release - but this would conflict with the notion of a stable platform for vendors and partners to use as a long-lived base for their products, so I suspect it's not the answer.
A third possibility is that when RHEL 8 slows down [1] and there wouldn't normally be another point release of it, CStream will pick up pace and make bigger changes until it rolls forward to where RHEL 9 will pick up. This is the one I'm hoping for personally, as it would keep CStream as a continuous rolling release, and appropriate for situations where you'd want a rolling release. (There's no official equivalent to Leapp for CentOS, but this would mean that CStream wouldn't need one.)
Is the current thinking close to one of these, or are there options I've missed?
Thanks.
1. https://access.redhat.com/support/policy/updates/errata/
On Sat, Oct 05, 2019 at 11:28:39AM -0400, Mason Loring Bliss wrote:
I'm pretty sure I understand the workflow, or what will be the workflow, for CentOS Stream and RHEL, but there's one thing I'm curious about that I'd love to have clarified, at least to the extent that it's been planned or thought about so far:
Historically, a major release of RHEL has been cut from Fedora and polished up (or chopped down or...) but now that CentOS Stream exists, I can see several paths forward.
One possibility I envision is that CStream will progress at about the same pace as RHEL point releases today, which would suggest that when it comes time to branch something for RHEL 9, that might once again be Fedora, with the branch then being a major release of CStream that'll be polished into what will be released as RHEL 9.0.
Yep. See: https://fedoramagazine.org/fedora-and-centos-stream/ "Fedora will remain the first upstream of RHEL. It’s where every RHEL came from, and is where RHEL 9 will come from, too. But after RHEL branches off, CentOS will be upstream for ongoing work on those RHEL versions."
Another possibility is that CStream will move somewhat quicker, with point releases over time covering more ground, somewhat obviating the notion of a major release - but this would conflict with the notion of a stable platform for vendors and partners to use as a long-lived base for their products, so I suspect it's not the answer.
Right. It's not as far as I know.
A third possibility is that when RHEL 8 slows down [1] and there wouldn't normally be another point release of it, CStream will pick up pace and make bigger changes until it rolls forward to where RHEL 9 will pick up. This is the one I'm hoping for personally, as it would keep CStream as a continuous rolling release, and appropriate for situations where you'd want a rolling release. (There's no official equivalent to Leapp for CentOS, but this would mean that CStream wouldn't need one.)
I don't think this is intended/possible.
At some point RHEL9 will branch off Fedora, and at some point after that I would image there would be a new centos 9 stream that appears (after 9 beta? before? not sure). Centos 8 stream would keep tracking the 8.x point releases.
kevin
On Sat, Oct 5, 2019 at 3:09 PM Kevin Fenzi kevin@scrye.com wrote:
On Sat, Oct 05, 2019 at 11:28:39AM -0400, Mason Loring Bliss wrote:
I'm pretty sure I understand the workflow, or what will be the workflow, for CentOS Stream and RHEL, but there's one thing I'm curious about that I'd love to have clarified, at least to the extent that it's been planned or thought about so far:
Historically, a major release of RHEL has been cut from Fedora and polished up (or chopped down or...) but now that CentOS Stream exists, I can see several paths forward.
One possibility I envision is that CStream will progress at about the same pace as RHEL point releases today, which would suggest that when it comes time to branch something for RHEL 9, that might once again be Fedora, with the branch then being a major release of CStream that'll be polished into what will be released as RHEL 9.0.
Yep. See: https://fedoramagazine.org/fedora-and-centos-stream/ "Fedora will remain the first upstream of RHEL. It’s where every RHEL came from, and is where RHEL 9 will come from, too. But after RHEL branches off, CentOS will be upstream for ongoing work on those RHEL versions."
It sounds like extra work to maintain an intermediate release between RHEL and Fedora. It also sounds like an attempt to bring EPEL projects in house, which has been tried before and often broken stable software. I refer to ansible, and most recently python 3.6.
Another possibility is that CStream will move somewhat quicker, with point releases over time covering more ground, somewhat obviating the notion of a major release - but this would conflict with the notion of a stable platform for vendors and partners to use as a long-lived base for their products, so I suspect it's not the answer.
Right. It's not as far as I know.
A third possibility is that when RHEL 8 slows down [1] and there wouldn't normally be another point release of it, CStream will pick up pace and make bigger changes until it rolls forward to where RHEL 9 will pick up. This is the one I'm hoping for personally, as it would keep CStream as a continuous rolling release, and appropriate for situations where you'd want a rolling release. (There's no official equivalent to Leapp for CentOS, but this would mean that CStream wouldn't need one.)
I don't think this is intended/possible.
Well, it's software. A great deal is possible. It doesn't seem likely since it would get in trouble, pretty fast, with compatibility with the "base" release.
At some point RHEL9 will branch off Fedora, and at some point after that I would image there would be a new centos 9 stream that appears (after 9 beta? before? not sure). Centos 8 stream would keep tracking the 8.x point releases.
I'm betting money that Red Hat will elect to rename the OS, much as they renamed and released "RHEL 2" instead of "Red Hat 10", and much as Sun elected to release "Solaris 2" rather than "SunOS 5",. and much as the Java developers have gone "bowling for version numbers" with Java releases. I'm somewhat cynical from hard-won experience, but it's a big temptation as a software platform gets older to want to "change identity" and "take ownership" by changing the name with vendors.
On Sat, Oct 05, 2019 at 10:24:45PM -0400, Nico Kadel-Garcia wrote:
"Fedora will remain the first upstream of RHEL. It’s where every RHEL came from, and is where RHEL 9 will come from, too. But after RHEL branches off, CentOS will be upstream for ongoing work on those RHEL versions."
It sounds like extra work to maintain an intermediate release between RHEL and Fedora.
This is work that's already being done. The difference is doing it transparently and making it available to use, test, and build on.
It also sounds like an attempt to bring EPEL projects
in house, which has been tried before and often broken stable software. I refer to ansible, and most recently python 3.6.
Can you elaborate on how it sounds like that?
On Oct 5, 2019, at 10:24 PM, Nico Kadel-Garcia nkadel@gmail.com wrote:
It sounds like extra work to maintain an intermediate release between RHEL and Fedora. It also sounds like an attempt to bring EPEL projects in house, which has been tried before and often broken stable software. I refer to ansible, and most recently python 3.6.
I think you have a fundamental misunderstanding of what Stream is for. This is my interpretation, based on what I’m seeing in the repo and the documentation.
Right now, if you look at 8-stream, there’s only one group of packages that are newer than base, the kernel and supplementary packages that’s versioned along with the kernel, such as perf.
In base, the kernel version is kernel-4.18.0-80.1.2.el8_0. In stream, the kernel version is kernel-4.18.0-144.el8
So when you look at the changelog of the kernel in 8.1 when it is released, I believe you’ll see that 4.18.0-144 will be one of the intermediate version-releases, up until the version built for 8.1.
As far as I understand it, 8-stream will show the ongoing development *OF RHEL*. For the kernel, fixes that are necessary get cherry-picked into to the release that came out with the minor version, so you’ll see 4.18.0-10.1.3.el8_0 in the next kernel of CentOS 8.0, while the release of the 8-stream kernel will continue to increment, such as 4.18.0-145.el8.
I imagine that things like GNOME (which often gets larger updates between RHEL point releases) we’ll also see that development first in 8-stream. If there’s another OpenSSL rebase in a point release, we’ll see those versions in 8-stream. It means we can start preparing for these updates ahead of time. It’ll provide some more transparency to what to expect.
Fedora will continue to be upstream from RHEL for the major releases, and changes will likely filter in (such as with GNOME), but CentOS will only see those changes through RHEL.
-- Jonathan Billings billings@negate.org
On 10/6/19 5:13 AM, Jonathan Billings wrote:
On Oct 5, 2019, at 10:24 PM, Nico Kadel-Garcia nkadel@gmail.com wrote:
It sounds like extra work to maintain an intermediate release between RHEL and Fedora. It also sounds like an attempt to bring EPEL projects in house, which has been tried before and often broken stable software. I refer to ansible, and most recently python 3.6.
I think you have a fundamental misunderstanding of what Stream is for. This is my interpretation, based on what I’m seeing in the repo and the documentation.
Right now, if you look at 8-stream, there’s only one group of packages that are newer than base, the kernel and supplementary packages that’s versioned along with the kernel, such as perf.
In base, the kernel version is kernel-4.18.0-80.1.2.el8_0. In stream, the kernel version is kernel-4.18.0-144.el8
So when you look at the changelog of the kernel in 8.1 when it is released, I believe you’ll see that 4.18.0-144 will be one of the intermediate version-releases, up until the version built for 8.1.
This is correct.
As far as I understand it, 8-stream will show the ongoing development *OF RHEL*. For the kernel, fixes that are necessary get cherry-picked into to the release that came out with the minor version, so you’ll see 4.18.0-10.1.3.el8_0 in the next kernel of CentOS 8.0, while the release of the 8-stream kernel will continue to increment, such as 4.18.0-145.el8.
Also correct.
I imagine that things like GNOME (which often gets larger updates between RHEL point releases) we’ll also see that development first in 8-stream. If there’s another OpenSSL rebase in a point release, we’ll see those versions in 8-stream. It means we can start preparing for these updates ahead of time. It’ll provide some more transparency to what to expect.
This is the heart of it. For layered projects like oVirt, RDO and anyone developing things to run on top of rhel, minor point releases can be problematic when 700+ packages suddenly shift. CentOS Stream should break that work down into more frequent, but much smaller bite sized chunks.
Fedora will continue to be upstream from RHEL for the major releases, and changes will likely filter in (such as with GNOME), but CentOS will only see those changes through RHEL.
We do have a roadmap where contributions from the community could come into RHEL, but there will be some guidelines around this. We'll be working out what those look like in the reasonably near future.