embedded linux: the long road from GPL code release to Debian release

The redoubtable Harald Welte recently blogged some thoughts about lack of value contributed back to linux from embedded system vendors:

How many times have you seen some code coming out of a "GPL code release" from one of the many (mostly embedded) vendors that was acutally useful to be contributed back to an existing Free Software project, or even that spawned a new Free Software project? I for my part am certain to say: Zero. The actual number might be close to zero, but very small anyways.

I was thinking about this in the context of my nslu2 box, which just a few days ago passed an important milestone -- full support in the Debian kernel, including a free, rewritten ethernet driver, a fixed RTC, a free boot loader, and hopefully soon, even working LED support. The perfect embedded system.

nslu2.jpg This is an embedded linux box that started out running a typically awful special-purpose, dead-end linux distro, and which has been rescued to be a general-purpose linux box running a standard linux distro thanks to the work of a great many people. The road from the original firmware to the current system has been long, complex, and hard; you can see glimpses of parts of it here and here.

Here's the thing: This box is a computer designed from the ground up to run linux. Working code was made available by Linksys. As Harald notes, this code was probably "throw-away software", but if the box hadn't been running hacked up Linux in the first place, I dare say we'd not be running stock Debian GNU/Linux on it now. So there is a value in a vendor deciding to use Linux on their embedded system, even if it's only as a proof of concept that it works, as a first step along the long road to doing it right.

Posted
DWN bits 2

More bits for DWN, which published some of the previous ones last week.

A release update was posted by Andreas Barth. Items discussed include the full freeze of Etch (delayed slightly), the kernel firmware issue (considered resolved by the release team), an analysis of remaining release critical bugs, and some final changes to the release policy including LSB 3.1. All developers should read the full email for details.

Work continues on d-i RC1. Everything is in place and only some building and testing needs to be done before the new version of the installer is released. Development work on etch's installer after this will be limited to bug fixes, and an update to the 2.6.18 kernel. Frans Pop posted a todo list and an updated timeline.

ARM v3 support. There was a thread on debian-arm about whether etch should support the arm v3 instruction set, used in a few older arm systems, but not supported by mono. Wookey said "Yes. I think the time has come for arm to drop v3. It might have been better to anounce this earlier, but never mind." There were no objections.

Posted
back on the bike

I've been filling in a bit for fjp this week as he has limited time right now due to being in Bhutan. It's funny how much of the details of getting a d-i release out you can forget in less than a year, and things have gone slower than I'd have preferred, but we seem to be getting there.

Posted
broken

I fell less than 2 feet and managed to get a minor fracture of my radius at the elbow, so I'm in a sling and will get to practice being right-handed for a few weeks. Typing so slowly feels almost like being struck mute.

Posted
OpenID

I took some time today to learn about OpenID.

Is it just me or are these newfangled web protocols both much harder to learn and much more poorly specified than traditional internet protocols? Alternately, perhaps I'm getting too old. :-)

Anyway, it's seems to be Not Evil, and I look foward to being able to log into wikis and other sites without having to register separately on each one. Although I note that it punts the spam and abuse problem to some as-yet unimplemented policy layer. After all, there's no mapping between an OpenID and an actual person, just between an OpenID and a web page somewhere. Although there is the potential for someone to do something interesting with an OpenID server that only gives out OpenIDs to people with verified gpg keys.

As my own little gesture toward spreading OpenID, I've added an openid plugin to ikiwiki.

There's a $5000 bounty for implementing OpenID support in free software projects, but I don't think I can collect on it, since it's limited to projects that have tens of thousands of users, and with 30 registered ikiwiki users, my userbase is a few magnitudes too small. Oh well..

FWIW, my personal OpenID is http://joey.kitenet.net/.


Update after some more hacking: Even nicer, ikiwiki can now be set up to use only OpenID for authentication, and not mess with passwords at all. I also added support for the MyOpenID.com affiliate program, which lets users jump from the wiki to creating an OpenID, and back smoothly. My personal wiki is now configured like this.

discussion

Posted
DWN bits 3

I skipped a week or two due to injury and lack of energy, but here are some more items for dwn.

d-i etch RC1 was released, featuring a 2.6.17 kernel, easy setup of encrypted LVM, improved installation automation, and the return of installation floppies for i386, plus many other improvements and bug fixes. The improved NSLU2 support in this release in particular seems to be attacting a lot of attention. An RC2 with 2.6.18 is due soon.

A release update was posted by Steve Langasek, it discusses an update of the timeline for release, calls for increased testing of etch, updates the release goals, and last but not least, unveils the codename for etch+1: lenny

Changes are afoot to ftp-master.debian.org. While not yet officially announced anywhere, it's moved to a new, much more powerful server with terabytes of disk. Also, a new gpg key has been added that will be used to sign etch's release files for the lifetime of etch. Since this key isn't yet in the debian-archive-keyring package, there might be some minor issues when using apt, and debmirror is known to be broken by the unknown key. For now, the new key (6070D3A1) can be downloaded from subkeys.pgp.net.

apt-zeroconf was announced by Franz Pletz. This is a decentralised apt cache that uses avahi to find other instances of itself on the LAN and share packages back and forth. Perhaps this will be useful at the next DebConf, which is now open for registration.

The browser generally known as Firefox 2.0 has reached unstable as a new iceweasel package. Bug #354622 contains the sad backstory to this renaming.

discussion

Posted
end to second-guesing

A couple of years ago I had a nice chance to be employee approximatly #10 at Caonical and work on Ubuntu. I turned them down at the eleventh hour, and have been second-guessing that decision on and off ever since.

Today I realized I can stop worrying about whether I made the right decision back then, because it seems very likely that if I had joined them as employee #10, unless my contributions somehow made it develop much differently than it has, I would have left Canonical by now, for one reason or another.

Posted