Ich habe jetzt schon mehrere Anläufe unternommen endlich mal das Thema "Webogram" aufzugreifen. Da sich die Art und Weise der Installation sich immer mal wieder ändert, bin ich nicht wirklich dazu gekommen, das hier zu finalisieren. Aber heute ist es soweit!

Nun, wovon spricht der Mann? Hierbei handelt es sich im einen Webclient zum Messenger https://telegram.org/ Der Webclient selbst ist bereits unter mehreren Adressen zu erreichen, z.B. https://web.telegram.org/, es gibt also nicht zwingend einen Grund den Client selbst zu hosten. Machen wir aber trotzdem. Aus Gründen.

Installation

Aufgabe nun: Webogram auf einem Überspace. Zuerst muss der Quellcode bei Github bezogen werden:

git clone https://github.com/zhukov/webogram.git

Anschließend ins Projektverzeichnis wechseln und NPM mit Abhängigkeiten installieren:

cd webogram
npm install -g gulp
npm install

Anschließend bauen wir uns die statische Webseite, die wir später auf den Webspace schieben können:

gulp clean
gulp publish

In unserem Projektverzeichnis gibt es jetzt einen Ordner dist, welcher sich z.B. nach ~/html/webogram verschieben ließe. Somit wäre das Telegram Webinterface unter http://ubernaut.server.uberspace.de/webogram erreichbar.

mkdir ~/html/webogram
mv ~/webogram/dist/* ~/html/webogram

Schließlich gebe ich die Empfehlung des Maintainers zum Schutze vor Clickjacking Angriffen weiter: erzeugt im Verzeichnis ~/html/webogram die Datei .htaccess mit folgendem Inhalt:

Header always append X-Frame-Options SAMEORIGIN

Update

Das Projekt wird bei Github recht aktiv gepflegt, möchte man ein Update einspielen, unterscheidet sich dieser Vorgang nicht wesentlich von der Ersteinrichtung. Zuerst ins Projektverzeichnis wechseln, dann das Repository mit git pull aktualisieren und die statischen Seiten neu bauen und entsprechend verschieben, genau wie oben.

Fin

So, das müsste auch schon alles gewesen sein. Natürlich könnt Ihr auf das Teil noch SSL ballern, oder allem eine eigene Subdomain verpassen, aber das sind andere Themen und werden hier nicht behandelt.