gnu/linux, ubuntu, debian, gNewSenseFebruary 20, 2007 1:37 pm

A gNewSense of a choice: Ubuntu or Debian

In a comment left for the interview with gNewSense founders Paul O’Malley & Brian Brazil, it was asked why they had chosen to base the distribution on Ubuntu rather than Debian. The argument was made that Ubuntu "…adds more restricted firmware and uses more binary blobs then debian. So rather that using a base that adds that type of software in and then removing it again, why not just start with debian…"

I don’t really know whether Ubuntu adds more of these things, other than those in Restricted (which I would exclude from my Ubuntu install anyway). However, for the sake of argument, we’ll say that it’s true and look some of the reasons Ubuntu may have been chosen in spite of this.

Debian

From Wikipedia:

The Debian distribution was first announced on August 16, 1993 by Ian Murdock, then a student at Purdue University. Murdock initially called his system the "Debian Linux Release".[1] In the Debian Manifesto he had called for the creation of a GNU/Linux distribution to be maintained in an open manner, in the spirit of Linux and GNU. He formed the name "Debian" by combining the first name of his girlfriend (now wife) Debra with his own first name.

Debian has been one of the foremost examples of a Free Software GNU/Linux distribution. The Debian Free Software Guidelines (DFSG) were considered a most stringent list of the requirements for software to be considered Free. Their original exclusion of KDE was testament to these values, and was instrumental in Trolltech’s decision to re-license QT under the GPL (KDE requires QT, which was the source of licensing problems). They did maintain a "non-free" repository of packages for which the functionality was not duplicated by Free Software, but these were not in the default install.

Their position has been tempered by their inclusion of binary drivers in the Linux kernel, but their are few distributions that match their commitment to software freedom. This is a good argument for gNewSense to choose Debian as their base.

However, Debian also suffers from the volunteer status of its developers.

Unlike most GNU/Linux distributions, Debian is not supported by a commercial entity. This removes many distractions, and allows them to concentrate on their moral commitments. They do not have the same pressure to release often and gain revenue from CD sales, or to release with the latest software versions. Instead, they release when the software has been very thoroughly tested, and on multiple platforms. This has given a reputation of rock-solid stability, sometimes with the only downtime being for a kernel upgrade.

Unfortunately, this also leads to stagnation. There were long periods between releases, and by the time they arrived, the software was out of date. Users want the latest stuff, and they go elsewhere. There has always been a ‘testing’ version of the distribution, which most developers will run, that provides more of the latest software. This gives the developers even less motivation to release, because they’re already using the newer applications. Debian also had a reputation for being difficult to use (although I liked hacking the text file configurations), again because the developers had no commercial motivation to make it usable for non-developers.

Debian was suffering from these effects, and Redhat gained in popularity. Debian’s superior package format, the "deb" (don’t remember if it had a proper name), even came under great pressure from Redhat’s rpm format. Then came the derivative distributions. These were generally based on the ‘testing’ version of Debian, which was still comparatively stable. The first of these, Corel Linux and Storm Linux, had limited success, but they share the same motivations as Ubuntu and other Debian-derivatives. They wanted to tap into the power and stability of Debian, but provide more recent software versions and greater usability.

These derivatives breathed new life into Debian, and the ‘deb’ package format. It gained a great deal of influence.

Ubuntu

Ubuntu has surpassed its siblings and become very successful. This may be because the other distributions were perceived as too commercial, with a lax attitude towards software freedom. Ubuntu seemed to share Debian’s values, while succeeding in its other objectives.

Ubuntu seemed to have the same devotion to Free Software, but fixed the problems inherent in a volunteer-run distribution.

It is backed by a commercial entity, Canonical, so it has the motivation to deal with Debian’s issues. They include up-to-date software, with a brisk six-monthly release cycle, and they have created one of the most user-friendly GNU/Linux distributions out there.

That’s why I chose it. I thought I was getting the best of both worlds. A commitment to Free Software, and a user-friendly, up-to-date Debian.

I actually think that’s what the Ubuntu community want. They showed great support for Debian with their position on Firefox (see "Fire and Ice"), even though Canonical let them down by ignoring the issues. Ubuntu are also famous for using a non-free distribution management system ("Launchpad").

Why Choose Ubuntu?

It would seem that Ubuntu’s weakened commitment to Free Software would be a good reason to choose Debian. However, you would then have to deal with the problems listed above.

If you take Ubuntu as your base, you have a user-friendly, up-to-date distribution, that inherits Debian’s stability. Most of Ubuntu is Free, so they’ve done a lot of the hard work for you.

In fact, even though Ubuntu includes recent software, it isn’t just a reproduction of the Debian ‘testing’ version. They’ve done a lot of work to make the distribution stable with these software versions.

A big consideration is the fact that Ubuntu is just one CD, whereas Debian takes up 15 CDs. For a project with few resources, this is a significant factor.

Ubuntu is also a very popular distribution. The effectiveness of piggy-backing on this popularity should not be underestimated.


I hope this post has been useful in understanding the reasons that gNewSense have for choosing Ubuntu as their base distribution.

Because of this choice, we have a user-friendly, up-to-date GNU/Linux distribution that is completely Free. I’ve now got what I was looking for - the best of both worlds.

Disclaimer: These are my opinions. I haven’t asked the gNewSense guys why they chose Ubuntu. These ideas just seemed logical to me.

Related posts:

Links:


GNU Free Documentation License

Copyright (c) 2006-2007 Michael J Kaye.

Permission is granted to copy, distribute and/or modify the content of this blog post under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts.
gnu/linux, ubuntu, gNewSenseNovember 7, 2006 12:29 pm

An Ubuntu gNewSense

gNewSense LogoIt’s amazing how much I’ve learned since starting this blog.

Last week I talked, in the "Fire and Ice" post, about how Firefox is not wholly Free Software. In that post, I detailed the attempts by Debian and Ubuntu to exclude the non-free parts of the package, so that they had a Free Software distribution. This week I have learned about a new GNU/Linux distribution, sponsored by the "Free Software Foundation", that aims to only include 100% Free Software. That project is gNewSense, which released version 1.0 on November 2nd, and it removes the non-free parts of Ubuntu.

Why?

I have been quite shocked to find out that the standard Linux kernel contains binary-only "blobs", to enable the use of certain hardware. This seems clearly to be in violation of the GPL, and is unquestionably not Free.

gNewSense have created a distribution based on Ubuntu, but they have removed these blobs from the kernel. They have also removed the restricted repositories, and they do not use Canonical’s proprietary Launchpad system for bugtracking, translation, etc. It should be noted that Canonical state that they intend to release Launcpad as Free Software in the future.

This is important for those of us who believe in software Freedom, and who use GNU/Linux because of that Freedom and not because of the price. I am really quite concerned that I hadn’t heard about these "blobs" before now, and it seems that they are tolerated for the sake of popularity. Popularity, of course, is important to increase the clout of Free Software, but sacrificing Freedom in the process is hypocritical and does not encourage hardware manufacturers to participate in that Freedom.

Problems

Of course, if you remove those blobs, then some hardware won’t work. It becomes necessary to research a purchase before you make it. Wireless cards seem to be the most problematic. However, this has been an issue with GNU/Linux for years. I always research hardware compatibility before buying. Of course, this has improved in recent years, but I’m disapointed to find out these blobs are why.

If you would like some resources to research compatibility, have a look at the links at the end of this post.

Why Ubuntu?

  • Ubuntu is Debian-based. Debian was probably the closest to being a 100% Free GNU/Linux distribution.
  • Ubuntu addresses many of the criticisms directed towards Debian. It is desktop-oriented, easy to use (even for new users), and is released often, with the latest software versions. In fact, Ubuntu could possibly be criticised for sticking too rigidly to their frequent release schedule.
  • Debian is renowned for being one of the most stable operating systems in existence, and Ubuntu inherits a lot of that stability.
  • Ubuntu is very popular, which should lead to rapid recognition of gNewSense.

Current Status

The newly released gNewSense 1.0 is based on Ubuntu 6.06. It’s a shame that it’s behind, but it’s understandable considering it’s basically been a two-man band. I like Ubuntu 6.10, especially Upstart, and I hope they can release gNewSense based on that version soon. In future, I hope they can work in Ubuntu unstable until the Ubuntu release, which should reduce the lag.

I have read that Debian plan to address the issue of the Linux blobs, and that should filter through to Ubuntu. It remains to be seen what role gNewSense would have at that stage.

gNewSense is sponsored by the "Free Software Foundation", which is not only an endorsement of their aims, but a boost to their chances of success.

– 

I hope that gNewSense is a resounding success, and I certainly intend to move to it from Ubuntu. Hopefully it will stir people into action, experience heavy development, influence the removal of the Linux blobs, and prove the power of Free Software.

Links:

Hardware Compatibility Links:


GNU Free Documentation License

Copyright (c) 2006-2007 Michael J Kaye.

Permission is granted to copy, distribute and/or modify the content of this blog post under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts.
gnu/linux, ubuntuNovember 3, 2006 5:04 pm

Young Upstart

As promised this will be the first in a series of posts about Ubuntu 6.10.Ubuntu logo

Probably the most talked about feature of the new Ubuntu is Upstart. This is an event-based, asynchronous sysvinit replacement. Most users will just notice that their computer boot and shuts down faster (significantly faster in my case).

Upstart is being developed by an Ubuntu developer, Scott James Remnant, but it’s hoped that most other distributions will also use it in future.

Oldskool init

From Wikipedia:

init (short for "initialization") is the program on Unix and Unix-like systems which spawns all other processes. It runs as a daemon and typically has PID 1.

The functionality diverged considerably between BSD and System V. The usage on most Linux distributions is compatible with System V, but some distributions, such as Slackware, use a BSD-style and others, such as Gentoo Linux, have their own customized version.

Given that Upstart was largely designed to replace sysvinit, and retain compatiblity, I shall cover it briefly here.

Runlevels

sysvinit uses "runlevels". The initialisation process involves starting services and performing tasks required for each runlevel, before moving on the next. Most machines will continue until reaching the multiuser runlevel, which on Debian and Ubuntu happens to be 2.

Order

This process requires that things are done in a predefined order, and relies on hardware being in a suitable state before things can move on.

Upstart

Upstart was designed to solve two main problems. Boot/shutdown speed, and modern hardware flexibility. It also aims to do this in a compatible manner, allowing affected programmes to run unchanged.

Speed

This problem is solved by making Upstart asynchronous. That is, it will perform number of tasks at once, rather than doing everything in a linear fashion. The difference is quite noticeable.

Flexibility

When System V was written, you could rely on hardware being available at specific times during the boot process, and that disks were always there. Today’s computers are far more flexible. You may want your home directory to be mounted on an external USB hard disk; your network card may be a wireless USB dongle; a network drive may only be available when you are within range of a Wireless Access Point.

Upstart tackles this issue by being event-based. When certain hardware is available, or a subsystem is running, then it will perform appropriate tasks - such as mounting the external drive as /home when the USB subsystem is up.

This should mean that unnecessary services are not started, which should mean a reduced memory footprint, and improved performance. Also, Upstart restarts services if they crash, reducing the need for reboots.

Compatibility

One ingenious aspect of Upstart is that it has been designed to be compatible with sysvinit. This means that it’s almost a drop-in replacement, but still gives the increased performance and flexibility.

Upstart has its own format for tasks, but achieves the compatibility by also supporting sysvinit scripts.

Future

Ubuntu also hopes that Upstart can replace cron, atd, and inetd.

Cutting Edge?

Is Upstart cutting edge?

Upstart uses a very different approach for the initialisation process. It also surpasses other attempted replacements, such as Initng, in features, ingenuity, and success.

Yes, I would say that Upstart is cutting edge. 

I look forward to seeing the further developments of Upstart, and its adoption by other distributions.

Links:


GNU Free Documentation License

Copyright (c) 2006-2007 Michael J Kaye.

Permission is granted to copy, distribute and/or modify the content of this blog post under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts.
gnu/linux, ubuntu, debian, firefox, iceweaselOctober 30, 2006 12:42 pm

Fire and Ice

Possible IceWeasel logo, as designed by some of the folks at UbuntuI noted in "Firefox 2.0 Released" (right at the bottom with the Wikipedia link) that I would blog about Firefox not being as Free as I had thought. Well, here is that blog.

Here I explore the issues that have given rise to the Debian IceWeasel package, and the GNU IceWeasel project.

Firefox Restrictions

Firefox is very successful, and is a great testament to the power of opening up the code. However, it has come to light that there are some small things in Firefox that are not completely Free.

There are three main problem areas:

  1. The source code for the Talkback (crash-reporting) application is not provided.
  2. The Firefox name is trademarked, and Mozilla will not allow modified versions of the programme to bear the name unless they approve the changes.
  3. The artwork used in Firefox, including the logo, is covered by a proprietary license, which again restricts modification.

Debian

These problems came to light when Debian wanted to include Firefox in its distribution. The above restrictions would not meet the Debian Free Software Guidelines (the standard measure of when a programme is Free, in my opinion), so they can’t distribute Firefox in its current form.

Debian chose to distribute Firefox without the restricted components. However, Mozilla informed them that they could not use the Firefox name for a programme that did not use the official logo. Hence the genus of the name "IceWeasel" (the relation to the Firefox name is obvious).

Debian are planning to remove the "Firefox" name from the package in the next release (Etch), but they are very close to a feature-freeze, which will make this difficult to accomplish.

For the (very long) discussion on the matter, between Mozilla and Debian, see here.

IceWeasel

To complicate matters, there is a separate but related project, from GNU, that has adopted the IceWeasel name. The above Debian project is simply a recompiled Firefox using options that allows them to exclude certain parts, and use their own artwork. The GNU IceWeasel is a fork of the Firefox code that has a more wide-reaching aim. This is a part of the Gnuzilla project, which also includes IceDove (their version of Thunderbird).

In addition to providing Free artwork (that the Debian version plans to use), they include some privacy features:

  • The disabling of cookie-tracking from zero-size images.
  • Warning the user about link redirects, also used for tracking.
In accordance with their adherence to Free Software, the GNU IceWeasel will only look for Free plugins.

GNU IceWeasel aims to be a permanent Firefox fork that takes care of these restriction issues. It could serve as a common upstream provider of a package for GNU/Linux distributions that prioritise the Freedom of their software. Developments in Firefox will be included in IceWeasel.

I hope they make a Windows version. It may seem odd to be so particular about software Freedom when running a proprietary operating system, but some of us can’t choose the OS used in our place of work and choose as much Freedom as we can.

Ubuntu

Ubuntu have the same priorities as Debian when it comes to software Freedom, and they look set to go the IceWeasel route. In fact, they have done some great work on possible logos (forum thread, and wiki). However, presumably because of time restrictions, they have shipped the official Firefox build, with the official (restricted) artwork in Edgy (6.10).

Although I understand the pressures of their release deadline, and their commitment to maintaining their release schedule, I’m disappointed in this decision. IIRC, in Breezy (5.10) they shipped a Firefox without the restricted artwork, and renamed to something like "Mozilla Browser"; in Dapper (6.06), they shipped a Firefox without the restricted artwork, but with the Firefox name. Now they have a release with non-Free artwork and a source package that cannot be modified with the DFSG Freedoms. This compromise has an unpleasant feel to it, but I’m sure it will be resolved by 7.04 (Feisty).

This is still a fluid situation. But it has highlighted some areas that question Mozilla’s commitment to software Freedom. I understand their desire to protect the browser’s reputation, but the GPL gives some protection in this matter by stipulating that derived works be marked as such. The MPL alienated them from the Free Software community at first, but they made the courageous decision to triple-license with the GPL and LGPL. I hope that they realise their current stance is incompatible with Free Software ideals, and that they adjust their position to pre-empt the chance of being alienated again.

It should be noted that Mozilla only became this aggressive in their approach since the control of such matters transferred from the Mozilla Foundation to the Mozilla Corporation. The same trademark enforcement issues apply to Thunderbird, and as mentioned above, have given rise to IceDove.

Links:


GNU Free Documentation License

Copyright (c) 2006-2007 Michael J Kaye.

Permission is granted to copy, distribute and/or modify the content of this blog post under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts.
gnu/linux, ubuntuOctober 27, 2006 12:39 pm

Ubuntu 6.10

Just a quick post to let you know that the new version of Ubuntu, 6.10, has been released. You can download it from the Ubuntu web site.

This release, named "Edgy Eft", comes only four months after their previous version. They normally try to keep to a six-monthly release cycle, but making the last version stable enough for a production environment delayed it by two months. "Edgy" is a slightly more experimental release, using less-thoroughly technology, and is not expected to be suitable for everyone. It does, however, give people like me chance to play with the new stuff. ;-)

I’ll say more about it once I’ve had chance to install it.


GNU Free Documentation License

Copyright (c) 2006-2007 Michael J Kaye.

Permission is granted to copy, distribute and/or modify the content of this blog post under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts.