Oskar Welzl: Weblog zur Homepage

Mein erstes Paket: Exif am N800

Ich bin schon wieder einmal so unglaublich stolz auf mich: Zum ersten Mal hab ich ein existierendes Programm aus der GNU/Linux-Welt auf meinen N800 (also: auf Maemo) portiert.

Das Programm, das ich angepaßt habe, ist Exif. Exif wird über die Kommandozeile aufgerufen und gibt die im Header eines JPG-Bildes verborgenen Daten aus. Von technischen Infos (Kameramodell, Blitz, Blende, …) über Längen- und Breitengrad des Aufnahmeortes bis hin zu einer Kurzbeschreibung des Fotos kann da alles drin sein. (Teilweise findet man sogar eine Kopie der Originalversion: also das Bild, so wie es war, bevor jemand das Gesicht wegretuschiert hat. *g*)

Exif ist keine „Killer-Applikation“ und grundsätzlich hätte man auch gar nichts anpassen müssen. Einfach den Programmcode runterladen und für ARM-Prozessoren kompilieren hätte gereicht.

Die Änderungen, die ich vorgenommen habe, sind daher auch keine Änderungen am Quellcode selbst. Der läuft am N800 völlig unverändert. Ich habe mir die Erstellung des Debian-Paketes näher angesehen und dort so eingegriffen, daß sich Exif nun möglichst optimal in die Infrastruktur des Maemo-Paketmanagements einfügt:

Sowohl Exif als auch die dahinterstehende libexif habe ich in drei Teile zerlegt, die unabhängig voneinander installiert werden können. Das spart Speicherplatz. Außerdem habe ich in den Beschreibungen der Pakete Maemo-spezifische Erweiterungen vorgenommen, damit der Programm-Manager die neue Software korrekt auflistet und erklärt. Vor allem aber (und das ist der eine Schritt, den viele Entwickler dann auslassen) wars mir wichtig, die angepaßte Version zum Maemo-Autobuilder hochzuladen. Nur so erscheint die Software nach einiger Zeit automatisch auf allen N800/N810-Tablets in der Liste der verfügbaren Programme, wird automatisch aktualisiert etc.

Obwohl ich im Endeffekt vielleicht gerade mal 50 Zeilen in kleinen Scripts geändert habe, wars eine ausgesprochen spannende Sache und mit viel Aufwand verbunden. Als alter gentoo-Nutzer hatte ich bisher keine Ahnung, wie Debian-Pakete funktionieren (und auf diese baut Maemo auf). Ich hatte keinen Tau von Makefiles (die man beim Ändern von Debian-Paketen editieren muß). Dann noch das Aufsetzen der Entwicklungsumgebung Scratchbox (irgendwie muß man ja auf einem x86-Rechner für ARM kompilieren können), das Hochladen zum Autobuilder (dafür muß man sich extra bei den Gurus anmelden und freischalten lassen) … viele völlig neue Themen für (ganz ehrlich) sehr wenig Output.

Natürlich war das so geplant. Ich wollte ja nicht wirklich in erster Linie Exif haben - das wäre ohne den ganzen Paket-Schmarrn auch gegangen. Ich wollte anhand eines ganz simplen, einfachen Programms die Grundlagen lernen, die ich dann vielleicht einmal auch für größere Projekte einsetzen kann. Außerdem: Ein bißchen was von Debian zu verstehen schadet sowieso nie. Etwas verwundert war ich, wie gut und einsteigerfreundlich die Dokumentation mittlerweile ist: Sowohl die Maemo-Spezifika (mit Packaging Policy Draft) als auch die Debian-Grundlagen waren eigentlich allesamt Copy-Paste-tauglich aufbereitet. Sehr schön gemacht.

Ach ja: Exif ist noch nicht wirklich im Programm-Manager zu sehen. Es gibt ein eigenes Entwickler-Repository („Extras-devel“), in dem man neue Software zunächst testen kann. Ich hielte es für verwegen, meine erste Schöpfung gleich nach wenigen Stunden in die freie Wildbahn zu entlassen. Wers trotzdem nicht erwarten kann und Exif ausprobieren möchte: Dieser Link sollte eigentlich, wenn man ihn direkt vom N800/N810 aus anklickt, das Entwickler-Repository freischalten und dann gleich die deutschsprachige Version von Exif installieren. Voraussetzung ist die aktuellste Version von OS2008.

 
erikhuemer meinte am :
schwer beeindruckt bin. ;-) 
ossi1967 antwortete am :
Genau das wollt ich hören!

Ich hab die Gschicht ja schon gestern im Pausenraum erzählt bei uns. Da war nix mit Glitzeraugen beim Zuhören und Maaah! Echt? Auch lokalisierte Description-Felder?! Wie hast Du denn das gemacht? Nein: Aufgstanden und gangen sans. (Und ich könnt fast schwören, daß noch nicht alle ausgeraucht hatten …)

;)

 
Deep_Blue meinte am :
Unverständlich
Das sind alles oberflächliche Ignoranten.

Also ich finde deine Artikel immer wieder spannend, aufregend und prickelnd.

Manche sagen aber, ich bin ein Schleimer :-)) 
ossi1967 antwortete am :
Und ich sag:

Du warst immer mein Lieblingskollege. Der charmanteste, attraktivste, klügste, wohlriechendste, optimistischste, humorvollste … ;)

(Wir sollten das weiter so machen. Ich find das schön. *gg*)

 
Deep_Blue antwortete am :
Vergesse
Du hast meinen knackigen Apfel-Po vergessen :-))) 
ossi1967 antwortete am :
Hab ich nicht

Vergessen hab ich ihn nicht (wie könnte ich!), ich wollte ihn nur nicht auch noch öffentlich erwähnen, sonst wird der Herr gagalop eifersüchtig!

 
gagalop meinte am :
3 wochen nix....
und dann so ein schaaaaas! danke ossi! ;) 
ossi1967 antwortete am :
Kusch,

sonst geb ich Dir eine Einschultung für Exif.

;)

 
Weitere Links zu …
Maemo: