Max Spevack writes: "Hi everyone. I'm looking forward to answering all of the questions, but before I start diving into that, I guess it would be useful to give a little bit of perspective about me and my role within Fedora and Red Hat, because it will offer some context around the things I have to say."
The Fedora Project, as many of you know, is a partnership between Red Hat and the OSS community. The highest level of decision-making within Fedora is the Fedora Project Board, a group that is empowered to make the decisions about Fedora policy, to set priorities, and to hold the rest of the Fedora sub-projects accountable for what they are doing. The Fedora Board has nine members, five of whom are Red Hat employees, and four of whom are community members. That breakdown is not set in stone -- that's just what we started with. It is my hope that down the road, the majority of the Board will be Fedora's community leaders.
In addition, the Board has a Chairman, and that person is whoever happens to hold the position of "Fedora Project Leader" within Red Hat -- since February of this past year, that's been me.
As much as possible, we try to conduct our business within the confines of the Fedora Advisory Board, which is a larger group (about 50) of the most prominent contributors to Fedora. This is an open mailing list with public archives and open-posting, and its participation is strong both from @redhat.com and community contributors.
For more information -- http://fedoraproject.org/wiki/Board
In the spirit of complete transparency, a word about the answers:
All of them were composed directly by me -- it's my voice and writing style that you're reading. But, I didn't answer them all by myself without speaking to anyone else. I discussed some of them with folks on the Fedora Advisory Board mailing list, with various colleagues at Red Hat, and a draft of the responses was shown to Red Hat's corporate communications team (not because they have any editorial control over what I say, but as a sign of respect) and a draft was also shown to Fedora Advisory Board.
1) Why such a divide?
It seems to me that 'Linux should be Linux'. Rather, we're seeing articles about one linux distro killing another. We never see "Windows Professional is killing Windows Home". IMHO, Ubuntu's success should be a boon for all Linux distros.
Unfortunately, package management seems to be the great divide. What are you doing to bring One Package Manager to all Linux?
I agree with your initial comment -- one of the great powers of OSS is that when you have a strong upstream in place that is always having changes fed back to it, success for one distribution translates to success for all distributions.
When you look at the landscape of all the many Linux distros out there, it isn't surprising that there's some level of competition among them. Most people want to feel like they are the best at what they do, and a certain amount of competition among distros is healthy. It keeps people innovating, it keeps them working hard, etc. Personally, I think it's important not to lose the perspective that in the end, everyone who works on OSS -- regardless of whether they run Fedora, Ubuntu, Slackware, or any other distro -- is ultimately working to promote more or less the same core set of principles (more on this later).
To speak directly about Fedora:
First, we believe very strongly in working with various upstreams. The diff between any package that we ship in Fedora and the upstream version is as small as possible at any given time, and we are constantly submitting our patches and changes upstream for consideration.
To your point about "one package manager to rule them all" -- well, I think it's an admirable goal. Do I think it would be a good thing for Linux to begin to standardize on a single package manager? Yes, I do. Does Red Hat have strong ties to RPM? Of course. But what does that mean for Fedora? Well, Fedora is also tied to RPM (yum is our application-layer package management tool, with RPM providing the lower-level work) -- but that doesn't mean that the Board is not open to considering the idea of change. RPM is the reality of the moment. If there's a better solution that gains a critical mass of Fedora engineers who are interested in experimenting with it, then we will try it out.
You ask specifically what Fedora is doing to bring about "one package manager to all Linux" -- well, I guess there's a couple of directions that Fedora could go:
1) Try to convince anyone not using RPM to do so. I don't like that idea very much -- if RPM is the tool you want to use, feel free. If you've got something that works better for you, that's fine too.
2) Fedora could abandon RPM in favor of another package manager. Like I said -- if Fedora engineers want to start the "Fedora $OTHER_PACKAGE_MANAGER Project" and see how far they can get and how the technology works, that would be a great learning experience. We're set up in a way that a project like that could be possible, without getting in the way of the mainline Fedora releases.
3) Try to create something entirely new, that everyone will love. Call me cynical, but trying to build a consensus before you actually have any code just seems like a waste of time.
I guess the "problem" with package managers is that they are so integral to the rest of a distro that it's a major endeavor to switch them. One reason is that a switch of that kind would break the upgrade chain.
Technical challenges like that lead to a high level of inertia, and therefore require a tremendous added benefit that is gained by making a switch.
2) Drivers Vs Linux
A lot of people I talk to say they don't like Linux due to lack of driver support. Is there anyway you see this problem being eliminated? How do you court vendors to support their hardware on your flavor of Linux?
Linux enjoys a large amount of driver support in general, but proprietary software drivers remain a problem. From the perspective of Fedora, our stance is clear. It has and will always be our goal to create a distribution that is 100% free and open source. We want to show the world what Free software can do, and we want developers and users to know where the limits of the software are, so that we can address them.
Fedora Core 5 and Fedora Core 6 Test 2 have tremendous amounts of driver support, as a result of the work of many people within the community, and also as a result of the millions of dollars that Red Hat has invested into certification, testing, and development over the years, which has played a role in getting things to the point at which they are right now.
The rub, of course, is that having a giant pile of open source drivers is wonderful, but as soon as a single user runs into a single piece of hardware that doesn't work for them under Linux, then all of a sudden Linux "driver support" is terrible. I'm not saying that's what the poster of the question thinks -- I'm just saying that's a general problem of perception that Linux deals with.
One way to deal with this, or course, is to vote with your wallet. When there are drivers and hardware that don't work under Linux because of proprietary limitations, state those limitations honestly and transparently, and let the users decide whether or not to buy them.
From Red Hat's perspective as a company, we do a lot of work with hardware providers -- Dell, HP, Intel, Fujitsu, etc., and that work is often done directly in Fedora. We've worked with Broadcom on network drivers, and with Promise on SATA. We're hoping to bring more and more into the fold, and we're hoping that the open testing and certification system that is being developed (and was announced at the Red Hat Summit) will allow partners and individuals to help us bring even greater driver support to Fedora.
But ultimately for Fedora the goal is Free software. Including support for proprietary drivers in our distribution would violate that tenet, but we believe it is important enough that we don't compromise. All distributions face this challenge, and it is at times a difficult question to answer. But I am proud of the fact that Fedora's choice has been consistently in favor of freedom in software.
By choosing not to ship any proprietary or binary drivers, Fedora does differ from other distributions. Ubuntu is one example, as there is very strong language about their commitment to Free and open source software, right up until the line stating that they include binary-only drivers on their CDs and in their repositories.
3) What's changed?
You mention that opinions are rooted in the world of 5 years ago. What do you think has changed in the Linux world since then, and how does it affect Fedora development?
Well when I said that I thought opinions were rooted in the past, I was referring more specifically to the fact that I find it personally frustrating that a lot of opinions about Red Hat have not evolved past the anger and frustration surrounding the Red Hat Linux/Fedora split a couple of years ago. But I spend some time on that later on, so here I'll answer your more generic question about what's changed in Linux in the past five years.
I remember walking into the lobby of Red Hat's headquarters two years ago when I showed up for my job interview, and in big letters, the first thing you see is "First they ignore you, then they laugh at you, then they fight you, then you win." Gandhi wasn't talking about Linux, but I am inspired by that quote every day.
In the last five years, Linux has moved along down that path, most certainly. Market share increases. Mind share increases -- I see open source mentioned in magazine and newspapers when it never was before. Name recognition for Linux and why it is different (and better) is becoming more and more mainstream. Far from being ignored, Linux is getting more and more support, and in turn the fight against it intensifies as well.
In the technical realm, the changes in Linux in the last five years have been extraordinary. I don't think I need to enumerate the differences between a Linux distro in 2000 or 2001 and today, certainly not for this readership.
Another gigantic change over the last five years is the fact that the PC is no longer the king of the electronic device. There was an article in 'The Economist' last week about this, discussing the fact that PDAs have such a huge market penetration now, that many tasks that used to require your desktop or your laptop are moving toward portable computing. Breaking into that part of the computing world is something that is a possibility today that wasn't really a consideration five years ago.
Fedora needs to change. It needs to be less bulky, and more customizable. The actual "core" packages that are required to get a system up and running should be broken out, and applications layered on top as users need them.
In Fedora Core 6, the installer will be able to reach out to any network-accessible repositories and pull in packages from them, which is a step in the right direction, and also is a big step in breaking down the distinction between Core and Extras.
4) Worst Aspect of Fedora?
On the Fedora Project website, there are plenty of reasons listed for Fedora to be your operating system of choice. In your eyes, what is the most lacking aspect of Fedora as it exists today?
In my opinion, the most lacking aspect of Fedora as it exists today is the separation between Fedora Core and Fedora Extras.
For those of you who aren't familiar with what that means, I shall explain:
Fedora Core is a set of packages (right now about 2200) that is completely self-satisfying from a dependency perspective, and is the pile of code that we ship, for example on the Fedora Core 5 DVD, or in our bittorrent tracker.
Fedora Extras is another set of packages (more than 3000) that is installable adjacent to Fedora Core, but isn't shipped on the media. Greg DeKoenigsberg worked to kickstart Fedora Extras in early 2005, and since then it has become arguably the most successful part of the Fedora Project. It has thrived under the leadership of Thorsten Leemhuis and the rest of the Fedora Extras Steering Committee. The packages in Fedora Extras are maintained by whoever is capable of stepping up and doing the work, regardless of whether or not they are employed by Red Hat.
The reasons for the separation between Core and Extras have to do with build systems, CVS locations, and artifacts of antiquated Red Hat attitudes toward Fedora, as well as antiquated processes.
I would like all of that to change. I would like for the Core/Extras distinction to go away, and instead be replaced by the idea of a Fedora Universe, which is a giant pile of packages that are blessed by Fedora, and any subset of those packages that produces a functioning OS can be called Fedora.
It's going to happen, but it's not an overnight sort of change. Right now is the time during which we should be planning how we can achieve a goal like that, and it's my hope that as RHEL5 stabilizes and Red Hat engineers have some cycles free up, we'll be able to get some of the work done on the Red Hat side of the fence that is required.
Separate from that, we would love to have more contributors. People who want to work on code (especially code that isn't package maintenance), documentation, infrastructure, and artwork. People who are organizers and who want to be leaders. That's not to suggest that we don't have contributors today who have those qualities and skillsets, but there's more than enough work to go around.
5) Vista a Problem?
Do you view Vista as a threat to your user base? Do you or people on your team ever change your mind about things or let looming Vista influence your decisions?
I'm hoping that Linux distros are not pressured into adding unneeded bells and whistles in a desperate attempt to compete with Vista. Are you invulnerable from this mentality?
Truthfully, everything I know about Vista I learned in two places -- right here on /. and on the mini-MSFT blog. I don't particularly pay any attention to Vista, and I can't really tell you what is or is not supposed to be in it at this point in time, or when it's going to ship (insert your jokes here). I used to have a XP partition that I'd boot to for gaming -- probably not unlike a good number of /. folks -- but it's been over a year since I blew that away and I haven't looked back.
In terms of getting people to use Linux instead of proprietary operating systems -- I think that battle is best fought in the world of people who are new to computers. People will tend to be loyal to the first thing that *just works* and doesn't cause them pain. Making that first experience for people a Linux one as opposed to a proprietary one -- that's the challenge.
By the way, I'm not suggesting that you can't show long-time proprietary software users the light of open source, but it's a much more gradual process: "Another Internet Explorer exploit, huh? Hey, have you heard of Firefox and Thunderbird? Let me help you set them up, you might like it."
6) NTFS support in Fedora/RedHat
by Anonymous Coward
If Fedora is actually not controlled by Red Hat anymore, and Fedora is user-oriented, why are both the only general-purpose GNU/Linux distributions that disable the NTFS driver from the Linux kernel?
Users do need this option (unlike Red Hat's customers, which are organizations as far as I know), and for evidence, Linux-NTFS is one of the projects with the most downloads on sourceforge.
I would like to add that NTFS is part of the mainline kernel. Compiling it as a module will cause it to not take any memory resources other than the few kilobytes on disk that any un-used hardware module is taking, unless of course the user has a mounted NTFS partition.
Red Hat's reason for disabling NTFS support was that RedHat is a US-based organization and that they fear patenting problems from MS. No law action was ever taken, and no actual patent was referenced. As far as I know, NTFS is not even patented or patentable. Fedora is not RedHat as you say, so this old reasoning is not exactly valid for Fedora. The IBM/SCO saga also cleared the issue about patents in the mainline kernel.
Unless Fedora will change this simple flag in the kernel config file, I assume it is still controlled (and not only sponsored as some would say) by RedHat.
Heh, the actual question asked is a reasonable one. I think it's sad that it has to be surrounded with such vitriol. First of all, I am not a lawyer. In fact, the *actual* lawyers require that I tell you all that I am *not* a lawyer, for legal reasons. The AC who posted didn't mention his background, but I'm guessing that he/she is also not a lawyer.
Red Hat retains legal liability for the Fedora Project. The Fedora Project is not a separate legal entity or organization. The Fedora Project receives a tremendous amount of resources (people, money, infrastructure, etc.) from Red Hat.
If you are a proprietary software company looking to exercise some patent litigation against an open source software company, Red Hat might not look like an awful choice.
In the past, Red Hat's counsel has been uncomfortable with enabling NTFS support in the kernel. Recently, the kernel has become protected by the Open Invention Network (http://www.openinventionnetwork.com), which has been mentioned previously regarding Fedora and our inclusion of Mono (http://gregdek.livejournal.com/4008.html).
The question of NTFS in our kernels has been raised on the Fedora Advisory Board recently (within the last month or two). When we have an answer regarding that, the analysis and result will also be published transparently for people to comment on and discuss.
In closing, I would remind all of you that my only legal training involves at one time being able to recite the climactic scene from 'A Few Good Men' in Spanish.
7) Dependency hell
The introduction of yum has vastly improved the user experience when installing software, or updating existing packages. However, it's brought with it a new kind of dependency hell. For example, if I want to install a PostScript previewer:
% yum install evince [...] Installing: evince x86_64 0.5.1-3 core 773 k Installing for dependencies: nautilus x86_64 2.14.1-1.fc5.1 updates-released 3.9 M nautilus-cd-burner x86_64 2.14.2-1 updates-released 414 k
That's clearly wrong. I only want to install a PostScript previewer. Doing so should not require a filemanager (which I don't need or want), and certainly not a CD burner. But these are added as dependencies due to the clumsy packaging that seems to be increasingly prevalent in Fedora. Perhaps (and I remain unconvinced) there's some aspect of evince that can make use of nautilus being present. But if so, I haven't seen it. I could well believe that nautilus could make use of evince, but not really the other way around. But assume for the sake of argument that it can use nautilus. That still isn't a reason to have it depend on it. Dependencies should be packages that are required in order for another to run, not packages that will merely enable additional functionality. In this case -- the prime function of evince is to view documents, which isn't significantly enhanced by having a file browser present.
Fedora is still my distribution of choice, but it's becoming increasingly hard to use for those of us that prefer to run with a minimal system due to the way that the dependencies have been getting out of hand. Are there any plans to fix this, or is any work already underway to do so? I understand that some consideration has been given to providing "soft dependencies" within RPM (like dpkg's suggested dependencies), which would help. Is there a timeframe for this? Is anything else being done?
I quite understand the focus on getting the system to be usable for the average unskilled user. But the impression I'm getting is that it's being done at the expense of letting those of us that know what we're doing do what we want. Does Fedora have a position on the type of users it's aiming for, or is it still trying to be a general purpose OS?
To your specific example, ask and ye shall see some improvement.
To your more general question, there's a couple of things that play a part:
Part of the dependency requirements come from the manner in which the packages are written, in which (for example) it's far more common for someone to install a large set of inter-related packages than just a single package. Regardless of that, it's entirely possible (such as in this specific evince example) that some extra work can simplify the dependency requirements. Bugzilla is always the best way to bring issues like that to the attention of the packagers. From there, it's just a matter of code and time.
While Ubuntu has a clear, selfless mission, it seems to me the Fedora project misses this. I'm sure while Fedora was still within Red Hat, its mission was simply commercial. "It must be good so we can make money." That mission no longer applies, and http://fedora.redhat.com/About/ [redhat.com] almost sounds like Fedora is just a rejected part of Red Hat, left Free so that they could attempt to profit from community contributions.
Is there an objective in the Fedora Project? One that is clear and may motivate developers to join? Or is it here really just to reduce costs for the Red Hat team?
Just to clarify one thing in the question first -- "while Fedora was still within Red Hat" -- I'm not quite sure what that means, but I hope my explanation about the Fedora Project Board at the top of my answers clears up any questions there.
I'm really glad this question was asked, because it gives me a chance to try to bust the NUMBER ONE MYTH about Fedora -- that Fedora is "just a beta for RHEL" or that "Fedora only exists to make Red Hat money" or "Red Hat doesn't care about Fedora, it's just a dumping ground for half-tested code". I hear all of those things from time to time, and *none* of them are true.
Let's back up for a moment -- the Red Hat Linux/Fedora Core split took place in 2003. And while I wasn't at Red Hat during that time, I think it's fair to state that there were some unfortunate choices made internally about how Fedora was positioned, and because those statements were made with a Red Hat voice, it helped to create a very strong perception that Red Hat abandoned the community, and that Fedora wasn't "good" for anything, or was a rejected part of Red Hat. Many mistakes were made by Red Hat with regard to the "birth" of the Fedora Project -- there is absolutely no debating that.
I think there were some people within Red Hat who were afraid that the "admission" that Fedora was production-quality, or that Fedora was anything more than beta-quality, would cause difficulty for the people trying to sell RHEL. Three years later, and that perception is still very strong in certain places -- without fail there are a few comments about that in every Slashdot story that mentions Fedora.
And that's fine. Red Hat had a part in creating that perception, and so Red Hat will have to work particularly hard to undo it. We have been, and we continue to do so.
The real story of Fedora, of course, is entirely opposite from the "beta code only, not production worthy" stance.
Our mission statement is clear, and is one that I think any open-source developer would appreciate.
Fedora is about the rapid progress of Free and Open Source software.
That's it. We strive to produce a quality distribution of free software that is cutting-edge, pushes the envelope of new open source technology, and is also robust enough that it can be relied on for server or desktop use. One of the terms that I really like, and that I think we're doing better and better of making a reality is that of Fedora as an "open development lab". As a user, if your priorities are cutting-edge technology (without the nicks and cuts of a blade) and freedom, Fedora is a great disto to use.
The second half of the story, as it relates to Red Hat's desire to make a profit, is equally simple in my mind. Fedora is upstream of RHEL. Fedora is also upstream of various other derivative distributions.
So when someone says "Fedora is beta for RHEL" they are stating only a very small part of what Fedora is. Fedora is the best of what works today. RHEL is the best of what will work for the next seven years. And the users can decide what is best for their needs.
Saying that Fedora is the beta for RHEL, and that Fedora is *only* a beta for RHEL, is to take a purposefully narrow view on the truth. Fedora's upstream relationship to RHEL is simply one aspect of the Fedora Project, which stands on its own as a distribution.
I feel very strongly about this particular question, and I will state my opinion bluntly:
Anyone (Red Hat or non-Red Hat) who tells you that Fedora isn't suitable for a production server is wrong. If someone tells you that Fedora is "just a beta for RHEL", they too are wrong.
Either the person is insufficiently informed about what Fedora is (and it's our job within Fedora to do that), or the person is purposefully misrepresenting Fedora and neglecting to tell the whole story, in which case it's our job within Fedora to call them out.
9) Directory Server
Hi, I've been using Fedora Directory Server for quite a while, and it is a fantastic product. I read some rumours that it would be Integrated with FC5, but sadly it was not. When can we expect this to be a standard feature/integrated with authentication and other areas in Fedora?
Regrettably, answering this question honestly also requires admission that the integration of Fedora Directory Server and the rest of the Fedora Project (particularly Fedora Core/Extras) hasn't happened as quickly as many would have liked. Directory Server is a great piece of software, but the true merging of that into Fedora Core is something that doesn't have a lot of traction at the moment. The Directory Server community isn't necessarily very well integrated with the rest of the Fedora community, and therefore the two communities are in a similar state to that of the two projects -- in theory capable of being very good together, but in practice sort of just existing side by side, but not as closely knit as they could be.
When will that change? As soon as we can get enough people on both sides of that fence able to spend the cycles necessary. I can't give an exact date, because one doesn't exist right now, so I'd rather not just make something up.
10) Have you tried Ubuntu?
by Anonymous Coward
Have you tried Ubuntu yourself? Is there, in your opinion, something Ubuntu does better than Fedora?
Those of you hoping for some flamebait, I'm sorry to disappoint.
Yes, I have tried Ubuntu. I have played around with SUSE, though not in any significant way for a year or so. Prior to coming to Red Hat in August of 2004, I had always been a Slackware devotee, and my subscription with them is still active.
So what does Ubuntu do better than Fedora?
Let me start without even mentioning the actual distributions. I think it is clear to anyone who is looking that Ubuntu's website is in much better shape than Fedora's. Ubuntu.com is clean, clear, and easy to navigate for people who are browsing it, and if you dig down a little bit, you can also get to the Ubuntu wiki, which from what I can tell, serves a similar purpose to the fedoraproject.org wiki.
Here's the difference -- fedoraproject.org is *just* a wiki. It's got a tremendous amount of information, and as someone who uses the site frequently, I know how to find what I'm looking for. But it has a bit of a learning curve before it becomes useful.
Fedora's websites are in a state of flux -- fedora.redhat.com is deprecated, but the killing off of that site is taking longer than I would have hoped, as there are a variety of infrastructure issues at play. Our wiki gets the job done, but I'd like to see a more professional looking front-end put on it, with the wiki continuing to function as it does, but just ever-so-slightly in the background. The biggest hurdle to making that happen -- just having enough cycles and enough people to do the job properly.
That aside, I am impressed by Ubuntu's LiveCD, directly installable feature. We have similar work going on within Fedora, but so far it hasn't achieved the same level of "officialness" as the Ubuntu code. So that's an area in which Ubuntu is ahead of Fedora.
I played around recently with Dapper Drake. Like I said, the LiveCD was cool. The desktop -- Gnome is pretty much Gnome, Firefox is Firefox, etc. Personally I'm a huge fan of NetworkManager, which didn't appear to be the default in Dapper, but something like that is just a detail. I'm sure if I were to use Dapper full time and I wanted it, I could probably get it.
This goes back to what I wrote near the beginning about the importance of upstream. If everyone is pushing their latest work back upstream, and the maintainers at the top level have the time and resources that they need to keep everything in order, then most GNU/Linux distros are going to feel pretty similar once they are installed. Which is why I think a lot of the OSS "religious wars" don't make a lot of sense.