Hubzilla auf einem Uberspace installieren

Uberspace ist ein wirklich toller Hoster der alles (und noch viel mehr!) bietet um einen eigenen kleinen Hubzilla-Hub zu installieren.
Dieser Hub zum Beispiel läuft ebenfalls auf einem U6-Uberspace.

Aber was ist Hubzilla überhaupt?
In ganz kurz:
Hubzilla ist eine dezentrale Kommunikations- und Publishing-Plattform.
Es ermöglicht Dir die volle Kontrolle über all Deine Kommunikation mit Hilfe von automatischer Verschlüsselung und detaillierter Zugriffskontrolle. Du, und nur Du, entscheidest, wer Deine Beiträge sehen darf.

Ausführlicher dazu in der offiziellen Dokumentation: klick

Dann mal los:

Wer  bereits mal Friendica auf seinen Uberspace installiert hat, der wird sich hier schnell zurecht finden. Alle anderen: es ist total einfach :-)

Was brauchst du?
1. Einen Uberspace bis U6 (ab U7 läuft Hubzilla zwar auch, aber einige Shell Befehle haben sich geändert)
2. Gegebenfalls eine eigene Domain. Falls du eine eigene Domain verwendest: du benötigst zwingend ein gültiges SSL Zertifikat, bitte nix selbstgebautes (wichtig)!
3. Keine Angst vor Konsolenbefehle.

Zum Reinlesen vorab: https://framagit.org/hubzilla/core/blob/master/install/INSTALL.txt
Beachte dass Hubzilla mindestens PHP 7.0 benötigt. Die Version einzustellen ist fix gemacht: Anleitung

Los gehts.
Zunächst verbindest du dich per SSH mit deinem Uberspace:
$ cd /var/www/virtual/DEINUBERSPACEUSERNAME/
Danach den Befehl zum Klonen der FramaGit Ablage (Repository) in den Ordner „html“ ausführen:
$ git clone https://framagit.org/hubzilla/core.git html
Um Addons zu installieren, muss du zuerst in den Hubzilla Ordner wechseln:
$ cd html
Dann wird der Addon Ordner separat vom Repository geklont:
$ git clone https://framagit.org/hubzilla/addons.git addon
Dieser Befehl erzeugt einen neuen Ordner namens „addon“, dort werden alle Addon Daten reinkopiert.
In der Shell bist du vorerst fertig.

Log dich als nächstes per SFTP auf den Webspace deines Uberspace ein und gehe zum /home Verzeichnis. Dort liegt eine Datei namens ".my.cnf", öffne diese Datei mit einem Texteditor deiner Wahl, in der Datei findest du weiter unten das Zugangspasswort zu deiner Datenbank. Das sieht dann ungefähr so aus:
... [client]password=meinubspaceblabladudeldupasswort # NICHT ÄNDERN, ohne den obigen Text zu lesen! ...
Das Passwort benötigst du gleich zur eigentlichen Installation.

Sollte Hubzilla in einem Unterordner deines Uberspaces installiert sein und ggf als Subdomain aufgerufen werden, dann geh bitte zu deinem Hubzilla-Ordner und suche die Datei ".htaccess". Dort muss eine Zeile eingefügt werden (am besten nach "RewriteEngine on"):
RewriteBase /
Mehr dazu im Uberspace Wiki.

Weiter gehts mit der Installation im Webbrowser.
Öffne deinen Browser und gehe zu deinem Uberspace, also zb https://DEINUBERSPACE.UBERSPACESERVER.uberspace.de

Beim ersten Aufruf deiner Hubzilla Seite werden automatisch diverse Checks durchgeführt, das sieht etwa so aus:
Bild/Foto

Anschliessend wird die Verbindung mit der Datenbank hergestellt.
Bild/Foto

Falls du vorher in phpMyAdmin keine separate Datenbank angelegt hast, ist dein Datenbank-Benutzername (also dein Uberspace Name) identisch mit deinem Datenbank-Namen. Das Datenbank-Passwort kennst du aus der Datei .my.cnf (verwende bitte das "Client" Passwort).
Möchtest du eine neue Datenbank anlegen, bitte unbedingt Kollation "utf8_general_ci" verwenden.

Nächster Schritt ist das Anlegen des Hubzilla Hub-Administrators:
Bild/Foto
Verwende bitte eine gültige Emailadresse, sowie unbedingt eine SSL-URL (https)!
Einmal bestätigen und fertig, dein Hub mit Admin ist angelegt.

Weiter gehts: ein Cronjob für den Poller muss noch eingerichtet werden.
Bild/Foto
Verbinde dich per SSH mit deinem Uberspace, um dir deine derzeitigen Cronjobs anzeigen zu lassen benutzt du das Kommando "crontab -l".
Um deine Crontab zu editieren oder einen neuen Job anzulegen nutze einfach das Kommando "crontab -e",
genau das machst du jetzt.
Das Terminalfenster wechselt in den Nano Editor, dort trägst du folgendes ein:
*/10 * * * * cd /var/www/virtual/DEINUBERSPACE/html; /package/host/localhost/php-7.0./bin/php Zotlabs/Daemon/Master.php Cron
Die PHP-Version im Pfad muss der auf deinem Uberspace entsprechen! Welche du nutzt und wie du diese ändern kannst, ist sehr gut im Uberspace Wiki erklärt (php-7.0 ist hier nur ein Beispiel).
Den Cronjob Eintrag speicherst du im Nano Editor mit dem Befehl "X", danach mit "J" bestätigen und nochmal Enter drücken.
Fertig.
Nach den Änderungen in Crontab muss ggf. der PHP Interpreter neu gestartet werden:
$ killall php-cgi
Dazu gibt es eine kurze und gute Beschreibung bei Uberspace.

Auf gehts nochmal in deinen Webspace über SFTP, dort gehts in den html Ordner, dort findest du die superwichtige Datei ".htconfig.php"
Diese Datei wird nach der Installation automatisch generiert und ist der Dreh- und Angelpunkt für viele Dinge deines Hubs (ein Backup sollte immer vorhanden sein!).
In der .htconfig.php muß auch unbedingt noch der PHP-Pfad angepasst werden um den Cronjob zu erreichen. Bitte verwende die dir vom Conjob bekannte PHP Version, das sollte dann so aussehen
// Location of PHP command line processor $a->config['php_path'] = '/package/host/localhost/php-7.0/bin/php';
Nochmal: Die PHP-Version im Pfad muss der auf deinem Uberspace entsprechen!
Welche du nutzt und wie du diese ändern kannst, ist sehr gut im Uberspace Wiki erklärt (php-7.0 ist hier nur ein Beispiel).
Ausserdem wird dort ggf. manuell die Emailadresse des Admins (siehe oben) hinterlegt.
Speichern, fertig.

Jetzt gehts wieder in die Weboberfläche.
Falls das Fenster noch offen ist, klick einfach auf "... Go to your new hub registration page...",
andernfalls einfach die Registrierungsseite aufrufen:
https://DEINUBERSPACE.UBERSPACESERVER.uberspace.de/register
Dort legst du deinen Admin-Channel an.
Verwende für den Admin Channel idealerweise Email und Passwort aus der Hub-Installation (siehe oben):
Bild/Foto

Fertig. Und los gehts!
Willkommen im Hubzilla Grid!

Über Terminal/Shell können später via Git Pull jederzeit die neuesten Updates gezogen werden:
$ cd /var/www/virtual/DEINUBERSPACE/html; git pull
Addons müssen immer separat upgedated werden:
$ cd /var/www/virtual/DEINUBERSPACE/html/addon; git pull

PS: ... es macht übrigens sehr(!) viel Sinn sich als erstes mit dem Support Forum zu verbinden. Dort kannst du jederzeit nach Hilfe fragen.
Ein deutschsprachiges Forum gibts auch, Verbindung dort hin macht auch immer Sinn.
Die Hubzilla Community wird immer größer, jeder einzelne ist sehr nett und hilfsbereit, schön dass du mit dabei bist!


(letztes Update: 20.09.2018)