GNOME is not the default for Fedora Workstation

We recently had a Fedora AMA where one of the questions asked is why GNOME is the default desktop for Fedora Workstation. In the AMA we answered why GNOME had been chosen for Fedora Workstation, but we didn’t challenge the underlying assumption built into the way the question was asked, and the answer to that assumption is that it isn’t the default. What I mean with this is that Fedora Workstation isn’t a box of parts, where you have default options that can be replaced, its a carefully procured and assembled operating system aimed at developers, sysadmins and makers in general. If you replace one or more parts of it, then it stops being Fedora Workstation and starts being ‘build your own operating system OS’. There is nothing wrong with wanting to or finding it interesting to build your own operating systems, I think a lot of us initially got into Linux due to enjoying doing that. And the Fedora project provides a lot of great infrastructure for people who want to themselves or through teaming up with others build their own operating systems, which is why Fedora has so many spins and variants available.
The Fedora Workstation project is something we made using those tools and it has been tested and developed as an integrated whole, not as a collection of interchangeable components. The Fedora Workstation project might of course over time replace certain parts with other parts over time, like how we are migrating from X.org to Wayland. But at some point we are going to drop standalone X.org support and only support X applications through XWayland. But that is not the same as if each of our users individually did the same. And while it might be technically possible for a skilled users to still get things moved back onto X for some time after we make the formal deprecation, the fact is that you would no longer be using ‘Fedora Workstation’. You be using a homebrew OS that contains parts taken from Fedora Workstation.

So why am I making this distinction? To be crystal clear, it is not to hate on you for wanting to assemble your own OS, in fact we love having anyone with that passion as part of the Fedora community. I would of course love for you to share our vision and join the Fedora Workstation effort, but the same is true for all the other spins and variant communities we have within the Fedora community too. No the reason is that we have a very specific goal of creating a stable and well working experience for our users with Fedora Workstation and one of the ways we achieve this is by having a tightly integrated operating system that we test and develop as a whole. Because that is the operating system we as the Fedora Workstation project want to make. We believe that doing anything else creates an impossible QA matrix, because if you tell people that ‘hey, any part of this OS is replaceable and should still work’ you have essentially created a testing matrix for yourself of infinite size. And while as software engineers I am sure many of us find experiments like ‘wonder if I can get Fedora Workstation running on a BSD kernel’ or ‘I wonder if I can make it work if I replace glibc with Bionic‘ fun and interesting, I am equally sure we all also realize what once we do that we are in self support territory and that Fedora Workstation or any other OS you use as your starting point can’t not be blamed if your system stops working very well. And replacing such a core thing as the desktop is no different to those other examples.

Having been in the game of trying to provide a high quality desktop experience both commercially in the form of RHEL Workstation and through our community efforts around Fedora Workstation I have seen and experienced first hand the problems that the mindset of interchangeable desktop creates. For instance before we switched to the Fedora Workstation branding and it was all just ‘Fedora’ I experienced reviewers complaining about missing features, features had actually spent serious effort implementing, because the reviewer decided to review a different spin of Fedora than the GNOME one. Other cases I remember are of customers trying to fix a problem by switching desktops, only to discover that while the initial issue they wanted fix got resolved by the switch they now got a new batch of issues that was equally problematic for them. And we where left trying to figure out if we should try to fix the original problem, the new ones or maybe the problems reported by users of a third desktop option. We also have had cases of users who just like the reviewer mentioned earlier, assumed something was broken or missing because they where using a different desktop than the one where the feature was added. And at the same time trying to add every feature everywhere would dilute our limited development resources so much that it made us move slow and not have the resources to focus on getting ready for major changes in the hardware landscape for instance.
So for RHEL we now only offer GNOME as the desktop and the same is true in Fedora Workstation, and that is not because we don’t understand that people enjoy experimenting with other desktops, but because it allows us to work with our customers and users and hardware partners on fixing the issues they have with our operating system, because it is a clearly defined entity, and adding the features they need going forward and properly support the hardware they are using, as opposed to spreading ourselves to thin that we just run around putting on band-aids for the problems reported.
And in the longer run I actually believe this approach benefits those of you who want to build your own OS to, or use an OS built by another team around a different set of technologies, because while the improvements might come in a bit later for you, the work we now have the ability to undertake due to having a clear focus, like our work on adding HiDPI support, getting Wayland ready for desktop use or enabling Thunderbolt support in Linux, makes it a lot easier for these other projects to eventually add support for these things too.

Update: Adam Jacksons oft quoted response to the old ‘linux is about choice meme’ is also a required reading for anyone wanting a high quality operating system

18 thoughts on “GNOME is not the default for Fedora Workstation

  1. I don’t really see why using other DEs would be “experimenting.” I use KDE on a daily basis, and I’m not updating systems at work to RHEL8 until I’ve created a KDE install image for RHEL8, using the packages from EPEL. It’s not true to say that Fedora Workstation doesn’t offer other DEs either, you can easily install any of the other supported DEs in Fedora.

    • Hi, I was using the term experimenting when referring to people replacing parts of the OS with something else. So in the context of this article installing KDE on top of Fedora Workstation is experimenting and thus also installing GNOME on top of the Fedora KDE spin is also experimenting. And you can install a lot of stuff, and I am not telling anyone not to, but you quickly leave the tested and attempted supported setup when you do. Fedora provides a lot of building pieces and lets you build a lot of stuff, but obviously not all the combinations of things are tested and verified to work together or work as well together. And sometimes there are scripts and other types of configuration that doesn’t happen automatically when you install stuff manually. So for instance if you install the KDE spin of Fedora and install GNOME on it, it is a) no longer the KDE spin, but b) it isn’t Fedora Workstation either. Instead its something of your own creation that might look a lot like Fedora Workstation, but your method for creating it has left it in a unknowable state to us.

  2. As a KDE user, I think it’s a bummer. But as an engineer and manager of software engineers, I totally understand the reasoning behind it.

  3. Every package in the standard Fedora repos are part of the same operating system. That’s why they’re packaged, they’re interoperable and compiled against the same versions of libraries so that their interoperability is stable. None of the spins, including the GNOME spin, referred to as Workstation above, are their own thing. They’re just the install point and base set of packages from the repository. The OS itself, in this case, would be Fedora. “Workstation” is a minor exception to the norm here, in that there are firewall rules that get installed when using it that otherwise don’t exist, which effectively disable the firewall. Other than that, it’s the same Fedora I’m running now, just with a different set of default packages.

    Now, there are things like Fedora Silverblue, Fedora CoreOS and these other niche projects which fall under the Fedora umbrella, but don’t actually make use of Fedora. This is what’s commonly referred to when Fedora is mentioned as something like an “OS factory”, as the council worded it.

  4. If Fedora Workstation is an OS and the KDE spin are in fact different operating systems they should use different repos or the installation of unsupported packages shoud not be allowed. At least the user should be warned if they are making frankenfedora just by using *the default package manager*.

    Btw, I wouldn’t really care about the DE if it were usable without installing a bunch of extensions which, guess what, are unsupported and may break at each release.
    All of that just to have it look and behave a little more like the other 99% of the desktops. But that’s a whole different story.

  5. Am I correct to assume that if I have a minimum install of Fedora without DE. It can become Gnome workstation or whatever spin? I am assuming this because I expect the rpm to be the same.
    Another way to put it is maybe: Is gnome-shell packaged in a way that gnome devs are comfortable to be installed on any Fedora?

    You should know that it’s normal for linux applications to require specific/or newer version of glibc, kernel and etc. Requiring specific version of external projects is nothing to be ashamed of. Focusing on one distribution is a natural choice in the most Linux application development. When some questions like not working on this distro comes, you just tell them all the dependencies with versions. There are so many projects that work only on ubuntu for example. Fedora is a good choice because every package is up to date, upgrading packages is easier than downgrading.

  6. So, Fedora linux,
    1) is not a community project, it’s just Red Hat engineer’s project. A beta of RHEL.
    2) whether there is any user or not, the default desktop will be that as decided by Red Hat.
    3) it’s for sysadmins more than general users.

    Those are the reasons, why it’s till now suffering from 3rd party support & general user community, unlike some other Linux based projects. And if there is no user there will be no developers also, unless you keep up spreading MONEY ;)

    If I’m happy with Microsoft or Apple’s strategies, then why I will look into Red Hat or fedora ??

    P.S: few years back I tried very hard for more than a year to make fedora my home with GNOME3+systemD+…, but I failed, and till now seeing no reason to come back here.

    Who said you to compete with Microsoft or Apple or Google and make Linux number 1 ? Even after 10yrs of being confident of your strategy your system as Desktop for general users is in deplorable condition.

    Ubuntu Desktop (with modified GNOME3) is also in same situation, at least they have good 3rd party support due to some historical reason. The Chicken & Egg problem.

  7. “Am I correct to assume that if I have a minimum install of Fedora without DE. It can become Gnome workstation or whatever spin? I am assuming this because I expect the rpm to be the same.
    Another way to put it is maybe: Is gnome-shell packaged in a way that gnome devs are comfortable to be installed on any Fedora?”

    No, that is not correct because Fedora Workstation has specific settings for things like the firewall that are different in the other editions.

  8. I’m till now confused, whether I should call it fedora OS or GNOME3 OS or systemD OS !!

    The situation is getting more puzzling day after day.

  9. Then why those specific settings are not installable?
    By the way, the firewall should not depend on the DE, so…

    I think Red Hat cares very little about the desktop, as RHEL and CentOS are *not meant for desktop usage*.
    Yes there’s a DE, and many people love it, but that’s not their main focus. And *it shows.*
    Not just because of the many UI/UX insane choices, but because *it took Canonical to step in* for Gnome to become once again fast and reactive.

    PS: I’ve read the reasoning behind those choices, but when designing something you don’t disrupt the user’s workflow.
    Especially you don’t remove things that are enstablished, literally pillars of the ui, in the other 99+% of the desktops.
    That is if you actually care, of course

  10. > No, that is not correct because Fedora Workstation has specific settings for things like the firewall that are different in the other editions.

    Let’s not behave like a noob. Firewall settings and gnome-shell should have nothing to with it. gnome-shell rpm should be packaged in a way that it works in any Fedora, if not Gnome devs are doing something wrong.

  11. yena: You are missing the whole point of Fedora Workstation. Maybe you should read the blog post again?

  12. Self-support territory? There is official support available for Fedora? Where do I sign up for it? What are the service-level agreements?

  13. Just do it the openSUSE way. Uncheck all boxes with DE in installer and leave user to make the choice ;-)

  14. What I really don’t like about this post is that it shows just how much Redhat has taken control of what was once an Operating System of Freedom.

    This is a post on gnome.org that basically states “Gnome Controls Fedora”. The Gall of this post to say “Gnome isn’t the default, it IS Fedora” right here on gnome.org says a lot about how far we’ve fallen from the goals of freedesktop.org and implementing interoperable standards.

    Redhat now has their own Distributions (RHEL/Fedora), Desktop (Gnome), Init/Launchd clone (SystemD), their own Display server (Wayland). Each of these projects can speak for the other projects because they are all the same. Redhat.

    This post really shows just how far it has come. All of these projects are now lead by Redhat’s own grab for control and consider themselves all the “same” so they can speak for each other. You have freedom of choice as long as it’s Redhat’s choice.

  15. Thanks Christian for your response to the Fedora AMA question. The focus on creating a stable and well working experience is apparent in Fedora 32 Workstation, and it benefits other editions/spins as well.

    I also want to say that, as a member of the Fedora community, I appreciate the contributions that Canonical, Red Hat, and other companies make to upstream projects. Let’s keep making progress!

  16. What this is really doing, I think, is drawing bounds around the definition of the Fedora brand name. You are still completely free to start with Fedora and plug in whatever you want — the position stated here is just that you shouldn’t call that Fedora, and you shouldn’t expect a lot of help from the Fedora community unless you can replicate your issue on a stock Fedora build. Remove your custom carburator before bringing your car in for warranty service.

    Which is not a completely unreasonable line to draw, from the “we can’t effectively support N^N^N different configurations” point of view.

  17. … or at least, the distro named Fedora Workstation is by definition a Gnome distro. I’m told the distro with Mate reports itself as fedora-release-matecompiz rather than fedora-release-workstation, so this distinction may already exist.

Comments are closed.