Ubuntu and Debian: To Fork or Not To Fork

Author:Benjamin Mako Hill
Contact:mako@ubuntu.com
Date:Wed, 16 Mar 2005 22:25:17 +0100
Copyright:Creative Commons ShareAlike License

Introduction

Note

Slide 1

Show the title slide.

Introduce myself and my backgrond.

Debian

Introduction

Here's my quick introduction into Debian.

Debian is a distribution of GNU/Linux -- it's a collection of software all made to run together.

The atomic unit of a distribution is a "package."

Quick Facts

Note

Slides 2 - Debian overview

Debian Quick Facts:

I've heard Debian described as a big place with lots of packages. It is a collection of all sorts of software.

  • Debian contains over 15,000 packages (and growing by 5 each day);
  • Debian involves the work of 1,000 official volunteers and many non-official;
  • Debian includes the work of many companies and organizations;
  • Debian is 100% free software;

Good Things

Note

Slide 3 - Things Debian Does Well

There are great things about Debian and some less great things. What those are will depend a bit on who you ask but you get common answers.

What many people say is that are some things Debian has a history of doing very well (these things people like about Debian):

  • Supporting many, many packages.
  • Excellent package management tools -- apt-get as one example;
  • A consistent (and enforced) distribution wide policy;
  • A huge volunteer base;
  • A commitment to Free Software philosophy;

Not So Good Things

Note

Slide 4 - Things Debian Does Badly (can go through quickly)

There are some things Debian has a history of not doing quite as well:

  • Releasing frequently and/or predictably;
  • Ease of use/usability (especially the installer) for beginners;
  • Consistency on the desktop;
  • Accountability (in the corporate or institutional sense);

It's important to note that many of these things are getting better in Debian (the installer is a good one) and are merely a matter of time while some seem to be rather systemic limitations brought on by what Debian is.

Customization

Intro: One Size Fits All?

Note

Slide 5

The reason there are so many derived distributions is that one size does not fit all.

Debian has enough stuff in it that it can be treated a place to work from rather than a solution. Debian may not be everything for everyone but it can provide the stuff to work from.

Reasons for forking:

  • Debian is both KDE and GNOME
  • Debian doesn't release often enough
  • Debian won't pay someone to do X or Y
  • Debian doesn't include this (probably non-free) piece of software
  • Debian doesn't do X fast enough.

Introduction into Derived Distros

Note

Slide 6

There are 115 separate Linux distributions based upon Debian.

INSERT LARGE LIST HERE

There are only ~80 based on Redhat!

The Most Recognizable Include

Note

Slide 7

  • Knoppix
  • Linspire (Lindows)
  • Libranet
  • MEPIS
  • Ubuntu
  • UserLinux
  • Xandros

I'm forgetting more.

What Customizers Want to Do

Note

Slide 8

Just a quick overview to run through first. Then I'm going to go into technical detail. The problems/goals of customizers can be broken down into the following pieces:

  • Custom software selection;
  • Custom software configuration;
  • Software replacement;
  • Custom installers/environments;

Plus:

  • Gain from others work;
  • Share your work;

To Fork Or Not To Fork

Note

Slide 9

A fork is a split in a software project. There have been some famous forks (emacs, GCC) but it almost always involves both an organizational and political split and a split in terms of code leaving us with two projects and two source repositories.

Forking has benefits (there's a reason people do it):

  • Freedom to pursue different idea of how things should be done.

Forking has some serious drawbacks though:

  • Reproduction of work in a way that that Free Software was supposedly going to be able to avoid.
  • Security updates, installer issues, translations, etc

Case Study - Ubuntu

Note

Slide 10

Ubuntu is an example of a project that I have been involved in that is experimenting and trying to restructure the "hard fork" in a ways to maximize benefits of forking while minimizing the reproduction of work, and other drawbacks:

Ubuntu is interesting because it's the closest thing we have to a full fork.

Ubuntu is a Zulu word that means humanity toward other and sharing.

Joke: We didn't just make this word up -- as some have accused us of doing. :)

Ubuntu is a Zulu word that in English means something like:

Humanity towards others.

Another translation would be:

The belief in a universal bond of sharing that connects all humanity.

Desmond defined Ubuntu in the following way:

A person with Ubuntu is open and available to others, affirming of others, does not feel threatened that others are able and good, for he or she has a proper self-assurance that comes from knowing that he or she belongs in a greater whole.

—Archbishop Desmond Tutu, from "No Future Without Forgiveness"

Ubuntu is a pretty common concept in South Africa. There are pictures of billboards that people routinely send us about "Ubuntu this" or "Ubuntu that."

You may be thinking, "Yes, but what does this have to to with GNU/Linux or Free Software?" I'll come back to that in a second. I promise there's a connection.

Meanwhile...

Somewhere in South Africa

Note

Slide 11 - Mark Shuttleworth, my boss is a cosmonaut

Meanwhile, somewhere in South Africa, Mark Shuttleworth decides he wants to give back to and get involved with Debian and fix some of those problems above (I'll go into what these are in a moment).

For those that don't know Mark:

  • He founded Thawte which was a business that used Debian;
  • I've heard him claim he thinks he was the first person to upload Apache to Debian;
  • He was the first African in Space;
  • Funds lots of Free Software work in South African in particular but globally as well;
  • He founded Canonical Ltd. to, among other things, create a new distribution that was one being done differently (and better) than the others he saw.

Ubuntu is Born

Note

Slide 12 - Ubuntu is born (big Ubuntu symbol)

Ubuntu's original name was, and I'm serious, "no-name-yet.com"

Finally, Mark settled on the name Ubuntu which he though represented the spirit of sharing and cooperation that he found appealing in Free Software.

?Joke: People say that Ubuntu is the distribution with the funny name -- but that's only because they've never heard of "Beernix, Penguin Sleuth,or Overclockix -- some of other 114 Debian based distributions.

In terms of the Ubuntu Linux Distribution, "Ubuntu" refers primarily to the cooperation inherent in the Free Software or Open Source development model.

Richard will talk a lot more about this soon so I won't go into any more depth here than necessary.

  • Funded outside of Debian
  • Goal is to create regular releases and a tighter more integrated desktop environment based on GNOME.
  • Ubuntu splits from Debian every six months (completely) and then send patches back to Debian as they are made but applies them in their own repository.
  • Labor intensive (and requires version control magic) but Canonical has the resources for both.

Ubuntu in a Nutshell Part I

Note

Slide 13 - Ubuntu in a nutshell

  • Based of Debian "unstable";

  • Frequent, predictable releases:

    Problem: "Releasing frequently and/or predictably;"

    People are upset because Debian doesn't release:

    • often enough (people are stuck with old software)
    • predictably is also a problem for people who don't care about frequency but have business plans based on time that they need to balance

    This introduces security issues as well because people expect frequent releases:

    • Debian has a system called testing and one called unstable. testing is often a good choice for many people, but Debian doesn't officially support security fixes in either testing or unstable.

    Solution: Ubuntu will release Every Six Months!

    • releases based off of Debian unstable
    • twice a year
    • eighteen months support for releases
    • smooth upgrade paths between releases
  • Give back to Debian while we do the work and fix the bugs (not at release time);

  • Provide corporate accountability:

    Joke: You may notice a similarity between the Ubuntu and Canonical logos. That was completely accidental. :)

    Problem: Debian isn't accountable in the corporate or institutional sense

    People want someone to turn to for support or service. They wan to be able to call up the authors. Debian's structure makes it very difficult for Debian to provide this in meaningful way.

    Solution:

    Canonical offers a single support place for services contracts.

Ubuntu in a Nutshell Part II

Note

Slide 14

Problem: Ease of use (especially the installer) for beginners

This problem is relatively self-explanatory.

Joke: About the Pope. Lets stop talking about the grandmothers and focus on software that is "easy enough that the pope could use it."

Solution:

  • Ubuntu pays folks to work hard on the Debian installer to improve it in Debian. Additionally, Ubuntu modifies the installer for branding and to remove questions or add defaults. By default, the Ubuntu installer Just Works.

We don't have to be everything to everyone. We don't have to run on every architecture.

  • GNOME to the rescue
  • Consistency + Simplicity == Ease of Use
  • Strong commitment to free software principles (plus a few of our own) -- I'll come back to this in one moment;

If you look at this at this, this looks like a lot like my list of Debian criticism of Debian that I gave earlier.

Lets go back to those criticisms people have with Debian as a way of getting at what Ubuntu does well.

Transition: You may be thinking here: "But what about the things Debian already does well?" We don't to sacrifice these things so we've tried to find ways of balancing this while also not duplicating the work in Debian.

Size

Note

Slide 15 - balancing big and small

Joke: We're not interested in beating anybody anyway! That just wouldn't be in the spirit of "Ubuntu."

As mentioned before, Debian is big in terms of both packages and the number of developers. Clearly, Ubuntu can't be bigger than Debian so we'll just collaborate:

Ubuntu only contains 2000 supported packages but everything else in Debian is included in universe so you don't have to give up anything to use Ubuntu.

  • About 10000 packages in Universe (and growing!)
  • Work on multiverse for even more!

Thie situation is the best of both worlds.

Philosophy

Note

Slide 16 - philosophy

We keep Debian's commitment to Free Software. Our principles are, in spirit, similar to the Debian social contract and our licensing guidelines are similar to the Debian Free Software Guidelines or the Open Source Definition.

Note: Page through the philosophy point by point

  • We don't hold binary firmware and documentation up to the standards (RFCs and GFDL documentation can go into Ubuntu).
  • Binary drivers are included for people that want to make the adult decision to use them in a section called "restricted." We cannot, however, support these since they are not free software.

Joke: I wrote the free software philosophy page and made it as radical as I could. Everyone actually agreed with me which was a great surprise!

Other Benefits We'd Like To Keep

Note

Slide 17 - Other things we like to keep.

  • The consistent (and enforced) distribution wide policy;
  • Excellent package management tools -- apt-get for example.

We borrow heavily from Debian in these and other areas.

In terms of package tools, we use apt-get and the like. We are also building new functionality into the tools by paying the package maintainers to do the work on their own tools, that go back to Debian:

We've hired to the dpkg, apt, and synaptic maintainers to improve their tools and to add new features.

Back To Forking

Note

Slide 18 - A fork?

Ubuntu is, under most traditional definitions, a fork. That said, Ubuntu is not a traditional fork:

  • We're contributing heaps of patches back to Debian (we did this even before we had a name).
  • We have hired many Debian developers (I'm a DD, and so are almost everyone other Ubuntu developer so far). Even people who are not hired.
  • Ubuntu realizes it can't exist without Debian -- not Debian as the place we started from but as the place that we continue to build of of over time. We understand we need to work with and in Debian.
  • We aim to be a commercial and community project

Summary

Note

Slide 19 - Summary

Getting Debian and Ubuntu

Note

Slide 20 - How to get Debian and Ubuntu

You can get Debian online at http://www.debian.org and you can also order CDs from a number of different places.

Ubuntu you can get it: