Installation Mopidy Musikserver auf Raspberry Pi

Einleitung

Mopidy ist ein Musikserver, der Musik aus lokalen Quellen und verschiedenen Streamingdiensten abspielt.

Benötigte Pakete

Zunächst wird das Mopidy-Repository aktiviert.

wget -q -O - https://apt.mopidy.com/mopidy.gpg | sudo apt-key add -

echo "# Mopidy APT archive" | sudo tee --append /etc/apt/sources.list.d/mopidy.list
echo "deb http://apt.mopidy.com/ stable main contrib non-free" | sudo tee --append /etc/apt/sources.list.d/mopidy.list
echo "deb-src http://apt.mopidy.com/ stable main contrib non-free" | sudo tee --append /etc/apt/sources.list.d/mopidy.list

Im Anschluss kann die Installation erfolgen.

Installation

Nachdem das Repository aktiviert wurde, kann Mopidy mit apt installiert werden.

sudo apt-get update
sudo apt-get install mopidy

Es folgen Erweiterungen und Konfiguration.

Erweiterungen

Die Erweiterungen können ebenfalls per apt installiert werden. Die Möglichkeiten wie folgt:

sudo apt-cache search mopid

Was interessiert, kann installiert werden:

sudo apt-get install mopidy-scrobbler mopidy-spotify mopidy-spotify-tunigo

Konfiguration

Die Konfiguration erfolgt unter  /home/pi/.config/mopidy/mopidy.conf. Diese Datei muss zunächst erzeugt werden. Hiermit kann eine neue Standard-Konfiguration erstellt werden:

sudo /etc/init.d/mopidy stop
mopidy

Die Datei kann noch editiert werden, z.B. für den späteren Zugriff auf den Webclient:

[...]

[http]
enabled = true
hostname = 0.0.0.0
port = 6680
static_dir = /opt/webclient
zeroconf = Mopidy HTTP server on $hostname

[...]

Ferner müssen Zugangsdaten etwa für Spotify und last.fm hinterlegt werden. Danach wird sie verschoben und dem richtigen Benutzer zugeordnet:

sudo cp ~/.config/mopidy/mopidy.conf /etc/mopidy
sudo chown mopidy /etc/mopidy/mopidy.conf

Nach einem Neustart sollte das Ganze zur Verfügung stehen.

Webclient

Ein Webclient kann wie folgt installiert werden:

sudo mkdir /opt/webclient
cd /opt/webclient
sudo git clone https://github.com/martijnboland/moped.git
sudo mv moped/dist/* .
cd ..
sudo chown -R mopidy webclient
sudo service mopidy restart

Er ist dann auf Port 6680 erreichbar…

mopidy

Fehlersuche

Beim Ausführen von Mopidy erscheint folgende Fehlermeldung:

  File "/usr/lib/python2.7/dist-packages/mopidy/http/handlers.py", line 93, in broadcast
    loop = tornado.ioloop.IOLoop.current()
AttributeError: type object 'IOLoop' has no attribute 'current'

Es besteht folgender Fix für /usr/lib/python2.7/dist-packages/mopidy/http/handlers.py:

In Zeile 93 entfernen:

loop = tornado.ioloop.IOLoop.current()

Ab Zeile 90 hinter  def broadcast(cls, msg) einfügen:

if hasattr(tornado.ioloop.IOLoop, 'current'):
  loop = tornado.ioloop.IOLoop.current()
else:
  loop = tornado.ioloop.IOLoop.instance()  # Fallback for 2.3

Have fun!

Installation von zpub – Ein Werkzeug zur Erstellung technischer Dokumentation (Debian)

Einleitung

Wer größere Handbücher und Dokumentationen erstellen muss, stellt sehr schnell fest, dass gängige Textverarbeitungsprogramme sehr an ihre Grenzen stoßen. Insbesondere bei mehreren Bearbeitern gleicher Dokumente wird die Arbeit schwierig bis unmöglich.

Selbst wenn man das Bearbeiten im Team organisieren kann, erfolgen größere Änderungen am Layout
ist der Aufwand riesig.

Hier kommt zpub (www.zpub.de) ins Spiel. Es setzt zur Dokumentation auf DocBook. Hierbei wird Inhalt und Design klar voneinander getrennt. Die Versionierung erfolgt über Subversion.
Wird ein neues oder geändertes Dokument eingecheckt, werden automatisiert alle definierten Ausgabeformate, z.B. PDF, chm, HTML, etc. erstellt und die fertige Dokumentation steht zeitnah zur
Verfügung.

Installation

Zunächst die benötigten Pakete:

benötigte Pakete

Für Debian gibt es ein Paket, das Repository muss jedoch zunächst aktiviert werden.

Wir erstellen hierzu die Datei /etc/apt/sources.list.d/zpub.list mit folgendem Inhalt:

deb http://zpub.de/debian/ ./

Die Installation des Pakets wie folgt:

apt-get install zpub

Hierbei werden einige Abhängigkeiten mitinstalliert, dies kann eine Weile dauern.

zpub-Instanz erstellen

Schließlich wird mit Aufruf des nachfolgenden Skripts eine zpub-Instanz erzeugt.

zpub-create-instance zpub 'zpub-Instanz auf krausix.de' zpub.krausix.de

Konfiguration

Benutzer

Zunächst muss ein Benutzer erstellt werden, um auf die Weboberfläche bzw. das SVN-Repository zugreifen
zu können.

htpasswd /var/lib/zpub/zpub/settings/htpasswd admin

Im Anschluss muss das Passwort gesetzt werden.

Zusätzlich noch eine Benutzer für nicht administrative Zugriffe.

htpasswd /var/lib/zpub/zpub/settings/htpasswd redakteur

Hinweis: Wurde vom Namen zpub abgewichen, ist dies im Pfad entsprechend zu berücksichtigen:

/var/lib/zpub/<name>/settings/htpasswd

Ausgabeformate

Die Möglichen Ausgabeformate werden hier definiert:

/var/lib/zpub/<name>/conf/formats

Weitere Konfigurationsmöglichkeiten sind im Handbuch beschrieben.

Bedienung

Mit den vorab erstellten Benutzern kann man das SVN-Repository () nutzen. Nach dem Commit wird automatisch die Dokumentation in den vorher eingestellten Formaten erzeugt.

Details sind im sehr ausführlichen Handbuch bestens beschrieben. In einem späteren Artikel werde ich hierzu näher berichten.

Webgui

Die Webgui ist unter https://<IP oder FQDN des zpub-Servers> zu erreichen. Hier können beispielsweise Versionen betrachtet und freigegeben werden.

Fehlersuche

Sollte der Fehler Error: html_entity error – cannot locate Apache::Util or HTML::Entities at /usr/share/zpub/bin/zpub-cgi.pl beim Aufruf des Archivs auftreten, kann hiermit Abhilfe geschaffen werden:

apt-get install libhtml-parser-perl

Das Ergebnis wie folgt:

zpub.pdfzpub.pdf