Saturday, October 14, 2006

more about Fedora

In a comment on a previous blog entry I was described as an active Fedora advocate, I don't think that is an accurate description. I advocate it to appropriate people, which is mostly non-programmers - but as I mentioned that means a larger proportion of the population than to whom I can advocate Debian. It's not that I'm trying to advocate Fedora, just that it fills a need for many people. I believe that the term Fedora advocate means someone has an objective of increasing the use and to use Fedora, I don't have such an objective. I am a Linux advocate, a Free Software advocate, and sometimes a Unix advocate (Unix meaning the entire family of Unix-like operating systems). Merely promoting something does not make you an advocate for it. I don't think of myself as a Debian advocate at this time, but as I am a Debian developer this may change.

It seems that the people who run the Fedora Planet think that my blog has suitable Fedora content, it's been added to that planet. Also the Fedora Planet appears to be running an older version of the Planet software as it has the same problem with my blog that Debian Planet had before the upgrade.

Now on the issue of gratis vs libre: As I am not a Red Hat employee I can't maintain a kernel-xen-nopae package and give it the same status as the kernel-xen package. Even when I was a Red Hat employee I couldn't have done that - it would require some amount of management approval. I believe that this fundamentally makes Fedora less of a libre distribution. There is no room in Fedora for someone who is an upstream developer and who just wants to maintain their own package. There is Fedora-Extras, but that has a second-class status. Only Red Hat employees can maintain packages in Fedora Core. This makes Fedora fundamentally less libre than Debian. I am not trying to suggest that Red Hat change things in this regard, I believe that Fedora is meeting all it's goals and that making Fedora as libre as Debian is not possible given the goals of making a profit on selling support of RHEL.

Chris made a good point. I also believe that MP3 codecs should not be in Debian/main. But I believe that people making mistakes about some issues is not a factor in judging the entire project. I believe that Debian is more libre although some bad decisions were made - largely due to lack of overall management. Fedora has hierarchical management, so when the legal team declares that some software can not be distributed then it gets removed without debate. I guess I could propose a GR to exclude MP3 codecs from main.

Also it should be noted that RHEL Extras has some of this software that is not in Fedora (RealPlayer for example). The Red Hat legal advice was that MP3 codecs need a license, so they ship a licensed version in their commercial distribution. This is the right thing to do for their customers (it's handy to have and I'm sure that they get a good deal by paying license fees for all their customers) and removing such things from Fedora is the right way to offer a gratis product without unreasonable legal liability.

Naturally Fedora is much more libre than any secret-source OS. Every user has the option of downloading the Fedora source and recompiling it as they wish. I could compile Fedora with a Xen kernel that runs on my hardware and with SE Linux policy that is more restrictive than that which Fedora currently has. I could build custom Fedora install CDs to install things the way I want (which I considered doing when I worked for Red Hat). But the liberty to fork a project does not compare to the liberty to join it, and the liberty to create your own packages in extras does not compare to the liberty to add your own packages that do things differently to the default package.

There are of course positive and negative aspects to this. I started work on SE Linux in Debian in 2001. In 2003 I joined Red Hat to work on SE Linux, in Red Hat I was not the only person dedicated to SE Linux work and other people spent part of their time working on it. The SE Linux work in Red Hat soon eclipsed that of Debian because there was management support. There was no possibility for a package maintainer to refuse to fix a bug that affected SE Linux simply because they didn't care for it. The positive side of this is that the SE Linux work proceeded quickly and efficiently. The negative side of this is that things which don't have management support don't appear in Fedora Core. Exim is a fine MTA but is not in Fedora Core. Some people think that AppArmor is a better option than SE Linux, they are wrong - but in Debian any developer has the option to add AppArmor support and neither I nor any other DD can prevent them. The libre nature of Debian means that as long as basic technical criteria are met DDs can add any package that they wish to the distribution.

These issues however are all related to people who are actively involved in Free Software development. For a typical Free Software user it often doesn't make much difference, until of course your favourite program doesn't get management approval to appear in Fedora Core. But the counter argument is that the quality of some of the >10,000 packages in Debian is not so high. You can install a Fedora Core package and have a reasonable expectation about how well it works, but Debian packages are sometimes rather experimental.

I also don't believe that Debian is a very functional Democracy. Some of the problems of Direct Democracy are demonstrated in Debian. In many ways it is more anarchistic, anarchy gives you liberty for good and bad. Maybe we should consider a Representative Democracy model for Debian.

5 comments:

Anonymous said...

It is simply incorrect to state that technical decisions about the set of packages which go into Fedora are made by "management", i.e. the set of xen kernels, the choice of MTAs shipped. These are technical decisions made by engineers, and engineers make trade-offs.

So sometimes this pisses people off. That's a feature. The alternative is the Debian way of trying to ship everything and please everybody. That sucks, and that's why Ubuntu exists.

Matt Domsch said...

Please don't perpetuate the myth that Fedora Extras packages are second-class. Their packaging quality has been exemplary (e.g. Core packages adopted the Extras-suggested minimal build roots) and many people spend countless hours reviewing each other's packages to ensure this quality. With the upcoming release of FC6, you'll be able to install packages from Extras directly at OS install time if you wish.

While it's true that maintainership of packages in Core is currently restricted, the Fedora Project Board is actively working to lessen those restrictions exactly to allow additional community involvement. This will further blur any distinction between Core and Extras.

Anonymous said...

First let me say that i neither a Debian nor a Fedora/RedHat developer.
I have using Debian for man years and switched to Fedora with Fedora Core 5.

Why? Their were mainly three reasons:

1. I doesn't liked the discussion of the GFDL and the idea that i have to put non-free in my source.list to get documentation for many software.

2. Debian Main is Free Software but if i look at the whole Debian Project i also have to see contrib, non-free and the support of non-free through Debian infrastructure (bugtracker, (build and distribution) server, webpage which allows me to search for non-free software,...).

So at the end for me Fedora is a more strict Free Software distribution than Debian. And if i follow the work to verify Fedora software by the FSF and with the Free Software definition maybe in the near feature Fedora will be a FSF approved and recommand distribution.

I understand your arguments too. But i don't think it's something wich could be described as "gratis vs libre". I think your last paragraph uses the right word: Debian is more democratic. Everything will be discussed with and voted with all DDs and if a DD wants to package something for Debian he can do it never mind how "useless" the package is. Maybe it's also more a "community project" vs. "company/commercial project". Everything has it's pros and cons. You have already discribed some cons of Fedora, the cons of Debian can be seen if it comes to a new release where the DDs have to fight with the situation to discuss everything and with the marvelousness amount of packages and platforms.

So you can find many differences but i don't think Debian is more free or libre. This "award" i would hand over to Fedora. But Debian is probably more democratic and more a community project than Fedora.

Unknown said...

Interesting. I'm a non-programmer (heck, mostly "non-technical") Debian user, and I've never tried Fedora. I get the impression from your post that you'd recommend Fedora over Debian to someone like me. If sometime you care to go more into the reasons for that, I'd like to read what you have to say.

Anonymous said...

For a non-technical user, Fedora is definitely more more user friendly starting from the installer to the menu organization to the polish to the rapid innovation and releases.

Just for example, a preview of FC6

http://www.redhat.com/magazine/024oct06/features/fc6/?sc_cid=bcm_edmsept_007

I am sure Fedora deservs better credit here for the excellent SELinux integration, desktop coherency, AIGLX work etc.