iPhone 4 mit iOS 4.2.1 und Ubuntu 10.10 “Maverick Meerkat”

Nachdem sich der Asus eeePC mittlerweile als überraschend brauchbar gezeigt hat (CPU reicht in jedem Fall für ein bisschen Browser-, E-Mail- und Terminal-Nutzung und sogar für Filme, wenn diese nicht in Full HD vorliegen), waren Verbindungsversuche zum iPhone 4 (iOS 4.2.1) leider nicht sofort von Erfolg gekrönt.

Eine kleinere Google Recherche lässt annehmen, dass das mit iOS 4.2 noch anders war, aber das hilft nach dem Update des iPhones auch nicht weiter. Glücklicherweise arbeiten wir ja mit einem Linux-System und nicht mit Windows – wir haben also Fehlermeldungen ;-)

Unable to mount iPhone_ org.freedesktop.DBus.Error.NoReply DBus error: MESSAGE DID NOT RECEIVE A REPLY (TIMEOUT MESSAGE BY BUS)

Plug & Play schaut anders aus – echt lästig, dass Apple seine Geräte mit jedem Softwareupdate an irgendeiner Stelle wieder etwas geschlossener Macht. Wenn MacBook, iPhone & Co. nicht so perfekt auf meine Bedürfnisse passen würden und so gut funktionieren würden müsste man in der Tat aufhören, Geld in Richtung Apple zu transportieren…

Wir haben es hier aber mit einem häufig auftretenden Problem zu tun, sodass die Lösung nicht allzu schwer zu finden war (und zwar hier und hier).

  • es braucht einige Paketupdates, die bisher noch keinen Einzug in die Ubuntu Repositories gefunden haben
  • diese sind unter dem Namen “PPA for Paul McEnery” bei launchpad.net zu haben
  • zentral hierbei sind die Pakete bgpod und iFuse, es werden aber noch ein paar weitere Pakete mit aktualisiert – wichtiger Hinweis an der Stelle: Der Asus eee PC mit Ubuntu dient für mich nur für 4 Wochen als “Urlaubsbegleiter” – ich bin daher nicht tiefer eingestiegen und habe nicht intensiv geprüft, wie sich die gepatchten Quellen aus o.g. APT-Repository unterscheiden. Wer es mit der Sicherheit ernst nimmt, will das bitte noch tun, bevor er die Pakete z.B. auf betrieblich oder privat dauerhaft eingesetzten Rechnern installiert!

Die Installation an sich ist ebenso einfach wie sie den Titel “Holzhackermethode” verdient ;-)

Erstmal die o.g. Paketquellen hinzufügen:

sudo add-apt-repository ppa:pmcenery/ppa

updaten & los:

sudo apt-get update

sudo apt-get dist-upgrade

Und voilà – das iPhone wird erkannt….

rsync zwischen MacOS (HFS+) und Linux (ext3) – und defekte Dateinamen

Bei umfangreicheren rsync-Läufen hier im lokalen Netz (ging um ca. 4 TB die von einem Ubuntu Server mit ext3 auf einen Mac mit HFS+ gehen sollten) stellten sich 2 Probleme heraus, die beim Sync zwischen Linux Maschinen nicht auftraten:

  • Ein großer Teil der Daten (und zwar alle mit Leerzeichen oder Umlauten im Dateinamen) wurde bei jedem rsync Aufruf neu übertragen, obwohl die Dateien sich nicht geändert hatten.
  • Umlaute waren z.T. defekt.

Eine längere Herleitung spare ich mir hier mal – statt dessen nur das Ergebnis der Recherchen, da das ggf. noch für jemanden nützlich sein könnte:

Das Problem entstand durch unterschiedliche Charsets auf beiden Maschinen:

Something else that can trip up rsync is a filesystem changeing the filename behind the scenes. This can happen when a filesystem changes an all-uppercase name into lowercase, or when it decomposes UTF-8 behind your back.

An example of the latter can occur with HFS+ on Mac OS X: if you copy a directory with a file that has a UTF-8 character sequence in it, say a 2-byte umlaut-u (\0303\0274), the file will get that character stored by the filesystem using 3 bytes (\0165\0314\0210), and rsync will not know that these differing filenames are the same file (it will, in fact, remove a prior copy of the file if –delete is enabled, and then recreate it).

You can avoid a charset problem by passing an appropriate –iconv option to rsync that tells it what character-set the source files are, and what character-set the destination files get stored in. For instance, the above Mac OS X problem would be dealt with by using –iconv=UTF-8,UTF8-MAC (UTF8-MAC is a pseudo-charset recognized by Mac OS X iconv in which all characters are decomposed).

(Die Erklärung stammt aus der rsync FAQ.)

Dem geneigten Mac-User fällt aber leider schnell auf, dass das mitgelieferte rsync den Parameter --iconv leider nicht versteht. Hier empfiehlt sich das Updaten z.B. über Macports – dazu hatte ich hier gerade schon ein paar Zeilen geschrieben.

Lange Rede, kurzer Sinn – nach dem rsync Update und der Angabe der Parameter schaut das bisher sehr gut aus. Folgender Kommandozeilenaufruf wird dabei verwendet:

rsync -a --modify-window=1 --stats --progress --exclude "*.frk"' --delete --iconv=UTF8-MAC,UTF8 root@SERVERNAME:/pfad/zum/Quell-Verzeichnis/ /pfad/zum/Ziel-Verzeichnis/

Kurznotiz: Darwinports, Fink und Macports

Nachdem Stefan in seinem Blog kurz und eindringlich von Darwinports abriet und Fink mich vor einiger Zeit schon nicht begeistert hatte, habe ich heute mal Macports eine Chance gegeben.

Kurzfazit:

  • Installation über einen Mac Installer (!), entsprechend problemlos und schnell
  • Installation von Paketen sehr einfach, automatische Auflösung von Abhängigkeiten klappt gut
  • binnen 15 min. gewechselt vom unerträglich schlechten RSYNC auf dem Mac zu einer aktuellen Version (rsync  version 3.0.7  protocol version 30)

Tipp der Redaktion, sozusagen ;-)

Cross-Plattform App Entwicklung mit jQuery Mobile

Hier eine sehr gute Info zum Thema “Cross-plattform Mobile Webapps” — der Autor des jetzt vorgestellten jQuery Mobile hat sich mit den Problemen der verschiedenen Plattformen und Browser befasst (und dem Testing) wenn man für diese Web Apps entwickelt (statt native Apps):

(Tipp von Oliver Wrede)

Test: iPhone 4 Tasche Maware CEO Flip-VUE

Beim Maware C.E.O Flip-VUE für iPhone 4 handelt es sich um eine schlanke Hülle die das iPhone sicher schützt. Es kann als Tasche, oder auch als Holster getragen werden. Die Tasche selbst ist aus echtem Leder das Innenfutter ist aus Wildleder. Als Desigmerkmal ist ein Streifen Stoff eingearbeitet der sich ein bisschen wir Neopren anfühlt. Die Nähte sind weiß abgesetzt. Sieht schick aus.

Maware CEO Flip-VUE

weiterlesen »