Have something to say?

Ready to be published? LXer is read by around 350,000 individuals each month, and is an excellent place for you to publish your ideas, thoughts, reviews, complaints, etc. Do you have something to say to the Linux community?

Debian and Ubuntu: The keyword is freedom

This is a follow up to the previously published article "Ubuntu: derivative or fork?" written in an attempt to "clear up" the issue and point to the freedom as the uniting value of Free Software community. It takes into account the response to the first article and the poll results on the question it was asking.

Introduction

This article is a follow up to "Ubuntu: derivative or fork?" published here recently by Charles-H Schulz. The intent behind that article was to stir up a healthy discussion on the issue that has been circling around for some time about the relation between Ubuntu and Debian GNU/Linux distributions. However, some of the "harsh words" said in the article may have polarized the response more than we would have liked and detributed somewhat from this healthiness. However still, it happened and to commend the Free Software community, it was quite civilized (not much of flaming actually happened;). Some would say that there was no need to discuss this in this way, to spotlight this issue so much, but if you take into account the fact that Debian and Ubuntu are today two of the most influential GNU/Linux distributions, in all ways, then you might agree that it would be better to "once and for all" deal with this case openly through an open dialog then just keep confusing ourselves little by little posting and flaming each others on forums about how Ubuntu is this and Debian is that, not actually making any significant progress on the issue whatsoever. You could even look at this as a forum discussion which escalated into a case study on how discussion in Free Software community works and looks like, one, I'm sure, with a positive result. This article takes into account most of everything that has been posted as a reaction to the first article, including the poll results to present a general opinion and compare them with facts derived from various resouces. You'll see that peace can be achieved between these two, and ultimately any GNU/Linux group outhere. We can live diversely in unity - what a beautiful thing.

Compatibility

There is a vision in my mind. It envisions a sphere of all debian based distributions sharing absolute and full compatibility with Debian base and each other in full respect. In this vision I can, for example, take Knoppix and use it to install packages from Mepis, Xandros, Ubuntu or any other Debian based distro that there is. The vice versa in all directions would apply too. It would be a perfect coherence and there would be no single piece of software that wouldn't have a .deb package you could install on anything that has Debian at its base.
Doesn't this sound good? It sure does, but there is a catch.

Not everyone's vision of an ideal GNU/Linux distribution for *them* is the same and not everyone has the same desires, needs and expectations when it comes to the OS that they'll run on their computer. And this is exactly why Free Software is such a beautiful concept. It gives you freedom to pursue your ways, your needs and your desires. Well, Debian is one of those organizations that have and still do firmly stand up for exactly these kinds of freedom. In that sense, it actually encourages people to come and take the great work of the Debian community to turn it into something that's for them, and ultimately everyone, even better.
As one of the commentators said; "The reason there are so many derived distributions is that one size does not fit all." But when there are many sizes everyone will find its fit.

So where is the catch? It is in the fact that many times (or always in real life), following a different path means breaking from the original one. Sometimes it just cannot be achieved in a different way. So, it is very likely that some of those Debian based distributions, in this case Ubuntu, just couldn't do both things at the same time; keep full compatibility and pursue their unique goals. Now I will echo what many said in comments. Ubuntu is a GNU/Linux distribution technically aimed at people who want their OS stable, to "just work" out of the box and at that include the very latest of available software. To achieve that they based their distribution on Debian "unstable" branch as it has all the latest software in one place. However, to make that stable and usable as a friendly working desktop system, they have to test, polish and often patch it. So they take a snapshot of the "unstable" repository every six months, do the "stabilizing" job and make a release. And this is exactly where any incompatibility comes from. This process is the point at which Debian and Ubuntu start to diverge. In order to make this diversion as small as possible, Ubuntu actually sends their modifications back to Debian unstable repository, but not force it's maintainers to apply those modifications. See what they say:

One thing that should be obvious from this is our job is a lot easier if Debian take all of our changes, the model actually encourages us to give back to Debian.

That’s why from the very first day we started fixing bugs we began sending the patches back to Debian through the BTS. Not only will it make our job so much easier when we come to freeze for “hoary”, our next release, but it’s exactly what every derivative should do in the first place.

There is a line to be trodden though; we don’t want to be in a situation where it seems like we’re forcing Debian to do something, or to take some patch. While we’re happy to give the patches to Debian as soon as we make them, it’s still the Debian maintainer’s package and they’re the ones who choose whether to incorporate that patch into Debian or not.

So we could even say that, technically, it may be Debian maintainer's fault if there are some incompatibilities between the two, because they may have not applied all the patches contributed from Ubuntu. However, no blame should be placed on anyone exactly because Debian has a different path from Ubuntu, which should be a valid reason for them to reject certain Ubuntu patches.

Fork or not?

According to the current results of our poll, the community is far from agreeable on the answer to this question. I would say that it is so because they are searching for the wrong thing or maybe the question just seems to mandate that the answer should be merely "yes" or "no", that is, "it's a fork" or "it's a derivate". I think that the right answer would be neither or in the same sense *both*. What Ubuntu is, is a Debian *based* GNU/Linux distro, but that doesn't essentially make it neither a fork or a derivate if you'd closely follow the meaning of those two.

Good part of the commentators would say something I tend to agree with as the best possible answer; Ubuntu is a fork of Debian release cycle and derivate of the rest (the actual package management system and the unstable package repository). This answer also makes sense particularly considering that the strictness of Ubuntu six month release cycle actually is the very source of any incompatibility issues that arise. As Ubuntu "snapshots" Debian unstable to make a new release of it, Debian unstable itself still continues to evolve essentially diverging itself from the point at which it was when the snapshot has been made and thus from the snapshot and its outcome; the new Ubuntu release. The only bridge remaining as a possible compatibility saviour are all the patches that Ubuntu sends back, but their implementation isn't ensured as it depends on debian maintainers' and their decision of whether the recieved patch fits Debian and it's goals or not.

Ubuntu and the community

DCCA Alliance

DCCA, or Debian Common Core Alliance, is a project of creating a Debian based common core codebase from which other GNU/Linux distributions can build on. These distributions are expected to keep full compatibility with this Debian core and will therefore use the same common repository for their packages. However, DCC is in essence not Debian and Debian Project itself has not become part of this alliance yet. It is only being based on stable debian release, currently being "sarge", but is apparently a separate entity from Debian Project.
So, why hasn't Ubuntu joined DCCA? I think that we should first ask if it belongs to DCCA in the first place because according to the above said, there are some pretty obvious incoherences between DCCA and Ubuntu as its potential allie. The most apparent difference is in that Ubuntu bases on Debian unstable branch while DCC bases on a stable release. And since DCC asks for a full compatibility, the nature and base on which Ubuntu is built can't safely guarantee this compatibility, which makes another reason not to join.

What actually Ubuntu is in relation to DCC is not just another potential allie, but it's parallel project or even a competitor if you will. The only difference in that sense is that Ubuntu builds a complete desktop operating system while DCC merely builds a base. However, both have some commercial connections and aspirations and both build on Debian to bring a stable release. And even though Ubuntu isn't meant to be merely a "core" to base on, it does very much indeed already serve as a base for new "debian based", or more so "ubuntu based" distributions.

In essence, the Debian Project gave birth to Ubuntu and DCC in parallel of which both then continue to stir new possible distributions based on both of the projects. Of course, that doesn't mean there will be no direct derivatives from Debian Project anymore, just that we now have two additional "bases" to choose from when building a "debian based" distro.

Is all of this good? I don't see why not, especially if you take into account what I've said about pursuing different paths and most importantly freedom to do so. What we get is exactly "many sizes fit all" picture. The original Debian Project will continue to appeal to advanced users, server admins and "geeks" (to follow a stereotype) and Ubuntu will appeal to home desktop users that need the ease of use while DCC will appeal to professionals, businesses and whoever else decides to build a distro with a fully compatible common base. It's a win-win-win and then some more winning situation. :)

Mark and his millions

Most people today have learned not to trust the rich ones and keep them under constant suspicion instead. I actually think that this is a good thing, especially considering that money has indeed proven to be something that truly does have the power to corrupt a person. I actually believe that everyone with a lot of money and power should very well be aware of this (positive) societal trait and act accordingly and responsibly. In other words, people with money have an additional burden to bare and this is one of keeping their image (their motives and intentions) straight, especially if they genuinely are honest.

So, did Mark Shuttleworth play this role right? Can the community trust him? I wont give you a definite answer here, but I will give you a question to consider. How has everything that he has done so far affected the Free Software world and its future?

I think most, if not all, of you would agree that Ubuntu has pushed the rate of GNU/Linux adoption and in the end, from an objective point of view, helped even Debian itself more than it took away from it. You can imagine how far reaching effect does only its free CD shipping program have on the overall awareness of the general public outhere about GNU/Linux. I don't need to go much further then myself to give you an example. I've ordered five copies of Ubuntu Hoary (2CDs pack) and gave it to my sister which then spread it around her class in high school. Those CD's look professional and unlike noname CD's you can burn every day, their appearance sparked interest in them to see what's on. My sister said that they wanted more. That may have very well been an occasion in which a few from her class first heard of GNU/Linux, a free operating system for everyone. It is possible that right now, some of them run Ubuntu at home, at least in dual boot with Windows. Now consider that same and more is happening around the world all the time. There is no barrier whatsoever. You can just order those CD's and spread it around with no cost except for one charged to Mark himself.

It is, indeed, a pretty smart marketing plan and it will certainly provide Canonical with a good deal of publicity to help it's other commercial interests which basically revolve around professional commercial support for Ubuntu. You'd be the judge of how good or bad that is.

To conclude, I'd say just look at what he did so far and what is he doing now and base your conclusions on that. You can only use past and present to project your expectations for the future, but anything further is mere speculation.

Unite in diversity

In alot of cases, the "hostility" between Free Software sub-communities (such as between ones of Debian and Ubuntu) come from within both sides of these communities themselves. It is known to me that some Ubuntu users often like to bash on debian users, but the vice versa is true as well. Many times people fall prey to perceiving their own preferences as superior to everyone elses. It is a typical case and I can only imagine that there are number of Ubuntu users who just think everything else except Ubuntu sucks or that Debian particularly sucks compared to Ubuntu that comes from it. The same can be said for some Debian users who would claim Debian is superior due to it's old age and originality. But simply noone can escape the fact that no GNU/Linux distribution, no particular choice made is superior over the choice made by the next person. What may be the best for you may be the worst for me and that is where it ends.

This is not however a point of division. Understanding choice and freedom that enables it we can have that freedom and that ability to choose as factors that unite us. We can rejoice in our diversity because when diverse, the world is just so much more interesting and colorful.

Ultimately, where all the division among the community comes from is exactly from misunderstanding of above. Not everyone that uses GNU/Linux today knows why has this operating system came to be in the first place and why is it so different. Misunderstanding, logically, brings to confusion and pretty one sided, closed minded attitudes causing an inability to fully respect the freedom and choice of other people.

So you see, it's all about one thing: freedom. Everyone should be taught to appreciate it's incredible value.