Tuesday, December 16, 2008

re: how many bugs have you fixed today?

Sorry Bastian, but that marthyrdon thing doesn't work. Debian has no shortage of talkers, GR-proposers, etc. We have shortage of people of actually doing stuff. Therefor it's only fair that people not bothering fixing bugs get criticized too. And not to mention that there is enough RC bugs open that you could *easily* fix one of them before making another blog post.

This post has been brought to you by fixing #508781 and #496104. (Can I has a meme plz?)

ps, that said, pretending reaching 0 RC bugs means we have a perfect release is delusional. Bugs are found at constant rate. If we fixed bugs faster and reached 0 RC bugs a month a go, the released lenny would now have all the RC bugs found during this month. Therefor it would make much more sense to align the release schedule based on something else, such as d-i schedule and fix any RC bugs left at that point with stable release updates. update: As noted by Dato, the release update essentially says the same.

armel/experimental buildd running

As the continued freeze of lenny has driven lots of interesting uploads to experimental, it was finally time to setup a armel buildd for lenny. It' now approximately half away done, and with the current rate it should be building the last package of the queue (openoffice) in the end of this week.

Our priorities are literal interpretation of SC and DFSG

The vocal extremists are not writing free software replacements for the propiertary firmwares. The only offered solution is "remove those non-free firmwares". That disconnects real world users from free software we provide. Which is directly against the *spirit* of SC:

Our priorities are our users and free software.

4222213

I am willing to change my opinion as soon as there are free firmwares for pc peripheral devices.

Sunday, November 30, 2008

pimp my x40

After a brief look at the market, I decided to keep using my sturdy X40. Looking at what could be done to improve the 4 years old workhorse, three things came to mind:

* new battery (old one dies in 45min, new one lasts easily 5+h)
* replace the hard drive (preemptively before it breaks)
* more ram (from 512MB -> 1.5G)



The only one worth detailing is the hard drive upgrade, since I decided to go SSD. less moving parts, less heat, less power consumption. I followed the Thinkwiki CompactFlash boot howto. This basically involves getting a CF-IDE adapter (from ebay, around $5) and any CF card. The first CF-IDE adapter $2.99, but it didn't work. After some research it was concluded that the SMT soldering was bad. The second adapter bought worked fine, and as a bonus the dimensions match the X40 HD perfecty:

In order to minimize writing to flash:

* Make sure root filesystem is mounted noatime,nodiratime (see /etc/fstab)
* make /tmp a tmpfs partition
* disable swap
* more tips can been seen at Linux on Flash guide

Generally I'm very happy with the results of the upgrade. X40 is now most of the time completly silent, without the spinning and clicking HD. Fan turns on less often than previously. The cheapo compactflash is fast enough on reading, and the REALLY slow write speed is usually not a problem thanks to the loads of RAM. Ofcourse, the exception is when a application uses fsync() ... which leads to.

FIREFOX SUCKS GOAT BALLS WHEN RAN FROM A SLOW SSD

Seriously. It's like watching snail cross a tarpit. That's what happens when you fsync() a 30MB places.sqlite on a 6MB/s write speed flash media every fucking time a page has finished loading (and seeming every now and then too). Now here's a really simple workaround: make ~/.mozilla tmpfs and rsync it to/from a backup dir every time you log in/out.

* /etc/fstab: tmpfs /home/user/.mozilla tmpfs size=100m,user 0 0
* and two helper scripts:

aardvark:~$ cat bin/mozilla-mount
#!/bin/sh
mount /home/$USER/.mozilla
rsync -av /home/$USER/.mozilla-safe/ /home/$USER/.mozilla/
aardvark:~$ cat bin/mozilla-umount
#!/bin/sh
rsync -av /home/$USER/.mozilla/ /home/$USER/.mozilla-safe/
umount /home/$USER/.mozilla


It does what mozilla should be doing in the first place - write to temporary files when running and on exit synchronize to the real database and fsync(). With this hack, suddenly the web browser UI doesn't freeze every time a page has finished loading.

You'll also want to disable the urlclassifier anti-forgery tool, which can grow to a over 50MB sqlite database which also gets fsynced all the time...

Monday, November 10, 2008

When Linux doesn't mean freedom

I actually think it's a bit of an insult if people think of Motorola's EZX or MAGX (and now Android) phones as "Linux phones". Because all the freedoms of Linux (writing native applications against native Linux APIs that Linux developers know and love, being able to do Linux [kernel] development) are stripped.
- Harald Welte


This is something that has worried me too for quite a while. For years we have now had Linux phones available in form or another (well, mostly in far away countries you happen not to be at). Yet with the exception of openmoko none of them allow native application development. Yet all the same time you can go to the nearest phone shop and grab HTC windows CE phone or a Nokia Symbian phone, which actually give you the freedom to writing and running your own software on them.


Now we have the situation that HTC's most locked device* is their only Linux device - The Android G1.


Incidentally, you can install Debian/armel on T-mobile G1, but only until Google engineers manage to fix the hole that gives you r00t.



*The only one that doesn't allow native app development.

Saturday, September 13, 2008

Marvell 78x00 board



What we are having here is a quite non-typical ARM based motherboard. It features a pre-production version of Marvell 78x00 series ARM SoC, clocked at 1GHz. It features multiple on-board sata and gigE connectors, as well as pci-e slots and DDR2 ram slots. Fairly "meh" in x86 world, but on the ARM world most systems are designed mainly for low power consumption, tiny size and low cost. Which, while creating allows creating many exciting devices, makes finding meaty buildd's tricky. When we intruduced armel port, the security people rose the concern that arm buildd's are too slow. Especially from the security Point of view, where getting security fixes out fast is important - every second of waiting for security builds to finish someone could be exploited!

Luckily, some people from Marvell had heard about our need and arranged to donate a developer board for us!

So far, the build speed improvement, compared to our current (Thecus N2100) buildd's is very promising. When looking at build times of some slow-building packages which likely will see security uploads:


Package | Thecus | MV78100 | HPPA | MIPS
linux-2.6 | 39h | 11h | 6h | 17h
webkit | 17h | 5h | 3h | 4h
qt4-x11 | 59h | 17h | 7h | 13h
xulrunner | 14h | 4h | 1.5h | 3h


We see that with a Marvell board we are more in the line with other architectures. And the production hardware is going to be even faster! There is a dual-core version as well, but it's not SMP. Both cores are independent, and would basically both run their own Linux image. If manage to find a easy way to implement and manage that, we could run two theoretically run two independent buildd instances on the same board.

See the Linux Devices article for more details about the MV78x00 in general.

Tuesday, September 9, 2008