LWN.net Logo

Garrett: Default offerings, target audiences, and the future of Fedora

Matthew Garrett argues for a clearer focus for the Fedora project. "Bluntly, if you have a well-defined goal, people are more likely to either work towards that goal or go and do something else. If you don't, people will just do whatever they want. The risk of defining that goal is that you'll lose some of your existing contributors, but the benefit is that the existing contributors will be more likely to work together rather than heading off in several different directions."
(Log in to post comments)

Garrett: Default offerings, target audiences, and the future of Fedora

Posted Aug 22, 2013 17:02 UTC (Thu) by dmitrij.ledkov (subscriber, #63320) [Link]

At times a wish Garrett would be a book writer or columnist for a widely circulated international news paper. It is always a pleasure to read his posts regardless of the topic.

Garrett: Default offerings, target audiences, and the future of Fedora

Posted Aug 23, 2013 1:21 UTC (Fri) by ncm (subscriber, #165) [Link]

That would take time away from reverse-engineering, coding, drinking, and separating Drosophilidae from their respective genitalia. And that would be tragic. That's not to say I don't have suggestions for other apparatus that might better be reverse-engineered, coding better done, beverages better imbibed, or genera better dismembered, but we are lucky to have mjg59 doing anything for us at all. Skills of such magnitude turned to a path of darkness (for indeed there are many) might well extinguish us before we can get our boots on.

Garrett: Default offerings, target audiences, and the future of Fedora

Posted Aug 23, 2013 1:32 UTC (Fri) by naptastic (subscriber, #60139) [Link]

You, sir, win all of my internets for the day.

Garrett: Default offerings, target audiences, and the future of Fedora

Posted Aug 28, 2013 17:18 UTC (Wed) by Kluge (guest, #2881) [Link]

"...separating Drosophilidae from their respective genitalia"? I thought he had been a *computational* biologist. That usually requires little genital manipulation.

Garrett: Default offerings, target audiences, and the future of Fedora

Posted Aug 28, 2013 17:25 UTC (Wed) by mjg59 (subscriber, #23239) [Link]

I was mixed computational/lab work.

Garrett: Default offerings, target audiences, and the future of Fedora

Posted Aug 26, 2013 14:10 UTC (Mon) by gerv (subscriber, #3376) [Link]

Amen to that.

Gerv

Garrett: Default offerings, target audiences, and the future of Fedora

Posted Aug 22, 2013 19:22 UTC (Thu) by AlexHudson (subscriber, #41828) [Link]

The "3 key versions" of Fedora vision is exciting and exactly what is needed; a public "this is the foundation of Fedora" statement that tells people something significant about the project.

That doesn't have to be to the detriment of the other stuff going on, because it's a positive statement (it's not a "We won't do X"). And in honesty it better reflects the status quo anyway, since the main desktop download is clearly the most important.

Garrett: Default offerings, target audiences, and the future of Fedora

Posted Aug 23, 2013 2:05 UTC (Fri) by torquay (guest, #92428) [Link]

    Offering distinct desktop, server and cloud products ...

On the surface this seems like a good way to go forward. However, due to short lifespan of Fedora's releases, the server product is rather questionable. While I don't doubt there are some people using Fedora as a server, most use cases of servers are "set it up once and don't f*ck around with it for 2, 4 or more years". Servers are meant to be a stable platform (ie. something you can rely on and build on). Servers are not meant change the foundations every 6 months. Hence when one thinks server, people go for CentOS, SL, Debian, or Ubunutu LTS. Not Fedora.

So that leaves the desktop and cloud products. What exactly is a cloud product is another question. Is it supposed to be a quasi-server that runs on AWS? Or is it something that provides cloud services? In either case, it sounds like a form of the server product.

If we end up with the only viable product as the desktop, the main backer of Fedora is not going to be happy. The often stated status quo, whether people like it or not, is that Fedora is a playpen for Red Hat, where various "experiments" are taking place. As Red Hat provides most of the resources, they get to say which direction Fedora is heading in. Red Hat makes a lion share of its money from server offerings.

If Red Hat wanted to, they could throw a huge bunch of engineers at the desktop problem, like they did with OpenStack. Alas, for various reasons there is no money to be made in the desktop.

Which brings us back to the start. For realistic political reasons, the desktop can't be the only focus for Fedora. It also has to be a server. Alas, it's pretty useless as a real server. Something has to give here.

Garrett: Default offerings, target audiences, and the future of Fedora

Posted Aug 23, 2013 3:03 UTC (Fri) by pizza (subscriber, #46) [Link]

> While I don't doubt there are some people using Fedora as a server, most use cases of servers are "set it up once and don't f*ck around with it for 2, 4 or more years". Servers are meant to be a stable platform (ie. something you can rely on and build on). Servers are not meant change the foundations every 6 months. Hence when one thinks server, people go for CentOS, SL, Debian, or Ubunutu LTS. Not Fedora.

A couple of points:

A Fedora release is fully supported with updates for N+2 releases, which equates to 13 months or so.

Secondly, there's a very good reason to go with Fedora over RHEL/CentOS/SL -- *vastly* more up-to-date software and tools (With CentOS, they're often obsolete at the time of release!) Debian and UbuntuLTS are in the same boat, though their release cadences differ.

That isn't a rhetorical problem; I was faced with this earlier this week, and while I could have gone with CentOS, the resulting frankensystem (I'd have had to replace or parallel-install updated python, php, apache, postgres, and gcc, plus a boatload of dependencies) would have been completely unsupportable.

Garrett: Default offerings, target audiences, and the future of Fedora

Posted Aug 23, 2013 12:43 UTC (Fri) by epa (subscriber, #39769) [Link]

Fixed it for you:
A Fedora release is randomly broken with updates for N+2 releases, which equates to 13 months or so.
OK, that's too snarky. But please be careful not to equate 'supported' with 'churned with new versions from upstream'. Sometimes a new upstream version is not compatible with data / config files / programs written against the previous version, so installing a seemingly innocuous update breaks things.

Unfortunately, Fedora just doesn't have the manpower to scrutinize every new upstream version, whereas RHEL for example sets a much higher bar for a new version to make it into updates, and Debian has historically tried to backport security fixes so that as little as possible can change in 'stable'.

Garrett: Default offerings, target audiences, and the future of Fedora

Posted Aug 23, 2013 15:09 UTC (Fri) by sbohrer (subscriber, #61058) [Link]

If you are running serious servers you never directly apply updates to your production systems without first testing those updates yourself on your test systems. Once you realize this fact then you quickly realize that it is OK if Fedora occasionally breaks things during an update.

I'll also point out that I've run CentOS servers and had updates "break" things so RHEL is not immune. My breakages are often in the form of performance regressions which others may not care about but even so I would never directly update a production RHEL system either.

Really in my mind it comes down to two things. First do you need support? If you do then sure run RHEL or some other supported enterprise distribution. Some places are comfortable supporting themselves and feel they can fix issues themselves or work with the community to get problems resolved.

The other question is if this is going to be a configure once and never touch server, or an actively developed system. I've always been in the latter situation where when you have developers continually developing the software to run on the servers, you will always need to be running newer packages then the ancient versions shipped in RHEL. At that point you are a cowboy running your enterprise distribution with custom kernel, gcc, python, perl...

Garrett: Default offerings, target audiences, and the future of Fedora

Posted Aug 23, 2013 15:16 UTC (Fri) by epa (subscriber, #39769) [Link]

If you are running serious servers you never directly apply updates to your production systems without first testing those updates yourself on your test systems. Once you realize this fact then you quickly realize that it is OK if Fedora occasionally breaks things during an update.
Well, it's better, but still not exactly OK. Your choice is then to install the update or deal with the pain of remaining on a superseded version of that package (which may cause updates of other packages to be blocked too, because of dependencies).

Really, not installing an updated package is not an option, unless you want to take on yourself the responsibility of reading security bulletins and patching. If you use a Linux distribution then ideally you want them to keep fixing vulnerabilities and serious bugs while at the same time preserving compatibility so you can upgrade without breaking your systems.

Garrett: Default offerings, target audiences, and the future of Fedora

Posted Aug 23, 2013 18:01 UTC (Fri) by drag (subscriber, #31333) [Link]

Depends on resources also.

A lot of applications on our servers won't really have a dedicated team of programmers supporting it. The team will keep a eye on problems, but besides that it is a significant waste of resources to upgrade things every six months or whatever if you don't have to do that. Their time is much better spent on other things.

Garrett: Default offerings, target audiences, and the future of Fedora

Posted Aug 23, 2013 19:34 UTC (Fri) by epa (subscriber, #39769) [Link]

My point wasn't so much about the reinstall every 12 months - that is widely known - but update churn within a single Fedora version.

Garrett: Default offerings, target audiences, and the future of Fedora

Posted Aug 24, 2013 2:12 UTC (Sat) by rahulsundaram (subscriber, #21946) [Link]

yum has the ability to cherry pick just security updates. For a server the packages changes arent much esp for one release prior to current

Garrett: Default offerings, target audiences, and the future of Fedora

Posted Aug 25, 2013 13:01 UTC (Sun) by fuhchee (subscriber, #40059) [Link]

"I'd have had to replace or parallel-install updated python, php, apache,...."

Look into the recent Red Hat Software Collections / Developer Toolset add-ons for RHEL.

Garrett: Default offerings, target audiences, and the future of Fedora

Posted Aug 23, 2013 3:31 UTC (Fri) by pizza (subscriber, #46) [Link]

> Which brings us back to the start. For realistic political reasons, the desktop can't be the only focus for Fedora. It also has to be a server. Alas, it's pretty useless as a real server. Something has to give here.

Actually, Fedora makes a really, really, really good server. But you and I may have different expectations on what makes something a good server. You value unchanging-over-a-long-time stability, while I value continually-improving capability enabling me to do more.

My needs change over time; my servers have to change to meet those needs.

If Fedora has one overriding goal/strength, it's that it consistently provides the latest-and-greatest F/OSS libraries, development tools and environments. On top of that continually-evolving foundation/infrastructure is built the desktop, server, and everything else they ship.

Why settle for anything less than the best? Or put another way, why deliberately hobble yourself?

Garrett: Default offerings, target audiences, and the future of Fedora

Posted Aug 23, 2013 4:40 UTC (Fri) by torquay (guest, #92428) [Link]

    You value unchanging-over-a-long-time stability, while I value continually-improving capability enabling me to do more.

Sure, I understand your point. However, you're in effect tearing down a server every 6 to 12 months, and building a new one. This is too much for most people.

    Why settle for anything less than the best? Or put another way, why deliberately hobble yourself?

This in effect reduces to the often encountered "old-and-stable vs new-and-unstable" problem. To get the latest software one needs to upgrade the entire distribution. This is too disruptive in most cases, apart from a small niche of users with time and energy to spare.

How about we look at this from a different point of view. Fedora moves too fast to be a useful server to most people, while CentOS et al become outdated rather quickly. Where's the middle ground?

Why not remove the need to upgrade everything, by doing a stable server where one can officially parallel install various versions of software? One example is Python2 and Python3, but it would be nice to extend this to other packages. RHEL already does some packages along these lines, as that's what its customers want.

The parallel installation idea can be extended even further. Over time, version N-2 (or N-1) of a given package can be declared as obsolete, and an explicit configuration upgrade mechanism is provided to convert the software's configuration files (eg. web server config) to version N-1 (or N). The platform is hence moved along (kept fresh), but in a much less disruptive way.

While the above may sound a bit like a rolling distribution, it is a separate and distinct idea. In a rolling distribution the packages are simply replaced (only one version exists at a time), while in a parallel installation setup various versions exist at the same time.

This may all sound technically elegant, but it does require a bit more work. It's also not exactly in line with Red Hat's interests, as a stable platform would compete with the RHEL offering. As such, a more suitable place to implement this idea would be Debian, which is already barking in that direction anyway: the backports repository.

Garrett: Default offerings, target audiences, and the future of Fedora

Posted Aug 23, 2013 6:43 UTC (Fri) by maxiaojun (subscriber, #91482) [Link]

> The size and expertise of the Fedora community make Fedora an ideal incubator and proving ground for features that eventually get incorporated into Red Hat Enterprise Linux. To meet the quality and reliability requirements that make Red Hat Enterprise Linux the choice for mission-critical applications, Red Hat puts Red Hat Enterprise Linux through its own set of tests and quality assurance (QA) processes that are separate and distinct from those of Fedora.

Source: http://www.redhat.com/resourcelibrary/articles/relationsh...

Garrett: Default offerings, target audiences, and the future of Fedora

Posted Aug 23, 2013 9:11 UTC (Fri) by misc (subscriber, #73730) [Link]

> This may all sound technically elegant, but it does require a bit more
> work. It's also not exactly in line with Red Hat's interests, as a
> stable platform would compete with the RHEL offering

If enough people would want to do it, these people would make it happen. There is nothing besides lack of volunteer that prevent anyone from doing this outside of Fedora. The tools to set a distribution are widely avliable, there is even infrastructure like OBS if people do not want to setup a project.

It didn't happened because people spend more time posting comment than writing code. And it happened in Debian because someone did it.

And the mere fact that RHEL provides SCL without being it offered in Fedora show that Fedora is not the playpen of RHEL as people seems to think.

There is technical concerns due to complexity and supportability to offer backports. Suddenly, some of your test cases are doubled, as does your security update workload. And that's when you only have 1 stack. Imagine now the mix when you have a lot more. Sure, you end with something like PPA, and we all know how supportable they are, and how it always end well...

Debian, partially due to its large focus, take a lot of time to release. Adding more packages and everything just increase the problem because the time spent fixing backport is time not spent fixing sid or not working on something else, despites a constantly increasing set of volunteers. That's ok to choose to be like this, and i am glad Debian is here for that, but not all project have the resources, not all projects aim to be everything for everybody, and some project prefer for example to not disable security feature to make uucp work.

Garrett: Default offerings, target audiences, and the future of Fedora

Posted Aug 23, 2013 15:29 UTC (Fri) by dwmw2 (subscriber, #2063) [Link]

"Sure, I understand your point. However, you're in effect tearing down a server every 6 to 12 months, and building a new one. This is too much for most people."
Nah. I just run 'yum --releasever=$N+2 upgrade' every year or so. I do this on headless remote machines where a failure to boot would be a real PITA. I rarely have issues — either with booting, or with services failing to work after the upgrade. There are some updates to configuration required occasionally, but it's not much work.

Garrett: Default offerings, target audiences, and the future of Fedora

Posted Aug 23, 2013 17:50 UTC (Fri) by drag (subscriber, #31333) [Link]

Nowadays I find it's a lot easier just to blow away any 'server' OS I happen to be working with and just rely on puppet or whatnot to set everything in motion.

For CentOS I'll do a upgrade between minor releases, but not major.

Garrett: Default offerings, target audiences, and the future of Fedora

Posted Aug 24, 2013 9:08 UTC (Sat) by justincormack (subscriber, #70439) [Link]

Indeed, the "cloud server" model does not involve long lived servers, so this is a better target than the "traditional" server install.

Garrett: Default offerings, target audiences, and the future of Fedora

Posted Aug 25, 2013 13:45 UTC (Sun) by kleptog (subscriber, #1183) [Link]

That works for one server, but when you have a farm of 200+ servers that's not really practical anymore. Updating once a year means upgrading a machine a day. That means your "breaks one in 10 times" becomes a bi-weekly issue. There are SLAs which make that rather unattractive.

The nice thing about Debian is that its release cycle approaches the hardware depreciation cycle, so around the time you need to think about upgrading you're replacing the whole machine anyway. Then it comes back, you reimage it with the latest version and repurpose it for something else.

As pointed out elsewhere in this thread, puppet can paper over a lot of differences, but you have to keep the number of possibilities low or the complexity will kill you.

Garrett: Default offerings, target audiences, and the future of Fedora

Posted Aug 23, 2013 16:27 UTC (Fri) by smoogen (subscriber, #97) [Link]

> If Red Hat wanted to, they could throw a huge bunch of engineers at the
> desktop problem, like they did with OpenStack. Alas, for various reasons
> there is no money to be made in the desktop.

It would have to be a LOT of money as Red Hat with all of its 5000+ employees still has less people than either Apple or Microsoft have working on their desktop offerings. Desktops are in many ways much more complicated than something like OpenStack because users interact with them more closely and find all these great ways to break things that no one thought of before the user says "Well that is the obvious thing anyone would do!"

Why by itself?

Posted Aug 23, 2013 17:18 UTC (Fri) by david.a.wheeler (subscriber, #72896) [Link]

Red Hat doesn't normally develop software in splendid isolation. All Linux distributions build on the work done by others. In fact, most of the work is done by others.

I don't see why this should be any different. Sure, Red Hat has fewer people inside itself, but there sure are a lot of other people. I use Fedora as a desktop; it works well.

Why by itself?

Posted Aug 23, 2013 17:33 UTC (Fri) by smoogen (subscriber, #97) [Link]

The original comment was that Red Hat could throw a lot of engineers at the desktop like they did OpenStack. Red Hat has already thrown a lot of engineers at NOME/KDE/X/etc for many years but to many it is never enough. Because the desktop they want is not the desktop we use. They want a desktop which is basically unified from the bottom up and is stable enough that other people can write apps and not worry about compiling 30 different versions for every variant distribution.

However the number that is required to make a basic desktop with a unified API, documentation, etc that Apple and Microsoft provide takes a LOT of manpower dedicated to doing just that. People working on it are not scratching their own itch, not allowed to rewrite API's because they realized they made a mistake 4 weeks ago, etc etc.

Why by itself?

Posted Aug 24, 2013 2:22 UTC (Sat) by torquay (guest, #92428) [Link]

    However the number that is required to make a basic desktop with a unified API, documentation, etc that Apple and Microsoft provide takes a LOT of manpower dedicated to doing just that. People working on it are not scratching their own itch, not allowed to rewrite API's because they realized they made a mistake 4 weeks ago, etc etc.
Yes, the lack of API stability for over the whole desktop Linux platform is a big problem. Another issue is the software distribution mechanism, where, for a given application, we have separate packages for each distro. Ridiculous. I'm hoping that Apps for GNOME desktops can address both of these problems.

Garrett: Default offerings, target audiences, and the future of Fedora

Posted Aug 24, 2013 15:31 UTC (Sat) by mattdm (guest, #18) [Link]

> However, due to short lifespan of Fedora's releases, the server product is rather questionable. While I don't doubt there are some people using Fedora as a server, most use cases of servers are "set it up once and don't f*ck around with it for 2, 4 or more years". Servers are meant to be a stable platform (ie. something you can rely on and build on). Servers are not meant change the foundations every 6 months. Hence when one thinks server, people go for CentOS, SL, Debian, or Ubunutu LTS. Not Fedora.

So, a longer lifespan isn't off the table. It's not part of the initial proposal but it may be that the working group developing the Fedora Server product comes back saying that this is essential. There is another way, though: making it so the server can be updated with minimal disruption to software running on top of it. We'll have to see what's best.

> What exactly is a cloud product is another question. Is it supposed to be a quasi-server that runs on AWS? Or is it something that provides cloud services? In either case, it sounds like a form of the server product.

It may be a form of the server product, especially initially, but there's room for significant divergence as we go forward. I'm very interested in exploring the concepts that CoreOS is pioneering -- very lightweight environment on which a containerized application space runs. Some cloud users may want to take physical servers to VMs and then those VMs to running in cloud environments, but still as basically the same kind of systems we ran in the 1990s. For this, we may actually want to also make Fedora Server images available for EC2 and OpenStack and etc.; this frees up Fedora Cloud to be more innovative.

Garrett: Default offerings, target audiences, and the future of Fedora

Posted Aug 23, 2013 12:39 UTC (Fri) by rnp (subscriber, #50691) [Link]

I agree with Garrett. And the main the reason i am using Archlinux is directly on its website frontpage:

"You've reached the website for Arch Linux, a lightweight and flexible Linux® distribution that tries to Keep It Simple."

Garrett: Default offerings, target audiences, and the future of Fedora

Posted Aug 29, 2013 19:06 UTC (Thu) by vonbrand (subscriber, #4458) [Link]

The lengths to which some people go to delude themselves just astonishes me time and again... there is nothing simple in a system that sports more than a hundred million lines of code. And a "system with simple configuration" has been shown time and again that it works for your only workstation, get half a dozen to oversee and you start asking for a complex, automated, standarized setup.

Copyright © 2013, Eklektix, Inc.
Comments and public postings are copyrighted by their creators.
Linux is a registered trademark of Linus Torvalds