|
|
Subscribe / Log in / New account

Fedora and its editions

By Jake Edge
December 8, 2020

Fedora has long had Workstation and Server editions and, back in August, added an edition for Internet of Things (IoT) devices. Those editions target different use cases for the distribution, as does the CoreOS "spin" (or "emerging edition"), which targets cloud and Kubernetes deployments. A proposal to elevate Fedora CoreOS to a full edition as part of Fedora 34 was recently discussed on the Fedora devel mailing list. As part of that, what it means for a distribution to be part of Fedora was discussed as well.

Fedora CoreOS edition?

Fedora program manager Ben Cotton posted the proposal in early December; making Fedora CoreOS an official edition "will help spread adoption and position Fedora as credible solution for running container workflow". As described in the proposal, there does not sound like a lot of work that needs to be done since "Fedora CoreOS is already being composed and released". Neal Gompa agreed with the idea, calling it simply a "paperwork change".

However, Adam Williamson was not so sure as there are a number of places where Fedora CoreOS is still fairly rough around the edges. He is concerned that people will ask "awkward questions" if that situation is not improved for Fedora 34; for example:

Note that if you go to getfedora.org and click on CoreOS *right now*, it offers you a Fedora 32-based CoreOS. This is the kind of thing that is kinda fine so long as it's an Emerging Edition. It would *not*, IMHO, be fine for an Edition. If we accept CoreOS as an edition and two months after Fedora 34 is "released", our "stable" CoreOS is still Fedora 33-based, that seems like the sort of thing that would look bad.

Dusty Mabe filled in some of the details of Fedora CoreOS releases. There are three "streams" for the distribution, stable, next, and testing, which are aligned differently. Currently the stable stream is from Fedora 32, but next and testing are both based on Fedora 33; "if you want Fedora 33 and you are a Fedora CoreOS user you can easily adopt a stream that has it". Fedora CoreOS does automatic updates by default, and there are several changes that came in Fedora 33 that could be disruptive, so the team is working through those before switching by default.

Ideally we update our stable stream closer to Fedora's actual release date but I think it's important to maybe release Fedora CoreOS from the notion that it's tightly coupled with the Fedora major release date for a few reasons:

  • we have people follow update streams and systems update automatically
  • it's more of a "rolling" release, with incremental feature improvements and major rebases periodically
    • this is a departure from Atomic Host where you had to manually decide when to do a major rebase
    • new features get added all the time, mid stream, so it's more of a continuous development model

In a separate sub-thread, Williamson described some of the problems that came with the IoT elevation that he thinks will be worse for CoreOS. "I think this has a lot of the issues we had with IoT, but turned up to 11." For example, Fedora CoreOS is not built with the same tools nor does it integrate with the rest of the Fedora edition ecosystem.

So to boil this down into a representative question: when we are doing the Fedora 34 Go/No-Go meeting in ~four months' time, how do we decide whether to release "Fedora CoreOS 34"?

What does the question "is Fedora CoreOS 34 ready to go" even mean, in the context of how CoreOS is built and released? What set of bits will we be deciding to ship or not ship, and how will that have been decided and communicated? Where will we look to find the test results and criteria on which we would base that decision?

Gompa seemed to change his mind a bit, agreeing that currently CoreOS does not mesh well with the rest of the project. He pointed out that it has led to real problems:

One very broken consequence of Fedora CoreOS working this way is that they basically *don't* participate in Changes discussions and just do things differently without warning or documentation. This has led to problems when Fedora CoreOS differs from the rest of Fedora in core, fundamental ways. This has even happened unintentionally, where Fedora CoreOS accidentally deviated from Fedora (and RHEL CoreOS!) by using the wrong variant of iptables: https://github.com/coreos/fedora-coreos-tracker/issues/676

Integration difficulties

Jonathan Lebon admitted there are some difficulties integrating CoreOS, but that "the intent is always to match Fedora whenever possible"; the iptables problem was "an unfortunate slip up". In terms of build tooling, he said that there are discussions between the CoreOS Assembler and OSBuild teams to find common ground, but any change is a ways off. In the meantime, "we're open to integrating with Fedora processes in any way necessary"

Cotton agreed with Williamson about the alignment question; he also wondered if there were perhaps enough questions to be resolved that the change should be pushed to Fedora 35 instead.

I understand the reasoning, but I'd really like to see FCOS [Fedora CoreOS] align with the rest of the schedule or at least develop a clear and succinct explanation of why it's delayed so that the public and the tech press can easily understand.

But Clement Verna, who is the "owner" of the proposal, is concerned that Fedora CoreOS is simply not going to fit into the established model.

Fedora CoreOS 34 does not exist, you have Fedora CoreOS stable, testing and next, each stream is released every 2 weeks. The Go/No-Go is based on reports coming from each stream, next stream is promoted to testing and testing promoted to stable. If any blockers are found in next or testing the content will not be promoted to stable.

He pointed to the design document for more details on the stream promotion process. Verna wondered about the definition of an "edition", but also thinks that there will need to be some changes to Fedora in order to accommodate Fedora CoreOS. "I think if we don't want to accept a different philosophy about release schedule and release engineering we can just close that Change proposal." Williamson said that he is not pushing for that outcome, he just wants to see the implications thought through before adopting the change proposal.

[...] how do we pivot from this simple story that "Fedora is a (set of) product(s) that come(s) out every six months, look out for our big Fedora XX Release Announcements!" to "Fedora is that, but it's ALSO this other thing that has three streams which release every two weeks and roll over according to some completely other schedule"? And so on.

I'm not saying these are things that should stop the Change, I'm saying they're things that *need to be considered as part of implementing the Change*, and deciding its schedule.

It took a bit of back and forth, but Verna now has some ideas for improving the proposal to address the concerns of Williamson and others. Fedora project leader Matthew Miller also had some thoughts on what it means to be an edition and ways to decouple some releases from the traditional six-month cadence. In fact, he has a more sweeping vision of where things might go:

Fedora Workstation, which is our most popular desktop offering, will stay on the familiar April/October release cadence. Silverblue, IoT, and CoreOS are examples of other Fedora operating system flavors that follow a rolling-release model instead. Our KDE Plasma Desktop follows the upstream KDE releases, which happen every four months, using the most-current Fedora software base at that time. [This last statement is obviously not true, but I'd like it to be a possibility.] On the other hand, our Fedora School OS flavor [also not real] updates only once a year, at the end of May, so that school IT teams can deploy over the summer and not worry about upgrades until the next summer.

Whither Server?

The lack of any mention of the Fedora Server edition by Miller reflects another sub-thread where its future was discussed. In reply to his posting of the change proposal, Cotton noted that adding CoreOS raised an "uncomfortable question": should the Server edition be "demoted"? He suggested that the edition would still be created, but that it would perhaps be de-emphasized. The Server working group has gone dormant, though the edition is still maintained. While Fedora CoreOS is not really a replacement, it does seem to be where the action is at this point. An alternative might be to revive the working group, he said.

There is interest in helping to revive it, Gompa said, but Williamson wondered if that was really needed. The Server edition is basically dormant because it works and does its job just fine the way it is. That could of course continue without it being an edition, but "I'm not sure it just being sort of quiet and undramatic necessarily merits that, especially if we don't have clear replacements for its capabilities yet".

But Cotton would clearly rather see the project be a little more active, or even proactive, at least if it is going to be one of the flagship deliverables for Fedora. He noted that the working group "appears to be in zombie state for at least the last two years". Even though a server distribution should be not be super-adventurous: "Is Fedora Server doing what it should be doing now, or is it doing what it should have done two years ago?"

Miller would also prefer to have Server continue as an edition, "but we need it to be more active for that to work". Gompa is willing to help shepherd the working group back into a more active status, but he is concerned about simply "making changes just because". But that is not what Miller is trying to suggest:

It's not a matter of making changes for change's own sake, but I would hope that we'd have some level of innovation and experimentation in Fedora Server. There are also just normal things like marketing materials, promotion, blog posts, docs, etc., that can use ongoing work.

Numerous folks stepped up to say they would be willing to help, which led to a thread in the previously moribund Fedora server mailing list. In the kickoff message, Miller outlined the kinds of things that need to be worked on; that has been met with several offers of help at this point. It would seem that the Server working group (and, thus, the Server edition) will rise again.

There is currently some overlap between the two community distributions from Red Hat: Fedora and CentOS. So the switch to CentOS Stream, which was announced on December 8 may also factor in here. CentOS has been the "go-to" server distribution for many and it is as yet unclear if CentOS Stream will still fill that role. If not, there might be even more use of Fedora Server, the one-year support cycle notwithstanding. Overall, it is a time of change for both Fedora and CentOS; it's going to take some time for the dust to settle.



to post comments

Fedora and its editions

Posted Dec 9, 2020 0:26 UTC (Wed) by davidstrauss (guest, #85867) [Link] (1 responses)

> Fedora Workstation, which is our most popular desktop offering, will stay on the familiar April/October release cadence. Silverblue, IoT, and CoreOS are examples of other Fedora operating system flavors that follow a rolling-release model instead.

My understanding is that Silverblue has a synchronized release schedule with Workstation and is not a rolling release (at least any more than Workstation).

Fedora and its editions

Posted Dec 9, 2020 19:27 UTC (Wed) by AdamW (subscriber, #48457) [Link]

In the quoted text, Matt was envisioning a potential future, not describing the present.

Fedora and its editions

Posted Dec 9, 2020 12:28 UTC (Wed) by amacater (subscriber, #790) [Link] (8 responses)

If Fedora Server isn't given high priority, then perhaps Fedora will be less relevant to RHEL, especially after yesterday's announcement over CentOS. Fedora appears to represent the only significant commitment to a desktop within the Red Hat ecosystem. There will possibly have to be a rethink round the purpose and significance of EPEL as well: it's currently provided as a public service by Fedora but where's the wider requirement?

Not an easy time for a bunch of busy volunteers. I also notice immediate calls to effectively recreate a binary-compatible Red Hat derived distribution from several quarters - we live in interesting times.

Fedora and its editions

Posted Dec 9, 2020 17:26 UTC (Wed) by jccleaver (guest, #127418) [Link] (7 responses)

Fedora Server has its role, for systems that are expected to last > a week, but less than a year. Or, to be "best effort upgrades to the next release" after that point. It's a bit ironic that, with CentOS Linux going away, "Fedora Server" actually *is* the RPM-based free release with the best ABI/compatibility guarantee at the moment. If someone wanted to resurrect Fedora Legacy to provide three-year LTS for certain Server releases, now really would be the time.

Fedora and its editions

Posted Dec 9, 2020 18:46 UTC (Wed) by mattdm (subscriber, #18) [Link] (1 responses)

Ahhh, Fedora Legacy. The problem with that is that no one really wanted to work on extending Fedora lifecycles. They just wanted RHL 8 and 9 to last forever.

Fedora and its editions

Posted Dec 10, 2020 21:50 UTC (Thu) by smoogen (subscriber, #97) [Link]

I will be sending a bill for my flashback therapy bills on working on Fedora Legacy. [in the same way that people wanted us to fix things without changing anything (no you can't upgrade, no you can't downgrade, and why isn't this working already!!!!]

Fedora and its editions

Posted Dec 9, 2020 21:40 UTC (Wed) by magfr (subscriber, #16052) [Link] (3 responses)

While CentOS did exist Fedora still provided better support for a basic server of some sort since the upgrade story for Fedora beats the one of CentOS.

CentOS upgrade story:
Upgrade? Please do a reinstall.

Fedora upgrade story:
Yes, every six months.

Fedora and its editions

Posted Dec 9, 2020 22:19 UTC (Wed) by rahulsundaram (subscriber, #21946) [Link] (2 responses)

>CentOS upgrade story:
> Upgrade? Please do a reinstall.
> Fedora upgrade story:
> Yes, every six months.

Neither is really true. While it is possible to do live upgrades in CentOS (and RHEL has commercial support for it - https://access.redhat.com/documentation/en-us/red_hat_ent... ), a long lifecyle and the way large enterprises manage these systems usually meant provisioning new systems is easier rather than upgrades.

Fedora - You don't have to upgrade every six months. You can skip every other releases and upgrade about once a year.

https://fedoraproject.org/wiki/Fedora_Release_Life_Cycle

Fedora and its editions

Posted Dec 10, 2020 1:34 UTC (Thu) by rgmoore (✭ supporter ✭, #75) [Link]

I think the point of the "every 6 months" line was that Fedora is built around regular updates. They test their update process, and breaking it would be a release blocker.

Fedora and its editions

Posted Dec 10, 2020 12:03 UTC (Thu) by dowdle (subscriber, #659) [Link]

No, CentOS has never supported upgrading from one major release to another. Period. While RHEL has such a feature, the software for that never got picked up by CentOS. They simply were not interested in it and no one stepped up to even make an attempt. While there are several recipes on various third-party HOWTO sites, they (often) led to completely broken systems and people looking for help in the #centos Freenode IRC channel... only to discover they will be resorting to backup.

Minor version upgrades however were like butter.

Fedora and its editions

Posted Dec 10, 2020 5:03 UTC (Thu) by mroche (subscriber, #137163) [Link]

> It's a bit ironic that, with CentOS Linux going away, "Fedora Server" actually *is* the RPM-based free release with the best ABI/compatibility guarantee at the moment.

In terms of “at the moment”, CentOS still holds that title. After December 31, 2021, I see that title transitioning to Oracle Enterprise Linux, which would be way more ironic in my opinion. That is, assuming Rocky Linux doesn’t get off the ground to fill the void of being a community run enterprise operating system as a rebuild of RHEL proper with a 1:1 bug compatibility goal. My understanding of OEL is that it’s not just a rebuild of RHEL, but they also apply their own patch fixes to things, so it’s not a perfect 1:1, or so I’ve read. And there’s also the smaller rebuilds, such as Springdale, but I don’t see people hopping ship to those. Fedora Server is a fine edition of the distribution, but there are other projects that exist today which have closer compatibility guarantees.

Fedora and its editions

Posted Dec 12, 2020 15:25 UTC (Sat) by johannbg (guest, #65743) [Link]

Fedora has become so fragmenting it's collapsing under it's weight.
To be able to run multiple edition/streams whatever you like to call it, each edition or stream has to own and maintain the entire software stack from ground up that makes up that edition and or stream that is intended for that relevant edition/streams target audience otherwise such approach will never work which is why Fedora has no other option than either to abandon this ( already failed ) experiment it's conducting and or significantly increase it's contributors and package maintainers base.


Copyright © 2020, Eklektix, Inc.
This article may be redistributed under the terms of the Creative Commons CC BY-SA 4.0 license
Comments and public postings are copyrighted by their creators.
Linux is a registered trademark of Linus Torvalds