Finally …
Momentan sitzen Nils und ich vor unserem Campervan, haben gerade Kaffee getrunken und Kuchen gegessen, und vertreiben uns unsere Zeit mit Bloggen, Photos bearbeiten und ausruhen – wie gut, dass der Campingplatz einen herrlichen Swimmingpool hat, der ungefähr 30 Meter von unserem Platz entfernt ist.
Das Ausruhen haben wir uns allerdings auch verdient, denn es liegen seit dem letzten Eintrag nicht nur weitere 900km hinter uns, sondern auch zweieinhalb Tage Campingplätze ohne „Facilities“ – d.h. Plumpsklo, fließend Wasser (kein! Trinkwasser) 50km entfernt – und wenn man den Tag mit Schnorcheln im Meerwasser und Wanderungen durch irgendwelche im wahrsten Sinne des Wortes staubtrockenen Felsschluchten verbringt, dann fühlt man sich abends dann doch schon reif für eine Dusche.
Nachdem wir Carnavon verlassen hatten, haben wir es mal wieder wie schon so oft nicht nicht wirklich weit ohne Stopp geschafft – wenn euch irgendwer von komischen Touristen berichtet, die im Campervan durch Australien reisen, plötzlich mitten in der Wildnis anhalten, umdrehen, 100m zurückfahren und mit Kameras bewaffnet aussteigen, dann könnten Nils und ich damit gemeint sein.
Diesmal, um endlich einen Thorny Devil zu fotografieren – sehr seltsame Tierchen, entgegen ihrem Aussehen vollkommen harmlos, fast nicht in der Lage, sich zu bewegen, und deswegen ein ideales Objekt zum fotografieren. Ein kleines Video gibt es auch.
Nachdem wir uns endlich losgerissen hatten, ging es weiter nach Coral Bay am Ningaloo Reef. Kurz vor Sonnenuntergang angekommen, gab es erstmal was leckeres aus der örtlichen Bäckerei – kostenlos, da kurz nach Ladenschluss – und dann noch schnell einen ersten kurzen Tauchgang am Riff, das ungefähr 50 Meter vom Strand entfernt liegt.
Den nächsten Tag in Coral Bay haben wir mit schnorcheln verbracht, und gegen Abend hab ich noch jemand wiedergetroffen – Max, ebenfalls für mehrere Wochen Bewohner des One World Backpackers in Perth. Den Abend haben wir daraufhin dann mit ein paar Bier an der Bar des Ningaloo Clubs verbracht. Ein weiteres Ergebnis dieses Abends war der Entschluss, eine Manta Ray Tour zu machen, allerdings am übernächsten Tag, da alles ausgebucht war.
Nach einem wenig ereignisreichen Tag (etwas Schnorcheln, etwas wandern durch die Dünen – schwitz!)
ging es dann am nächsten Morgen mit einem kleinen Boot Richtung Outer Reef und in Richtung der nächsten Bucht. Nach etwas Warten gab es dann Nachricht vom Spotter Plane, und für uns ging es ins Wasser. Für eine Stunde haben wir versucht, mit den Mantas mitzukommen, und glücklicherweise war dem Manta unsere Anwesenheit relativ egal, ansonsten hätte er uns mit Leichtigkeit abgehängt. Es ist auf jeden Fall absolut faszinierend, diesen riesigen Fischen dabei zuzuschauen, wie sie durchs Wasser gleiten. Danach ging es erstmal aufs Boot zurück, um noch etwas am Outer Reef zu schnorcheln. Auf dem Weg dorthin sind wir noch ein paar Delphinen begegnet, die sich erstmal ein kleines Rennen mit dem Boot geliefert haben, und ab und zu vor unserer Nase aus dem Wasser gesprungen sind. Delphinen mitten auf dem Meer zu begegnen ist dann doch etwas ganz anderes, als sie in Monkey Mia zu beobachten, wie sie sich einen Fisch abholen.
Am Abend ging es dann weiter nach Exmouth, etwas schnorcheln, etwas mehr einkaufen, und dann weiter, um die Zivilisation endgültig hinter uns zu lassen, auf zum nördlichen Ende vom Ningaloo Reef und zum Yardie Creek. Im Cape Range National Park gibt es ungefähr ein Dutzend Campingplätze mit durchschnittlich 6 Plätzen und einem Plumpsklo, sowie insgesamt einem Brunnen ungefähr in der Mitte. Als Entschädigung zahlt man dann pro Nacht und Person A$5 (3€), und muss zweimal im Trockenen und einmal im Wasser lang hinfallen, um am Riff zu sein. Den Yardie Creek Gorge haben wir uns natürlich auch noch angeguckt, einmal gegen Mittag (schlechte Idee), allerdings gab es außer ein paar Vögeln und viel Landschaft nicht viel zu sehen, und noch mal am frühen Abend, und freundlicherweise hat sich dann auch noch ein Black Footed Rock Wallaby gezeigt.
Heute ging es dann so langsam zurück Richtung Perth. Ein kleiner Zwischenstopp am Mandu Gorge, wo Nils zuerst fast von einer Spinifex Pigeon umgerannt (die hatte eindeutig andere Dinge im Kopf – hab ich schon erwähnt, dass hier gerade Frühling ist) und dann von einer Schlange erschreckt wurde. Jetzt sind wir wieder in Exmouth, 2500 Einwohner, ein riesiger Campingplatz, besagter Swimmingpool und WLAN.
Noch 1300 Kilometer bis Perth, bis die Tage,
Lurchi
Maybe they're not as bad as I thought
The iPod situation is now mostly fixed. I was able to figure out how iTunes gets the iPod serial number (and other info) with the help of a USB monitoring tool and Matt Dharm (the usb-storage guy). After that, Aaron used the metric ton of SysInfo samples you guys sent in to get a serial number → model number mapping.
To get info about (recent) device, iTunes requests an xml document from it over USB. I saw this in the USB trace I had, but the data was nowhere on the disk exposed by USB Mass Storage. Puzzling. Not really knowing much about USB MC, I enlisted the help of Matt, who obviously knows a lot more. He informed me that it was requesting the data using a special SCSI INQUIRY command, and I could probably use SG_IO to get it out. I ran sg_inq on my iPod with the right parameters, and out came the xml. Success! After that I wrote a hal method for libipoddevice to pull the info out (since you need to be root), and the rest was just parsing the xml and doing the serial → model mapping.
Even though it was a fairly painful couple of days trying to fix this, I’m pretty happy with the result. The xml from the device includes some really tasty stuff, including information on the image formats for cover art and photos. We are using this data now in ipod-sharp instead of the static table we had before, which will be really great for maintenance. New iPods with previously unknown image formats will Just Work! There is also data on the video formats, which I will soon use to add video support to Dopi
Why I hate Apple (still)
For a while now I’ve been getting reports of people having a strange problem using their iPod with Banshee or Dopi. There is a file on the device that we use to get things like the model number, which tells us what sort of iPod we’re dealing with. That file has been removed or set to 0 length on newer firmwares, and I was just yesterday able to reproduce it after upgrading and restoring my iPod Video. Since it wasn’t stored on the filesystem anymore, I started poking around the firmware parition, and found several copies of it there. Unfortunately it seems to appear in different places depending on the device, so I haven’t yet found a reliable way of getting that stuff out. We’ll eventually figure it out, though, and at that point things should start working again. I have a totally gross solution which runs strings(1) on the partition, but I don’t think it will come to that :)
Regular expressions
An introduction to Regular Expressions. This speech illustrates:
- regular expressions language main rules
- regexps with c++ (with boost library)
- regexps with python
- regexps with perl
- regexps with bash
Up to 10 times more sharing or more!
I released a new version of Tangerine tonight. The biggest change is that you can now share the songs stored in your music player’s collection. So if you add some songs to your library in Banshee, they will automatically be shared by Tangerine. Rhythmbox and Amarok are also supported.

The config dialog allows you to select a music player
iTunes 7
iTunes 7 was announced today, which means more ipod-sharp breakage. It doesn’t look like anything really changed except the database version, so I’ve bumped that and released 0.6.1. The music sharing stuff in iTunes hasn’t changed for ages, so Tangerine still works fine.
YUMier Than Bacardi
When I was in Boston last week, my cohorts and I whipped up something wonderful: a rug interface for yum. We call it ‘rum’, and it has nearly all the features of the original (used with rcd) rug. “zOMG!!! WHY?!!11”, you ask? Well, after using and working on rug/rcd/zmd for the past 3 or 4 years, we simply can’t use anything else. It’s a sickness. So what’s in it for you, the average yum user?
- The world-renowned, award-winning, ‘search’ command
- “tilde” support (rum in foo bar ~baz), which allows you to add and remove packages at the same time
- Easily add/remove/enable/disable repositories. Never edit a config file again!
- Persistent package locks (known as ‘excludes’ in the yum world)
- New commands are easily added. Just drop a python file in the appropriate place, and it is automatically added to the rum interface.
You can download RPMs for FC5-i386, FC6-i386, and SuSE 10.x-i586. For you adventurous build-from-source types, a tarball is here. Enjoy!
blowing up Pluto
hpj: I am in favor of this idea. We could even use a few of the ~10k nuclear weapons!
muthafuckin' tangerines on a muthafuckin' plane^Wwindows
This weekend I spent some more time making Tangerine work on Windows. I built Bonjour from scratch so I could distribute the binaries, and polished up the Tangerine installer as well. I gave it a good deal of testing, but there might be something I missed still. The Windows version includes a plugin for finding songs automatically through Google Desktop.

The preferences window for Tangerine (under Windows)
Update: I just put up a new version which fixes a bunch of issues I found. It also adds the missing features to the config window and hopefully makes it look a little nicer. Updated screenshot above.
Update 2: Another updated version up with more bug fixes. I don’t have a bug tracker set up, but if you guys hit any problems just email me (snorp@snorp.net).