The old hat that's still new

Distro Walk – Fedora

Article from Issue 275/2023
Author(s):

Matthew Miller, Fedora Project Leader, discusses Fedora's relationship with Red Hat and its role in the Linux community.

The Fedora Project [1] was started in 2003 as the community face of the newly established Red Hat Enterprise Linux (RHEL). Although sometimes dismissed as no more than a beta release for RHEL, Fedora quickly became a popular community choice as well, with numerous spins and builds. Twenty years later, it is also one of the main sources for numerous major commercial distributions, including RHEL, CentOS Stream, Rocky Linux, and AlmaLinux, as well as a dozen derivatives in its own right.

Matthew Miller has been Fedora Project Leader since 2014. As he prepared for Flock, the Fedora Project's annual conference, in Cork, Ireland, in August 2023, Miller kindly agreed to talk about the current state of Fedora.

Linux Magazine (LM): Tell us about your involvement in free software.

Matthew Miller (MM): I think my first exposure to the idea was in high school – I knew BASIC pretty well and wanted to learn more, but C compilers were expensive. A family friend gave me a copy of DJGPP, which is a port of GCC for DOS. But really, I didn't get involved until the rise of the Internet in the 90s. I grew up in Indiana, and one of my friends discovered that, having graduated from college, he no longer had access to email, Usenet, and this new "world wide web" thing. He asked me to help, and together we built a local Internet provider. We started with Windows NT – but soon hit limitations. I'd read about Linux and wanted to give it a try. So, I ordered a five-disc set of different Linux distros from the back of a magazine, and late one night, we converted one of our servers. I quickly fell in love – this was definitely better! So, we converted everything else, too.

The first disc in that set was Debian, but due to some flaw or incompatibility, that one didn't boot. The next was Slackware, so that's what we ran on for a while, but Slackware didn't have a way to upgrade an already-installed system (even for security updates), so after a while, we switched to Red Hat Linux. This eventually led to me getting involved with the Red Hat Linux beta test program (at the time, this was an invite-only restricted group), and from there to Fedora.

LM: How do Fedora and Red Hat interact?

MM: Red Hat is the Fedora Project's main sponsor and of course builds RHEL from Fedora Linux as a base (now through CentOS). Red Hat pays my salary, and I'm grateful that I therefore get to work on Fedora full time – entirely on free and open source software and with our amazing community. There are a few other folks paid mostly to work on Fedora, but most Red Hatters you see around the project have product-related primary jobs. They may contribute to Fedora as part of developing something wanted for a future Red Hat product – or, like anyone else, for their own interests.

Red Hat doesn't take a heavy hand in trying to tell Fedora what to do – in all my nine years as Fedora Project Leader, I've never gotten any kind of "make Fedora do this!" directive. I've gotten occasional polite requests from the marketing side of the business – especially at the very dawn of the project, I think people were quite concerned that some customers might not understand the difference between how Red Hat supports Fedora and the actual Red Hat product portfolio. But I don't think that's a real worry these days.

So, when someone in Red Hat wants something in Fedora, they go through the same process as anyone else.

LM: How has Fedora been affected by IBM's purchase of Red Hat and by the end of CentOS?

MM: Red Hat was a publicly-traded company before IBM, and in practice I don't see IBM as much different from shareholders or a board of directors – Red Hat still operates as a functionally completely separate company with our own identity and decision-making. I sometimes joke that it'd be easy to blame IBM for everything that happens that I don't like, but that's really not how it is. If anything, I'd love for more IBMers to show up more in the Fedora project, and for IBM to directly contribute more.

However, I don't think "the end of CentOS" is the right framing. When Red Hat brought CentOS into the company almost a decade ago, there was a lot of work to move that project from just a close-knit team with pretty tightly-closed processes to a more open one. For example, before then – kind of like the old Red Hat Linux beta program, really – CentOS development versions were only available to a select few, until it was declared ready and released. Red Hat really wanted to grow a contributor community around the project, but never really figured out how, or never hit the right fortunate combination. A big user community, definitely – but not really community development. There wasn't a clear path from CentOS to RHEL development, and trying to fit Fedora with that made it even more messy.

So that really wasn't working. CentOS Stream is a much better model, and there's now a clear flow from Fedora Linux to CentOS Stream and into RHEL – from community-driven to product. I know people are cynical about the end of traditional CentOS Linux, but as I see it, this really is a logical evolution towards more openness. We no longer resort to literal M.C. Escher drawings to try to explain the relationship. Instead of overlap, confusion, and almost-accidental competition, we're set up for cooperation. And, in doing this, RHEL is more transparent and open than ever before.

The Fedora Project's mission is to build a platform that's both useful for our own users and a great base to build on. I think it's really exciting that Amazon decided to base their own commercial distribution on Fedora Linux directly – that's really where you can do the most exciting things. But, if you want to make something slower-moving, more cautious, CentOS Stream is also an interesting place to engage.

LM: The last few years have seen the rise of immutable operating systems, which cannot be modified by users or applications, are updated all at once, and isolate each application, often through containers. Currently, Fedora develops three: Silverblue, Kinoite, and Sericea. What are the advantages of immutable desktops, and why does Fedora develop them?

MM: Our immutable desktop work came out of CoreOS – a server- and cloud-oriented flavor of Fedora Linux that is based on work from Red Hat's Project Atomic and the original CoreOS distribution. In a traditional Linux distribution, each system consists of an assemblage of software packages put together on that very system. This means that even when you want to have identical systems, there can be subtle – or not so subtle – differences. With CoreOS, we use a system that puts together package configurations centrally, and every system runs some checkpointed version of that, so you can verify that they're actually really the same.

In this model, rather than adding more packages to run workloads, you use containers for your actual applications. A lot of people liked this idea so much that they wanted to extend it to the desktop, which is how Fedora Silverblue was born. Same basic concept: a central definition of the main operating system and then containers (or Flatpaks) for your applications.

This makes it a lot easier to do quality engineering and support – I think that's really the main thing. There are also some other nice effects: System updates happen in the background and apply instantly when you reboot, and if there is a problem, you can roll back. In fact, if there's a problem and you're not sure exactly when it started, you can use a technique called "bisection" to quickly find exactly the update that introduced the issue.

LM: The Free Software Foundation (FSF) critiques Fedora [2] with:

"Fedora does have a clear policy about what can be included in the distribution, and it seems to be followed carefully. The policy requires that most software and all fonts be available under a free license, but makes an exception for certain kinds of nonfree firmware. Unfortunately, the decision to allow that firmware in the policy keeps Fedora from meeting the free system distribution guidelines."

How would you respond?

MM: In an ideal world, all software – and hardware – would be free and open source. Unfortunately, we're far from that world. Computers today are very complex and actually made up of lots of little components which are themselves little special-purpose computers. To function, these require their own software – it doesn't run on the main CPU but is loaded into the devices. This is "firmware." Even if you built it yourself from components, most computers today require at least some such loadable firmware, and that usually comes from the device vendors in the form of binary blobs – not open at all. To get a mainstream consumer laptop running, there's no choice.

There are a few distributions that meet the FSF's definition of a free distribution, but they work on only very select hardware. In Fedora, we require everything in the operating system itself to be free and open source, but we allow non-open source firmware files (as long as they are legally redistributable). If we didn't, Fedora Linux would only be accessible to really dedicated niche hobbyists – and even those folks would probably have to forgo a lot of functionality. We've chosen to function this way because we believe it allows free and open source software to make a real world impact it just couldn't otherwise.

(As an aside – much of the hardware that is sometimes "blessed" as not requiring binary-blob firmware actually has such firmware, just preloaded and inaccessible. Or, it may even be represented in a custom chip implementing specific algorithms. The FSF, as I understand it, takes the position that this paradoxically makes this hardware more free. I really don't think it does. Really, that's a line drawn for convenience, and we simply choose to draw ours in a different place.)

LM: How is Fedora governed?

MM: Our top-level leadership and governance body is the Fedora Council. We have a mix of hired roles (like mine), community-wide elected seats, and positions filled by selection of various other teams. We make decisions by a consensus process, which means that everyone's voice must be heard – we don't have majority-vote decisions. Because Fedora is so big, we have a lot of different committees as well. Technical decisions are made by an all-elected steering committee, and we have a similar body for our outreach, user support, and marketing efforts.

LM: Fedora has the reputation for being an early user of new applications and software. Is this a stated goal? How does it affect development?

MM: Yeah, this is absolutely a goal! We've identified our core values as "Friends, Freedom, Features, First" – and this commitment to innovation is First. We want to make sure that our software is actually functional and useful and available to a general audience, so we try to avoid the so-called "bleeding edge," but we want to bring all of the amazing ideas and work in the whole world of free and open source software – and all of those Features – to users as soon as they're ready.

We've found that a six-month release cycle is a good way to do that. If we made it longer than that, the jump between releases would be large and the integration process a lot more involved. (We know for sure, because we see Red Hat do that for RHEL.) Likewise, we don't try to do long-term maintenance, because that's really a huge amount of work that would hold us back.

Again, though, we want this to really be consumable by regular folks, so each release has a 13-month life cycle. That means that you don't need to update twice a year. You can wait until it's convenient for you, even skipping a release if you like.

LM: Does Fedora have any unique standard applications?

MM: We try not to! Some Linux distributions are really showcases for a particular idea about a desktop environment or a coherent set of utilities and applications. In fact, those are often downstreams of a "base" distribution like Fedora Linux or Debian. We see that as more our role: If you have something unique and interesting you'd like to show off, you don't need to reinvent and build the whole OS. You can just focus on the part you care about and work with the rest of our community for everything else.

LM: Name at least three reasons why a user might choose Fedora?

MM:

  1. Our OS is built by a growing community of users and contributors. Anyone can join and choose to contribute – to make it better, to network and make friends, or just for fun. Getting involved is not just for software engineers – we need writers, designers, people with organizational skills, communicators, artists, and more. Even just by using Fedora Linux, you become an important part of this collaborative effort.
  2. All of the software in Fedora Linux is free and open source – you can do what you like with it and share it with your friends. Plenty of software under restrictive licenses works on Fedora Linux (and some of that is easily available from third-party sources like Flathub – for example, you can install Steam that way without a fuss), but you know what you're getting and can make your own choices.
  3. Fedora Linux is also incredibly flexible! We have many different editions and spins for different use cases, support lots of different hardware, and include a huge repository of software that all works together.

LM: What can you say about Fedora's future directions?

MM: In the past few years, we've seen a lot of growth and interest from new audiences and new people who are eager to get involved. We aim to double our number of contributors within the next five years. As any tech journalist knows, the future is always surprising – we don't know what will be hot in 2030, but we know that our community will be ready for whatever that is.

The Author

Bruce Byfield is a computer journalist and a freelance writer and editor specializing in free and open source software. In addition to his writing projects, he also teaches live and e-learning courses. In his spare time, Bruce writes about Northwest Coast art (http://brucebyfield.wordpress.com). He is also co-founder of Prentice Pieces, a blog about writing and fantasy at https://prenticepieces.com/.

Buy this article as PDF

Express-Checkout as PDF
Price $2.95
(incl. VAT)

Buy Linux Magazine

SINGLE ISSUES
 
SUBSCRIPTIONS
 
TABLET & SMARTPHONE APPS
Get it on Google Play

US / Canada

Get it on Google Play

UK / Australia

Related content

comments powered by Disqus
Subscribe to our Linux Newsletters
Find Linux and Open Source Jobs
Subscribe to our ADMIN Newsletters

Support Our Work

Linux Magazine content is made possible with support from readers like you. Please consider contributing when you’ve found an article to be beneficial.

Learn More

News