Tjfontaine hat in seinem Blog schon 2010 ein Python Skript vorgestellt [W], dass aus einer vorhandenen Cups [W] Konfiguration die nötigen Informationen ausliest und daraus für jeden im Linux Netzwerk freigegebenen Cups-Drucker eine AirPrint [W] Konfigurationsdatei für den Avahi [W] daemon erzeugt.
Mit diesen Dateien kann jeder im Netzwek freigegebene Cups-Drucker über das lokale WLAN via AirPrint verfügbar gemacht werden.
Erstaunlicherweise schwand das Interesse an sein Blog Eintrag aber recht schnell, in meinen Augen wurde hier eine echte Perle übersehen.
Die Installation auf einer openSUSE 12.1 mit einem als Netzwerkdrucker angeschlossenen HP Deskjet 6940 hat problemlos funktioniert.
Mein iPhone 4 mit iOS 5.0.1 [W] ohne Jailbreak [W] erkennt den den AirPrint-Drucker und spricht ihn erfolgreich an.
Am schnellsten läßt sich AirPrint von der Konsole aus installieren.
Zuerst an der Konsole das Zip-Archiv von der Website herunterladen.
wget https://github.com/tjfontaine/airprint-generate/zipball/master
Das Archiv entpacken.
unzip master
In das neu erstellte Verzeichnis wechseln.
cd tjfontaine-airprint-generate-9d329cf
Den Inhalt des Verzeichnises anzeigen.
ls -l
Das Skript ausführen.
./airprint-generate.py
Den Inhalt des Verzeichnises anzeigen.
ls -l
Wenn bis jetzt alles geklappt hat sollte es so aussehen.
Die neu erstellte AirPrint-hp.service Datei anzeigen.
cat AirPrint-hp.service
Root Rechte bekommen.
su
Die AirPrint-hp.service Datei nach /etc/avahi/services kopieren.
cp AirPrint-hp.service /etc/avahi/services
Nun den Avahi daemon neu starten.
/etc/init.d/avahi-daemon restart
Jetzt muss nur noch der Cups Server neu gestartet werden.
/etc/init.d/cups restart
Die Konsolenausgabe davon sah so aus:
In /var/log/messages findet man danach:
avahi-daemon[2953]: Loading service file /etc/avahi/services/AirPrint-hp.service. [...] avahi-daemon[2953]: Service "AirPrint hp @ tuxomat" (/etc/avahi/services/AirPrint-hp.service) successfully established.
Der Drucker ist jetzt im WLAN als "AirPrint hp" für das iPhone verfügbar.
Nun auf dem iPhone die Druckeroptionen aufrufen um den Drucker einzurichten.
Den eben konfigurierten "AirPrint hp" Drucker auswählen.
Und sich darüber freuen, dass bedrucktes Papier aus dem Drucker kommt.