Nachdem die Apps für iPhone, iPod Touch und inzwischen auch iPad Apple einen großen wirtschaftlichen Erfolg beschert haben, wurde nun auch in den die neue Version des hauseigenen Browsers Safari eine Funktionalität eingebaut, die ähnliche Perspektiven entwickeln könnte: Erstmals beherrscht Safari 5.0 die Möglichkeit, individuelle Erweiterungen (Extensions) in seine werksseitige Funktionalität zu integrieren. Freilich, so etwas ist anderswo schon längst bekannt, insbesondere natürlich vom Open-Source-Konkurrenten Firefox. Ganz so offen mag sich Apple dann natürlich auch wieder nicht zeigen und fordert von den Entwicklern von Erweiterungen zumindest die Registrierung als Safari Developer. Erst mit einer von Apple zugeteilten Kennung akzeptiert der Browser die Erweiterungen. Und Apple wäre nicht Apple, wenn wir nicht in näherer Zukunft mit einem Safari Extensions Store mit kostenpflichtigen Browser-Erweiterungen zu rechnen hätten.
Sicher, die Möglichkeit der Erweiterung der Funktionalität des ohnehin schon recht mächtigen Browsers ist durchweg begrüßenswert. Bei der Durchsicht der derzeit bereits verfügbaren Safari-Erweiterungen zeigt sich jedoch in vielen Fällen, dass die angebotenen Funktionen oft eher von schlichter Natur sind. Neben zahlreichen Buttons, mit denen man die Symbolleiste einbauen kann, findet man zahlreiche Funktionen, die ebenso mit einem veränderten CSS-Style-Sheet zu erreichen sind und, verborgen in der .safariextz-Datei der Erweiterung, wohl auch so gelöst werden. Ist man nun aber Freund eines schlanken und daraus resultierend stabilen Systems, dann erreicht man gern die gleiche Funktionalität mit Bordmitteln, als den Browser mit zahllosen Erweiterungen zu überfrachten.
Um jedoch nachvollziehen zu können, wie eine Erweiterung wirklich funktioniert, muss man zunächst einmal in den kompilierten Code einer heruntergeladenen .safariextz-Datei hineinschauen. Nun kann man zwar mit Bordmitteln, das heißt mit dem Entwickler-Menü in Safari eigene Erweiterungen kompilieren, eine Möglichkeit zum Dekompilieren fehlt jedoch. Hier kommt safariextz2desktopfolder ins Spiel, ein Apple-Script, das von den Entwicklern Ivo und Oscar Bouwmans zum Download angeboten wird. Man deponiert das heruntergeladene Script an einer beliebigen Stelle seiner Mac-Festplatte und zieht beliebige .safariextz-Dateien einfach auf das Programm-, richtiger Scriptsymbol. Daraufhin werden die Daten dekompiliert und ordentlich in einem entsprechend angelegten Ordner auf dem Desktop abgelegt. Der Vorgang selbst ist im Terminalfenster von MacOS X zu beobachten und in Sekundenbruchteilen abgeschlossen. In den einzelnen Dateien des dekompilierten Pakets lässt sich nun – gewisse Grundkenntnisse vorausgesetzt – leicht nachvollziehen, an welchen Punkten die Erweiterung ansetzt.
Ein konkretes Beispiel: Interessant fand ich den Ansatz der Safari-Erweiterung FaceBlock, die Werbeanzeigen in Nutzerprofilen und auf der rechten Spalte in Facebook abfiltert. Da ich ich zum Filtern von Internetwerbung aber normalerweise den genialen Onboard-Proxyserver GlimmerBlocker verwende, mochte ich mein System nicht mit einer Safari-Erweiterung belasten, sondern die Filterung wie gewohnt dort vornehmen. Was aber filtert FaceBlock so erfolgreich? Nach dem Dekompilieren mit safariextz2desktopfolder zeigt sich eine CSS-Datei, die die gefilterten Strings in Klarschrift enthält. Diese trägt man in GlimmerBlocker, AdBlock oder welches Filtertool auch immer man bevorzugt, ein. Fertig. Ab sofort bleibt man von Reklame auf Facebook verschont, allerdings ohne den Browser durch Erweiterungen belastet und damit möglicherweise verlangsamt zu haben.
Natürlich ist mir klar, dass viele gerade deshalb einen Mac oder Safari nutzen, weil sie eben genau nicht wissen wollen, was unter der Haube des Systems vor sich geht. Dennoch finde ich es charmant, auch bei einem vonm Anbieter Apple relativ kontrollierten System selbst bestimmen zu können, wie die Systemkonfiguration im Detail aussieht und Probleme, die aus kritischen Konstellationen von Software resultieren können, aktiv zu vermeiden. Viel Spaß also beim Nachbauen und Nutzen des ebenso genialen wie simplen Tools mit dem sperrigen Namen safariextz2desktopfolder. Über weitere Tipps zu diesem Themenkreis in den Kommentaren freue ich mich natürlich jederzeit!