Lars Wirzenius: April, 2007


Monday, April 23, 2007

Debian: Package school date fix

Argh! I got the date wrong for the packaging tutorial. The correct date is May 9 (that's nine), not May 5 (five). Mea culpa.

Sunday, April 22, 2007

Debian: Packaging school, third time

I'll be giving the third installment of my Debian packaging tutorial on Wednesday, May 5, 17-21, at Arcada in Helsinki. There's a few places left, e-mail Simon Rönnqvist at if you're interested. He's taking care of the arrangements. There's no participation fee. If you can bring your own laptop, with Debian (or compatible system) and the package build-essential installed, things will be simpler.

Thursday, April 19, 2007

Rant: On projects targetting mobile environments

The GNOME project announced a GNOME Mobile & Embedded Initiative today. Here's a screenshot of the browser on my laptop of the web page:


What's wrong with the above picture? The browser window is around 700 pixels wide, which about as wide as you'd get on, say, an N800 Internet tablet gadget. Significant parts of the web page are unreadable. I have to go to about a thousand pixels wide to get the whole page be visible. This is no way to design pages for a mobile environment.

Other than that, it's obviously good. Not worth the hype, not worth keeping secret for months before the big revelation, but a good thing nevertheless.

Wednesday, April 18, 2007

Random hacks: Notetak 0.14

I've rewritten Notetak, my search centric note taking application for GNOME. The goal of the rewrite was to make the code clearer, and to get test coverage to 100% on the statement level. Both goals achieved.

Functionally, the new version should be identical to the old one, but I'm sure I missed something. Now that the code is clean again, I expect to start adding new things every now and then.

Wednesday, April 11, 2007

Debian: Etch release party in Helsinki

To celebrate the etch release in Helsinki, come have a few beers in bar Teerenpeli in Kamppi after 17 on Friday, the 13th. Everyone is welcome, this is not just a developer event.

See the etch release party wiki page for updates.

Sunday, April 08, 2007

Debian: It's full of chars!

The etch release is imminent, so I thought I'd run sloccount on an unpacked Debian source tree. I wrote a little script that downloads and unpacks all Debian source packages. It does dpkg-source -x only, no debian/rules unpack or such, since that isn't standardized. The result is a source tree that is 46 gigabytes.

Unfortunately, there is something in that tree that makes sloccount fail. It reports a mere 45 million lines of code, which is about 1022 lines per kilobyte. (Later, I'll narrow it down and report an actual bug. For now, the best I have is "something in Debian breaks sloccount".)

Sloccount would give fairly good results, and it would exclude, say, JPEGs, of which there are 455. However, in this situation the best I can easily come up with is a sum of running a plain wc -l on each file, and that sum is 1005505921. That's just over one billion lines of code, in 2868448 files, or 350.54 lines per file, on average.

Disclaimer: that sum includes many non-source files, such as the JPEGs, and a number of packages don't actually unpack properly with dpkg-source, you have to run some variant of debian/rules unpack. However, I'd be willing to bet the number is in the correct ball park. We can get better results once sloccount gets fixed.

Thursday, April 05, 2007

Random hacks: Lap tray

For a few years now, I've used a lap tray under my laptop when sitting in an armchair or sofa at home. It is basically a tray with a pillow below. It's been very nice: not only does it protect me from burns, it's just plain more comfortable than balancing the thing on my thighs and knees.

Unfortunately, it's been slowly disintegrating for the past couple of years. I decided to hire my cousin Johan Wirzenius the carpenter to make me a new one. Since I was ordering a custom one, I got to specify three new fancy features: the pillow is detachable (via velcro), and the tray is foldable, resulting in a more transportable whole. Also, the edges of the tray have grooves to hold cables in place, and the surface has grooves to allow better ventilation.

Below are four pictures of the tray, courtesy of my cousin.

lap tray lap tray lap tray lap tray

Four pictures of the new tray. The person is my cousin's assistant.