LinuxLounge.net und ab auf die Couch!

6Dez/096

Banshee und die verteilte Musikdatenbank

Der Umstieg von Pidgin auf Empathy? Das war bisher für die meisten eher Fluch statt Segen. Doch nun zeigt sich das vielfach angekündigte Potential in der libtelepathy. In Verbindung mit dem XMPP-Protokoll wird der Musikaustausch nun zum Kinderspiel.

Neil Loknath hat im Rahmen des Google Summer of Code 2009 eine Banshee-Erweiterung entwickelt, die wohl die schlimmste Befürchtung der Musikindustrie sein könnte. Aufsetzend auf das XMPP-Protokoll, implementiert in telepathy-gabble, tunnelt die Erweiterung den Austausch der Datenbank und der enthaltenen Musik zwischen Messenger-Kontakten. Hierbei ermöglicht es bisher die volle Ansicht der Musikbibliothek, sowie den Download und auch  das beliebte Streaming. Der Flaschenhals befindet sich selbstverständlich beim im Deutschland vorhandenen Upstream der weitverbreiteten asynchronen DSL-Anbindung. In der Version 0.1.1, die bereits am 19. Novemeber veröffentlicht wurde, benötigt man derzeit vor allem eine aktuellere Version von telepathy-gabble (>= 0.9.2). Diese kann man jedoch leicht aus den Quellen bauen, nachdem man deren Abhängigkeiten aufgelöst hat. Ich verzichte bewusst auf die Bereitstellung von fertigen Debian-Paketen, da ich nicht für deren Qualität garantieren kann und möchte. Ich finde es jedoch aber richtig, dass Leute, die sich mit experimenteller Software beschäftigen auch einmal einen Kompiliervorgang kennenlernen. Außerdem kann letztlich keiner für meine guten Absichten garantieren. :-)
sudo apt-get build-dep telepathy-gabble
sudo apt-get install python-twisted python-xmpp mono-devel build-essential checkinstall
Danach besorgt man sich die jeweils aktuelle Version von telepathy-gabble, wir haben das ganze in Version 0.9.2 getestet, Karmic enthält nur Version 0.8.7.
wget http://telepathy.freedesktop.org/releases/telepathy-gabble/telepathy-gabble-0.9.2.tar.gz
tar xvzf telepathy-gabble-0.9.2.tar.gz
cd telepathy-gabble-0.9.2
./configure
make
sudo checkinstall
Damit wird der Quellcode heruntergeladen, entpackt, konfiguriert, gebaut und anschließend als deb-Paket installiert. Das hat den Vorteil, dass ein problemloses deinstallieren nachträglich möglich ist. Für checkinstall ist es ggf. nötig den Namen und die Version auf telepathy-gabble bzw. 0.9.2 anzupassen, falls nicht schon so vorgegeben. Danach kann man sich an die Erweiterung selbst machen. Sie ist im Blog von Neil Loknath, ebenfalls im Quellcode, als Download vorzufinden.
wget http://github.com/nloko/banshee-telepathy-extension/tarball/0.1.1
tar xvzf nloko-banshee-telepathy-extension-f0bebed.tar.gz
cd nloko-banshee-telepathy-extension-f0bebed/
./autogen.sh --enable-user-extension
make
sudo checkinstall
Wie bereits beim vorherigen Installationsvorgang wird wieder heruntergeladen, entpackt, konfiguriert, gebaut und installiert. Bei checkinstall sollte man hier auf jeden Fall Anpassungen vornehmen:
  • 2 -  Name:    [ banshee-extension-telepathy ]
  • 3 -  Version: [ 0.1.1 ]
Der Name folgt dem Schema anderer Banshee-Erweiterungen in den Paketquellen, die Versionsnummer, die vorgegeben wird, wirft einem checkinstall um die Ohren, wenn man sie nicht korrigiert. Schließlich kann man Banshee starten, Empathy sollte zu dieser Zeit bereits für das XMPP (Jabber) Protokoll vorkonfiguriert sein. Der Menüpunkt "Contacts" sollte in Banshee erscheinen, und eine Reihe von Kontakten. Nun noch den Gegenüber wählen, mit dem man Tauschen mag - dieser benötigt selbstverständlich auch die Erweiterung - und es geht nach der Autorisierung los. Fröhliches Testen! Weitere Links: Drucken Drucken

hat dir dieser Artikel gefallen?

Dann abonniere doch diesen Blog per RSS Feed!

About Martin

Der Autor hat keine Beschreibung über sich erstellt.
Kommentare (6) Trackbacks (1)
  1. Wenn man nun aber bei Pidgin bleiben möchte, hat man dann keine Möglichkeit dieses Feature zu nutzen? Soll das auch in anderen Playern wie z.B. Exaile kommen?

  2. Darüber kann ich leider nichts sagen; ich bin mir nicht sicher ob pläne dahingehend existieren. Ich finde es nur bemerkenswert, dass quelloffene Programme nun endlich diese Chance nutzen. Unter proprietären Systemen wie z.B. ICQ würde niemand eine API öffnen um so etwas zu ermöglichen. Was Telepathy dem Desktop an Möglichkeiten eröffnet….
    Wenn du Exaile nutzt kannst du ja bei deren Entwicklern anregen, dass diese sich dieses Features annehmen, falls es überhaupt schon einigermaßen in Zement gegossen ist, also eine Dokumentation, ein Standard existiert.
    Gruß Martin

  3. Also, bei mir scheitert schon make:
    »make: *** Keine Targets angegeben und keine »make«-Steuerdatei gefunden. Schluss.«
    und »sudo apt-get build-dep telepathy-gabble« sagt:
    »Paketlisten werden gelesen… Fertig
    Abhängigkeitsbaum wird aufgebaut
    Lese Status-Informationen ein… Fertig
    E: Kann Quellpaket für telepathy-gabble nicht finden«
    Karmic 64 bit.

  4. Dann solltest du vermutlich deine Paketlisten aktualisieren:
    $ sudo apt-get update
    Habe es eben noch mal an einem frischen Karmic getestet, da geht das Ganze so wie beschrieben.

    Gruß Martin

  5. Ich habe gerade zufällig entdeckt, dass ein entsprechender Feature-Request für Rhythmbox schon 2008 (!) eingereicht wurde, siehe https://bugzilla.gnome.org/show_bug.cgi?id=526499. Dort gibt es auch ein Plugin für die Rhythmusbox, wie weit das ganze funktioniert vermag ich allerdings nicht zu sagen.

  6. Bevor die Sektion aus dem Blog von Neil Loknath ausgeführt wird war es bei mir folgendes nötig:
    sudo apt-get install banshee-extension-lyrics
    (also Banshee installieren…)

    Ansonsten käme diese Fehlermeldung:
    checking for BANSHEE_1_THICKCLIENT… configure: error: Package requirements (banshee-1-thickclient >= 1.5.1) were not met:
    No package ‘banshee-1-thickclient’ found

    Außerdem musste ich den Pfad $user/.config/banshee-1 wieder dem User zuschreiben, bei der Installation des Plugins hatte den root bekommen. Die Fehlermeldung von Banshee auf dem Terminal sah dann so aus:

    System.Reflection.TargetInvocationException: Exception has been thrown by the target of an invocation. —> System.UnauthorizedAccessException: Access to the path “/home/$user/.config/banshee-1/addin-db-001″ is denied.


Kommentar schreiben