Frustblogging, heute: Kurzsichtige Kerneldespoten

Vorweg: ich habe zeitlebens meines Wissens nicht mal einen Kommentar zum Linux-Kernel beigetragen — vielleicht disqualifiziert mich dies, das Folgende zu schreiben. Wenn es so wäre, so sei es. Kann ich besser mit um jedenfalls als mit so mancher hirnrissigen maximal problematischen Entscheidung der Maintainer des Linux-Kernels …

Und wieder geht ein Abend ins Land. Ob mein Sodbrennen von der unheiligen Idee, UTS_RELEASE aus …/include/linux/version.h nach …/include/linux/utsrelease.h zu verschieben kommt, weiß ich nicht. Vorstellbar wäre es jedenfalls.
Was mein Problem ist? Ach, eigentlich keines, ich wollte nur – packagemanagementkonform – motion 3.2.9 für Debian Etch bauen. Mal eben schnell, geht ja ratz-fatz mit Debian-Bordmitteln … Aber denkste, Puppe: vor den Erfolg haben die Herren Kernel-Matadore den »Errors were encountered« gesetzt:

Setting up cpad-kernel-source (0.10-3) ...
/var/lib/dpkg/info/cpad-kernel-source.postinst: line 49: [: too many arguments
Warning: kernel headers don't match running Linux version.
Building cpad module for Linux _CODE 13262 (this may take a few minutes)...dpkg: error processing cpad-kernel-source (--configure):
subprocess post-installation script returned error exit status 2
Setting up wacom-kernel-source (0.7.4.1-5) ...
/var/lib/dpkg/info/wacom-kernel-source.postinst: line 49: [: too many arguments
Warning: kernel headers don't match running Linux version.
Building wacom modules for Linux _CODE 13262 (this may take a few minutes)...dpkg: error processing wacom-kernel-source (--configure):
subprocess post-installation script returned error exit status 2
Setting up fakeroot (1.5.10) ...
Errors were encountered while processing:
cpad-kernel-source
wacom-kernel-source
E: Sub-process /usr/bin/dpkg returned an error code (1)

So auf Dauer nervt das schon etwas, also fütterte ich die allwissende Müllhalde und bekam auch eine nur bedingt hilfreiche Antwort. Großes Kino also, eine Variable. die Skripte zur Ermitteln der Version der Kernel-Sourcen nutzen, wird mal eben von version.h nach utsrelease.h geschoben. Raider heißt jetzt Twix — und der Build bricht ins Essen:

rescue:/old-raid# more /usr/src/linux-headers-2.6.18-5-k7/include/linux/version.h /usr/src/linux-headers-2.6.18-5-k7/include/linux/utsrelease.h
::::::::::::::
/usr/src/linux-headers-2.6.18-5-k7/include/linux/version.h
::::::::::::::
#define LINUX_VERSION_CODE 132626
#define KERNEL_VERSION(a,b,c) (((a) << 16) + ((b) << 8) + (c))
::::::::::::::
/usr/src/linux-headers-2.6.18-5-k7/include/linux/utsrelease.h
::::::::::::::
#define UTS_RELEASE "2.6.18-5-k7"

Lustigerweise – die Kiste, wo ich grade drauf builde, diente initial als Rekontruktionskiste für ein nach einem Doppel-RAID-Fehler unpäßlichen Devices – findet sich auch noch ein älteres version.h, welches diesen Dünnsinn nicht mitgemacht hat:

rescue:/old-raid# more /old-raid/angua/usr/include/linux/version.h
#define UTS_RELEASE "2.6.18"
#define LINUX_VERSION_CODE 132626
#define KERNEL_VERSION(a,b,c) (((a) << 16) + ((b) << 8) + (c))

Finde ich jedenfalls alles richtig suuuper. Da hat jemand aber wirklich den Bruchteil einer Sekunde nachgedacht, bevor #define UTS_RELEASE aus version.h eliminiert wurde. Höchstens den Bruchteil einer Sekunde …
Danke dafür.

SessionManager-=∞

Drecksteil. Lange Zeit hat mir die Firefox-Extension Session Manager gute Dienste geleistet; endlich brauchte ich keine Angst mehr davor zu haben, JavaDrecksApplikationen zu starten (die gerne mal den Browser in den Grand Canyon stürzen) oder flashverseuchte Seiten zu betreten, die selbst einen Core 2 Duo zu 100% auslasten …
Seit mehreren Monaten allerdings sichert Session Manager nur noch willkürlich irgendwas, was entfernt mit meiner aktuellen Session zu tun hat. Üblicherweise fehlen die in den letzten 15 bis 30 Minuten (teils auch noch früher) geöffneten Tabs in den Firefox-Fenstern — natürlich super, wenn man, wie ich, typischerweise im zweistelligen Bereich Tabs offen hat und grade Google-Ergebnisse (Google lief bei mir – nicht über T-Offline surfend – übrigens den Tag über anstandslos) nur per Klick auf den mittleren Button (»open in new tab«) öffnet.
Speichere ich die Session explizit, sind alle Tabs in allen Fenstern gesichert; wenn aber, wie eben, Firefox unversehens crasht, dann wäre es schön, in der »autosave session« mehr als nur die Tabs von vor einer Stunde zu haben (und noch etliche schon längst geschlossene dazu).
Und die Moral von der Geschicht’?

Fixe die Bugs, workarounde sie nicht!

*seufz*

Mobile TV per UMtsumtsumts …

Ich hatte gestern etwas Langeweile Muße und habe mein kostenloses Bundesliga-per-MobileTV-Abo mal ausprobiert. Und ja, es rockt, wenn man auf seinem Taschenkino aka Mobiltelefon dann 22 eigentlich erwachsenen Männern beim Ballspielen zusehen kann.
Sicher, so eine Mobilfunke hat eine etwas kleinere Diagonale als ein 32″-Flatscreen, Zugegeben, die Bandbreite ist nochmal deutlich geringen als bei DVB-T (aber es sind auch weniger Pixel zu transportieren, siehe vorigen Punkt). Naja, ganz verlustfrei ist die Funkverbindung nicht, nicht mal beim stationären Einsatz wie hier (wie hätte ich unterwegs die Aufnahmekamera fixieren sollen?) und 3G-Vollausschlag. Ok, und eine Halbzeit Bundesliga-TV kostet rund 40 Prozent Akku. Und auf Anrufer sowie SMS möchte man auch verzichten, da zumindest das N95 MobileTV bei Anrufen stumpf abwürgt und SMS zumindest Ruckler ergeben.
Aber sonst? R0x0r!

Ob ich mir das gekauft hätte, wenn ich dafür zusätzlich (sichtbar) zahlen müßte? Muhahahaaaaa, genau. Ich zahle auch gerne 5 Cent mehr pro Liter¹, damit ein 1-Euro-Jobber meine Wagen betankt anstelle dies selbst zu tun … Soll heißen: nein, ich halte das für eine lustige Spielerei, aber ohne zumindest derzeit ersichtlichen Wert.
_____

¹ Das war der Satz in Italien (ja, reingefallen; aber zum leeren Tank war das doch eine Alternative ;)), was dieser neue »Service« bei Shell kostet, weiß ich nicht.

No Fix!

Leider kann ich des tableteer’s Euphorie ob des Fixings eines Bugs in der Maemo-Variante von gpsd nicht ganz teilen. Heute abend jedenfalls hat mein N810 – wieder einmal – ewig gebraucht, um einen GPS-Fix zu bekommen — genauer gesagt hat es genau dies Kunststück auf der Strecke vom Brauhaus bis zu meiner Wohnung nicht vollbringen können.
Dafür – woran auch immer dies liegt –, rockt men GPS im N95 jetzt. Nein, kein Firmwareupdate bislang; vielleicht muß man das Teil nur einfach öfter mal nutzen? Jedenfalls fixt mein N95 unter freiem Himmel zumindest mittlerweile so schnell, teilweise schneller, wie mein N810. (Es vergehen – gefühlt – aber weiterhin Äonen bis zum Fix, verglichen sowohl mit meiner BT-GPS-Maus als auch unseren Navis für’s Auto …)

WLAN-Dichte

Da ich schon gefragt wurde, warum es in den letzten Tagen kaum Blogeinträge gab, hier der Ansatz einer Rechtfertigung ;)
Es ist schlicht ein Zeitproblem. Abgesehen von der Vorbereitung des alljährlichen Kampfes mit der Hydra namens Finanzamt (dieses Jahr mit neuem Konfliktpotential), den ich dieses Mal deutlich vor der Jahresmitte abschließen möchte (da dieser Stasi‐Staat keine zinslosen Darlehen von mir mehr verdient), spiele ich derzeit verstärkt wieder mit Kismet und gpsmap herum.
Leider funktioniert Kismet derzeit auf dem N810 derzeit mehr so gar nicht:

[...]
NOTICE: Opened associated network xml file './n810/media/mmc1/kismet//Kismet-Feb-05-2008-3.xml'
WARNING: Skipping file 'n810/media/mmc1/kismet/Kismet-Feb-05-2008-3.gps', too few sample points to get valid data.
NOTICE: Processing gps file 'n810/media/mmc1/kismet/Kismet-Feb-05-2008-4.gps'
WARNING: Parse error at line 8: no element found
NOTICE: Opened associated network xml file './n810/media/mmc1/kismet//Kismet-Feb-05-2008-4.xml'
WARNING: No sample points found in 'n810/media/mmc1/kismet/Kismet-Feb-05-2008-4.gps'.
NOTICE: Processing gps file 'n810/media/mmc1/kismet/Kismet-Feb-05-2008-5.gps'
WARNING: Parse error at line 1: no element found
WARNING: No sample points found in 'n810/media/mmc1/kismet/Kismet-Feb-05-2008-5.gps'.
NOTICE: Processing gps file 'n810/media/mmc1/kismet/Kismet-Feb-05-2008-8.gps'
NOTICE: Opened associated network xml file './n810/media/mmc1/kismet//Kismet-Feb-05-2008-8.xml'
WARNING: Skipping file 'n810/media/mmc1/kismet/Kismet-Feb-05-2008-8.gps', too few sample points to get valid data.
Processing 66573 sample points.
[...]

SSHFS zum N810 rulez, BTW ;) Kismet an sich funktioniert, aber die Anbindung an den gpsd scheint rottig, kein Vergleich zu ausgewachsenen Linux-Systemen :( Übrigens: eine beherzte rmmod-insmod-Kombination reanimierte das nach Kismet-Läufen auf dem N810 gerne unglückliche WLAN bei mir bislang ohne Reboot-Notwendigkeit. Ein Wort der Warnung allerdings: wiederholt hatte ich hiernach später Crashes des N810, ggf. ist derzeit ein säubernder Reboot die bessere Wahl.
Mich interessiert ja schon länger die Verbreitung von WLANs, u. a. sehe ich jene auch als Indikator für die Durchsetzung der DSL-Technik. Getriggert durch eine Anbindung von gpsmap an Google Maps habe ich also meinen alten Scan-Laptop ausgegraben und wieder ein paar Touren unternommen. Das Resultat ist zwar noch nicht so umfassend wie anderswo, kann sich aber auch durchaus sehen lassen. Super wäre jetzt natürlich eine funktionierende Kismet-Installation auf dem N810, die man somit auch auf Spaziergängen usw. dabei haben könnte — grade in der Innenstadt wäre das bestimmt interessant ;)
Der nächste Schritt wäre jetzt eine RO.B.IN-like Firmware (also was mit Meshbildungsoption) für die üblichen Verdächtigen unter den WLAN-Routern, sprich Fritzboxen, Speedports und Netgears … Die mittlerweile vielerorts erreichte WLAN-Dichte würe sogar über die unterschiedlichen Kanäle wahrscheinlich schon nette Meshes erlauben und damit weite Bereiche einer Straße, wenn nichdt gar eines Stadtteils, abdecken. Und dank Meshing wäre es nicht einmal notwenig, daß viele ihren DSL-Anschluß öffneten — das reine Weiterleiten eines Meshsignals würde schon viel helfen und infrastrukturelle Arbeiten überflüssig machen. RO.B.IN. auf Foneras (die »La Fonera« ist derzeit für ca. 25,— Euro bei Fon zu bekommen) rockt jedenfalls — echtes Plug-and-Play, deutlich weniger Aufwand als bei den bisherigen Freifunk-Ansätzen dank MAC-basierter IP-Adressvergabe.
Aber dazu folgt bei Gelegenheit mal ein anderer Blogeintrag ;)

Always on mit dem N810

16 Tage habe ich mein N810 nun, und bislang – klopf-auf-Holz – bin ich, zu meinem eigenen Erstaunen, noch immer sehr angetan.
Es wird sicherlicher spannend sein zu erleben, wie sich die Kapazität des Akkus über die Zeit entwickelt; bislang hält mein N810 jedenfalls einen acht bis zehn Stundentag durch, always on, entweder über WLAN oder BT/UMTS.
Dank der OpenVPN-Portierung – mit einer der Hauptgründe, warum mich die Internet Tablets (oder ein Eee-PC) reizten – ist mein Tablet über jede Verbindung mit einer festen IP-Adresse im Netz (mit negativen Effekten, denn ein schmalbrüstiges Internet Tablet »leidet« ungleich stärker unter den unsäglichen Portscans, denen man sich heute quasi zwangsweise aussezt bei einer Internetverbindung). Always on, nur Round-Trip-Time und Paketloss schwanken, siehe Grafik.
Etwas lästig ist, das die IM-Anwendung jeden Verbindungswechsel – ich vermute über dbus oder ähnliches – mitbekommt und proaktiv die Kommunikationsverbindungen kappt (also alle IM- und VoIP-Verbindungen kappt) — ein vollkommen unnötiges Verhalten beim Einsatz von VPN-Software, zumindest bei OpenVPN, und meines Wissens derzeit nicht beeinflußbar.
Positiv – rein akademisch betrachtet, natürlich – ist denn auch das Fehlen eines GSM/UMTS-Moduls, welches das Tablet zwangsläufig zum unter das Benutzungsverbot von Mobiltelefonen fallen ließe. So darf man es als wohl als Nicht-Telefon, z. B. beim Einsatz als Navi, im Auto benutzen …

Das N95 als BT-GPS – auch für's N810

R0xx0r! corona – der grade auch sein openvpn an den Start brachte – hatte gestern abend noch eine lustige S60-Applikation aufgetan: Symarctic ExtGPS.

Beta version of Symarctic ExtGPS is available for download.
Symarctic ExtGPS allows you to use your phone’s built-in GPS module externally on laptop via Bluetooth. It is mainly targeted for Nokia N95, E90, 6110 Navigator handsets, allowing you to use existing, more sophisticated GIS applications.

 
Und in der Tat, nach der Installation gibt’s einen neuen Service auf meinem N95:

Service Name: Symarctic ExtGPS
Service Description: Share phone's built-in GPS module via Bluetooth
Service Provider: Symarctic Solutions
Service RecHandle: 0x10040
Service Class ID List:
"Serial Port" (0x1101)
Protocol Descriptor List:
"L2CAP" (0x0100)
"RFCOMM" (0x0003)
Channel: 5
Language Base Attr List:
code_ISO639: 0x656e
encoding: 0x6a
base_offset: 0x100

Mit folgendem Eintrag auf meinem (Ubuntu-)Laptop

rfcomm4 {
bind yes;
device 00:1C:GA:GA:AF:FE;
channel 5;
comment "wusel's N95 ExtGPS";
}

(ggf. »/etc/init.d/bluetooth restart« nicht vergessen) war es möglich, mit »/gpsd /dev/rfcomm4« den gpsd zu starten und das N95 als GPS für meinen Laptop zu nutzen.
Nun ist das GPS im N95, wie auch das im N810, nicht das Schnellste, aber wenn es denn mal einen Lock hat, war zumindest das im N810 bislang relativ zuverlässig beim Halten des Locks. Was die Schnelligkeit und evtl. auch Genauigkeit angeht, präferiere ich mein Sirf-3 BT-GPS, aber es ist ja immer gut, ein GPS in Reserve zu haben ;)
Hinweis am Rande für N810-Nutzer: in Maemo Mapper ist die Angabe der BT-Adresse des zu verwendenden BT-GPS im Einstellungsdialog offensichtlich egal; in Einstellungen -> Steuerung -> GPS-Ort muß das Gerät – im Beispiel mein N95 – ausgewählt werden. Etwas haarig, aber nunja, wenn man’s weiß … ;)
P.S.: Da es mich grade erwischte — 100% stabil scheint die Java-Anwendung Symarctic ExtGPS noch nicht zu sein; nach Annahme und Beendigung eines Telefonates meldete das gekoppelte N810 »Verbindung zum GPS-Gerät verloren« und bot eine Wiederholung an. Jene schlug allerdings solange fehl, bis ich manuell auf dem N95, welches noch eine bestehende BT-Verbindung signalisierte, jene trennte (innerhalb ExtGPS möglich). Erst danach war ein Reconncet möglich. Welche Auswirkungen eine BT-Kopplung ans N95 als GPS auf die (automatische) BT-Kopplung an ein Headset hat, werde ich später erfahren ;)

IM for Beginners (like me)

Dank des N810 bin ich nun nicht mehr nur im IRC ‘always on’ (dort seit Jahren gelöst via screen), sondern, mit durch Netzwechsel hervorgerufenen Unterbrechungen, auch bei AOL, Jabber (GTalk) und, sofern ich die anderen Credentials noch finde, auch noch in weiteren IM-Netzen.
So weit, so schön; nur war es bislang ziemlich nervig, daß bei jedem Reconnect mich »aolsystemmsg« anchatten wollte und mir mitteilen, daß meine Kennung nun von >1 Ort aus eingeloggt sei, was ich durch Eingabe einer »1« hier beheben könnte (ausloggen aller anderer außer dem, der »1« antwortete). Menno, wenn Dein plöder Dienst damit nicht umgehen kann, warum kickst Du dann nicht automatisch alle alten Verbindungen? Für mein Nutzungsverhalten jedenfalls ist ein derartiges Dienstverhalten eher so braindead, wenn ich die Daten nicht in jeden Client bekomme, mit dem ich mich angemeldet habe, dann sollte das System alle bis auf den jüngsten Connect kicken – schließlich kann ich nur an einem Ort zu gleich sein (ok, praktisch kann auch das N810 sich in der Nähe eines anderen Rechners, wo ich einen IM-Client offen habe, befinden – aber auch dann reichte es mir, wenn nur die zuletzt aktivierte Verbindung benutzt würde) … Mal sehen, ob bzw. was das blockieren des Kontaktes, was mein N810-IM-Client mir als kontextsensitive Option anbot, bringt — oder sollte das gar nicht für sowas gedacht sein?
Egal, mittelfristig scheint sich auch AOL vom eigenen Protokoll zugunsten Jabber verabschieden zu wollen, damit verschwindet ja ggf. dieses imho nervige Verhalten über die Zeit. Corona bloggte übrigens schon vor rund einem dreiviertel Jahr, daß Jabber das Protokoll der Wahl aus heutiger Sicht wäre — sofern der Jabber bei AOL nicht nur eine große Nebelkerze ist, scheint er Recht zu behalten. One protocol to bind ’em all …

Mental note: beim nächsten Tableteers-Meeting mal die Jabber-Veteranen interviewen, wie ich meine IM-Clients (gaim (oder-wie-es-heute-grade-wieder-heißt) auf Desk- und Laptops; Psychatrie (heißt zumindest themenverwandt, der Client) unter Maemo) »richtig« konfiguriere. Bislang war mir die ganze IM-Welt egal, ich habe Anfang der Neuziger IRC für mich entdeckt und – zum chatten – bis heute nicht wirklich was vermißt. Da man aber heute über SIP-Anflanschungen an Jabber-Server sogar Telefonie, auf Wunsch mit Video, initiieren kann, ist es nach rd. zwei Dekaden des IRCens vielleicht auch für mich mal Zeit, auf einen neuen »Chat-Stack« zu setzen ;)

Ergebnis des Notbuch-Versuchs

Wie ich heute morgen ankündigte, habe ich den heutigen Tag (Workshop in anderem Firmen-Standort) genutzt, um mal anzureißen, wie gut bzw. ob man überhaupt mit dem N810 auch arbeiten könnte — auf Dauer sind telepathy-Tests einfach kein abendfüllendes Programm.
Während sich das N810 – nonstop online, bis auf rd. 30 Minuten zwischen dem feststellen, daß das 6630 schlapp gemacht hatte und dem Beginn dessen Ladevorgangs – durchaus tapfer als IM-Client (AOL, GTalk), eMail-Client (Claws-Mail) und Remoteconsole (ssh im xterm) via OpenVPN schlug, war, wie angedeutet, beim als BT-UMTS-Gateway benutzten 6630 nach gut drei Stunden Schicht im Schacht, der Akku war wieder einmal ratzekahl leer gesaugt …
Das N810 hingegen jammerte pünktlich mit der Heimkehr gegen 17:30 nach einem energetischen Refill — leider kann ich kein »uptime« zitieren, da just zu Hause beim Versuch, von UMTS auf’s heimische WLAN zu schwenken, das N810 sich zu einem Reboot entschloß :( (Zu dem Zeitpunkt liefen neben der Chat-Anwendung noch Maemo-Mapper sowei zwei xterms. Überhaupt hatte ich während Maemo Mapper und/oder Chat lief, schon des öfteren ziemlich brutale Reboots, um nicht zu sagen Crashes …)
Ich konnte in der Zeit Mails lesen, Anfragen per IM beantworten — insbesondere das Beantworten ging verhältnismäßig komfortabel über die N810-Tastatur. Ein Laptop- oder Desktop-Ersatz ist das N810 nicht, will es auch nicht sein, Eine hochmobile Ergänzung allerdings, ja, die stellt es meiner Ansicht nach durchaus dar. Jetzt fehlt nur noch ein vergleichbar lange durchhaltendes 3G-Endgerät — denn ein Internet Tablet ohne Internet-Verbindung ist einfach nur noch ein Drittel so nützlich :(
Blöd auch – zumindest, wenn man nicht ganz so gut deckende GSM-Netze nutzt –, daß nach einem GSM-Verbindungsabbruch eine Nachfrage kommt, die mir a) den Abbruch mitteilt und b) mich fragt, ob es erneut versucht werden solle ==> bricht mein E-Netz-Anbieter auf der Autostrada bei Tempo 180+ mal wieder mangels Netzabdeckung ins Essen, war’s das z. B. mit weiteren nachgeladen Karten (Maemo Mapper) oder auch der Koordinatenübermilltung nach Hause, bis ich zufällig mal wieder hingucke :( Eigentlich hätte ich gerne – schon wegen SIP – ein Always!-On!-Setup. d. h. es probierte immer und immer wieder bekannte WLANs bzw. die hinterlegte GSM-/GPRS-Einwahl … (Und die Kür wäre es, würde zur Verbindung auch das zugehörige Telefon vermerkt; derzeit gibt es logisch für das N810 und seine Anwendungen nur »das aktuelle Telefon«, über welches das N810 dann auch tapfer alle Konten probiert (sprich z. B. die Vodefone-Einwahl über das o2-Handy).
Naja, aber erstmal bin ich noch zufrieden; vielleicht gibt’s ja auch dafür »the source code to fix it«?

Notbuch N810

Mit geladenem Geek-Equipment (N810, 6630 als UMTS-Modem) geht’s gleich los. Das 17″-Lifebook bliebt hingegen heute zu Hause, auf dem anstehenden Workshop will ich mal testen, wie ernsthaft man mit der kleinen Spaßkonsole N810 auch »mal« arbeiten kann.
Mailkonten sind konfiguriert, OpenVPN aus dem Menü startklar — jetzt muß am Zielort nur noch UMTS von o2 vorhanden sein …