Nomadische Identität / Klonen - RELOADED
Eines der Kern-Features und eine herausragende Fähigkeit von Hubzilla ist die sogenannte “nomadische Identität”.
Nomadische Identität bedeutet echtes Eigentum an der Online-Identität. Mit Hubzilla habt Ihr kein Konto auf einem Server, sondern besitzt eine Identität, die Ihr über das gesamte Netz mitnehmen könnt. Ihr können einen Kanal über mehrere Hubs hinweg klonen, um gegen Netzwerkausfälle oder Zensur gewappnet zu sein, oder Ihr können einen Kanal komplett von einem Hub zu einem anderen verschieben und dabei Eure Daten und Verbindungen mitnehmen.
Gebundene Identität im Fediverse
Angenommen, Ihr habt einen Fediverse-Account bei einer (fiktiven!) ActivityPub-Instanz namens “mastoromakey.social”. Ihr habt Euch für Euren Account den Namen “festgenagelt” ausgedacht, dann lautet Euer Webbie (Fediversename/Handle) also @festgenagelt@mastoromakey.social. Das ist Eure Identität im Fediverse und jeder kann Euch über diese Adresse erreichen. Eure Identität setzt sich also aus dem gewählten Namen und der Instanz zusammen. Das zeigt in diesem Fall aber auch ganz deutlich, dass Eure Identität an eben diese Instanz gebunden ist. Ihr habt zwar die Hoheit über die Identität, aber nur solange die Instanz Euch den Zugang ermöglicht. Fällt sie aus, seid Ihr nicht mehr erreichbar und Ihr könnt mit dieser Identität auch Eure Kontakte nicht mehr pflegen. Und alles was Ihr unter dieser Identität gepostet oder kommentiert habt, steht auch nicht mehr zur Verfügung. Es ist (hoffentlich nur temporär) erstmal weg.
Oder Ihr stellt fest, dass Ihr mit dieser Instanz doch nicht so zufrieden seid (weil Euch im Nachhinein die Regeln doch nicht gefallen, weil sie elendig langsam ist, weil da übertrieben moderiert – oder gar nicht moderiert – wird…). Nun möchtet Ihr umziehen. Z.B. zur Instanz “gefaelltmirbesser.net”. Ihr könnt Euch dort nun einen neuen Account anlegen, der über das Webbie @festgenagelt@gefaelltmirbesser.net erreichbar ist. Nur… Eure Kontakte habt Ihr dort nicht, weder die Follower noch diejenigen, denen Ihr bisher gefolgt seid. Und auch Eure alten Inhalte sind dort nicht vorhanden. Und es findet Euch keiner so einfach, wenn er nur Eure alte Identität kennt.
Etliche ActivityPub-Dienste bieten eine Art Weiterleitung an, die man bei der alten Instanz aktivieren kann und die dann zur neuen führt. Womöglich erlaubt die Software der alten und der neuen Instanz den Ex- bzw. Import Eurer Kontakte… dann könnt Ihr die auch irgendwie mitnehmen.
Nun seid Ihr also umgezogen, aber ihr seid erneut “festgenagelt”, denn die Identität ist nun an die Instanz gefaelltmirbesser.net gebunden. Fällt die aus, steht ihr wieder vor dem alten Problem.
Die Lösung: Nomadische Identität bei Hubzilla
Hubzilla hingegen funktioniert da etwas anders. Wenn Ihr Euch bei einer Hubzilla-Instanz (= Hub) registriert, dann habt Ihr noch gar keine Identität. Ihr habt lediglich die Möglichkeit, Euch bei diesem Hub einzuloggen. Mehr ist aber erstmal nicht möglich. Deshalb wird nach erfolgreicher Registrierung immer auch gleich ein “Kanal” erstellt. Und DER ist Eure Identität im Fediverse. Auch der Kanal verfügt über eine “Fediverse-Adresse”, also ein Handle/Webbie, über das Ihr erreichbar seid und mit welchem Ihr im Fediverse auftretet. Angenommen, Ihr registriert einen Account bei hub.hubzilla.hu und wählt als Kurznamen für den Kanal “binfrei”, dann lautet Euer Webbie binfrei@hub.hubzilla.hu. Die Besonderheit ist, auch wenn sie zu diesem Zeitpunkt noch nicht greift, dass Euer Kanal, also Eure Identität nicht fest an den Hub gebunden ist. Sie wird zwar zu diesem Zeitpunkt von besagtem Hub verwaltet und ist dort auch gespeichert (so wie alle Eure Inhalte, Verbindungen, Daten in der Cloud, Artikel Webseiten etc.), sie ist aber eben nicht auf diesen Hub “festgenagelt”. So könnt Ihr Eure Identität exportieren. Sowohl den Kanal an sich, samt Kontakten, als auch die genannten Daten. Die könnt Ihr auf Euren Rechner herunterladen (sind komprimierte Archive) und wenn Ihr drauf steht, auf einen USB-Stick packen und in der Hosentasche mit Euch herumtragen.
Klonen
Das ist schön, hilft aber nicht unbedingt weiter, wenn man umziehen möchte oder der Hub einmal ausfällt.
Es ist aber die Grundvoraussetzung für die Funktionalität, die wir hier jetzt besprechen möchten. Wir können nämlich (über den Umweg dieser Sicherungsdateien oder online) einen Klon unseres Kanals auf einem anderen Hub anlegen. Um bei dem obigen Beispiel zu bleiben (mit dem Account bei hub.hubzilla.hu und dem Kanal “binfrei”), suchen wir uns nun einen anderen Hub aus, bei welchem wir ebenfalls einen Account registrieren… z.B. klacker.org.
Bei der Kanalerstellung (entweder der initialen nach Account-Erstellung oder bei einer späteren) habt Ihr die Möglichkeit, anstatt einen ganz neuen Kanal anzulegen, einen bereits (auf einem anderen Hub vorhandenen) Kanal zu klonen.

Das erledigt Ihr über den Link „importiere einen bestehenden Kanal“.
Wenn Ihr auf diesen Link klickt, öffnet sich das Formular für den Kanalimport.
Ihr steht jetzt vor der Wahl, wie Ihr Euren Kanal importieren und damit klonen wollt.
Ihr könnt den Kanal über die erwähnte Sicherungsdatei importieren oder direkt online vom bisherigen Hub.
Grundsätzlich empfehle ich die zweite Variante, also das Online-Klonen, weil hier die Daten auf aktuellstem Stand importiert werden.
Dafür müsst Ihr im Formular die notwendigen Informationen zu Eurem Ursprungs-Kanal eingeben:
- Die bisherige Kanaladresse (in unserem Beispiel: binfrei@hub.hubzilla.hu)
- Der Benutzername für das Login beim Ursprungs-Hub (Mailadresse)
- Das Passwort, dass Ihr für den Ursprungs-Hub verwendet
Außerdem könnt Ihr auswählen, ob die Inhalte des Ursprungskanals importiert werden (sofern der neue Hub die entsprechende Kapazität zur Verfügung stellt).
Ihr könnt außerdem hier festlegen, wenn der neue Kanal, also der jetzt anzulegende Klon Euer primärer Kanal sein soll (also der neue Hub – in unserem Beispiel klacker.org – der primäre Hub für Euren Kanal sein soll).
Falls Ihr für Euren Klon einen anderen Kurznamen verwenden möchtet, könnt Ihr diesen hier angeben. Bedenkt: Jeder Kanalname kann auf einem Hub nur einmal existieren. Sollte der gewählte andere Name oder der Originalname Eures Kanals auf dem neuen Hub schon vergeben sein, ändert Hubzilla automatisch den Kanalnamen (in der Regel werden Ziffern angehängt).
Nach einem Klick auf Absenden wird der Kanalklon erstellt. Dass kann, je nach Umfang (und Menge der Inhalte) eine ganze Weile dauern. Hier ist also ggf. etwas Geduld angebracht.
Hinweis: Selbst wenn ein Kanal des gewünschten Namens einmal existiert hat, aber wieder gelöscht wurde, steht er nicht mehr für die Kanalerstellung zur Verfügung. Dies dient dem Schutz vor dem Identitätsdiebstahl durch dritte.
Eine freundliche Nachfrage beim Hub Admin kann aber unter gewissen Umständen helfen, denn dieser kann den Kanalnamen auch wieder freigeben.

Inhalte importieren
Ihr werdet eventuell feststellen, dass beim Klonen nicht sämtliche Inhalte (also auch die Cloud-Dateien, Webseiten etc.) übertragen wurden. Um das nachzuholen, gibt es die App „Inhalte-Import“, die Ihr erst noch installieren und ins Menü bringen müsst.
Wenn Ihr die App aufruft, wird Euch ein Formular angezeigt, in welchem Ihr die Server-uRL (also die URL des Ursprungs-Hubs – in unserem Beispiel hub.hubzilla.hu) eingeben müsst. Ihr könnt festlegen, was alles importiert werden soll und die zu importierenden Inhalte auf einen bestimmten Zeitraum begrenzen.

Auch bei dieser Funktion ist – je nach Umfang der Inhalte – unter Umständen etwas Geduld gefordert.
Der primäre Hub / der primäre Kanal
Gerade tauchte der Begriff „primärer Hub“ bereits einmal auf. Der primäre Hub ist derjenige, mit welchem Ihr hauptsächlich unter Eurer Identität im Fediverse agiert. Auf diesem Hub sind auch die auf den Hub beschränkten Inhalte abrufbar (Cloud, Artikel, Webseiten etc.). Ihr könnt zwar mit jedem Kanal auf anderen Hubs am Fediverse teilnehmen, Postings veröffentlichen, kommentieren usw., aber die hub-gebundenen Inhalte erhalten eine Adresse beim primären Hub.
Sobald es auch nur einen Klon gibt, findet man bei den Einstellungen im Hauptmenü (das Menü unter dem Avatarbild des eigenen Kanals) einen weiteren Eintrag:
„Klon-Adressen verwalten“

An dieser Stelle könnt Ihr festlegen, welcher Kanal der primäre sein soll, Ihr könnt einen frischen Synchronisierungsprozess anstoßen (Button „Jetzt synchronisieren“) und auch Kanäle auf Hubs löschen. Letzteres ist aber nur dafür gedacht, einen Klon zu löschen, wenn der Hub, auf welchem er sich befand, nicht mehr existiert. Ansonsten sollen und müssen Kanäle über die Kanalverwaltung gelöscht werden.
Beim Auslösen eines frischen Synchronisierungsvorgangs ist es erforderlich, dass Ihr eine Weile wartet (damit die Synchronisierung abgeschlossen werden kann), bevor Ihr eine andere Funktion der Kanalverwaltung verwendet.
Umzug
Möchtet Ihr von einem Hub zu einem anderen Hub tatsächlich umziehen, also den alten Standort aufgeben, so müsst Ihr zunächst den Kanal zum neuen Hub klonen, diesen Hub (und damit den Klon) zum primären Hub machen und dann könnt Ihr Euch anschließend auf dem alten Hub einloggen und dort den ursprünglichen Kanal löschen. Lasst Euch mit diesem finalen Schritt aber bitte ein wenig Zeit, damit auch sicher alle Inhalte synchronisiert wurden.
Die Verbindungen im Klon-Kanal
Eine wichtige Sache ist beim Klonen, insbesondere in Hinblick auf das Wechseln des primären Hub, zu beachten:
Wenn Ihr einen Klonkanal zum primären Kanal macht, so ändert sich ja Euer Webbie (Fediverse-Adresse/Handle). Und das geschieht auch bei allen Euren Verbindungen zu anderen Hubzilla-Kanälen, also im sogenannten Grid (das Netzwerk der Hubzilla-Hubs). Diese Verbindungen bestehen also auch bei jedem Klon.
Leider versteht ActivityPub derzeit aber die nomadische Identität von Hubzilla nicht! Es gibt zwar Ansätze, eine solche dort zu implementieren und Mike Macgirvin hat das auch schon mit seiner Fediverse-Anwendung Forte realisiert, aber die derzeit genutzten ActivityPub Fediverse-Dienste unterstützen die nomadische Identität eben nicht.
Das seht Ihr z.B. daran, dass Ihr bei Eurem Kanalklon in der App „Verbindungen“ etliche Verbindungen seht, bei denen ein rotes Label signalisiert: „An diesem Ort nicht verbunden“. Es existiert bei diesen Kontakten aber auch ein grüner Button „+ Verbinden“. Auf diesen Button müsst Ihr klicken, damit der Kontakt auch mit dem Klonkanal verbunden wird.

Bedenkt dabei bitte: Die ActivityPub-Dienste kennen wirklich keine nomadische Identität. Wenn Ihr die Verbindung auf einem Klonkanal mit dem Button herstellt, dann bekommt der Kontakt eine neue Verbindungsanfrage. Und wenn die Verbindung eingegangen wurde, dann hat Euch der fremde Kontakt zweimal in der Kontaktliste. Einmal mit dem Webbie des Originalkanals und einmal mit dem Webbie des Kanalklons.
Das ist keine Unzulänglichkeit von Hubzilla und seinem Kommunikationsprotokoll Nomad/Zot6, sondern eine Unzulänglichkeit von ActivityPub bzw. der Implementierung von ActivityPub bei anderen Diensten.
Der Kanal in der Hosentasche
Die erwähnten Sicherungsdateien, die man, wenn man möchte, sogar mit sich herumtragen kann, sind nun noch eine Erwähnung wert. Sie sind nämlich nicht überflüssig. Man muss sich vergegenwärtigen, dass man seine Identität damit in den eigenen Händen hält. Fällt nun der genutzte Hub dauerhaft aus, so kann man mit einem Account auf einem anderen, funktionierenden Hub mittels dieser Sicherungsdateien seine Identität wieder online bringen. Dabei muss beachtet werden: Der Status der Verbindungen und der eigenen Inhalte ist aber auf dem Stand des Zeitpunkts, als diese Sicherungsdateien erstellt wurden. Man versetzt seine „tragbare Identität“ quasi in einen Kryoschlaf, aus welchen man sie wieder erwacht, sobald man den Kanal auf einen Hub importiert. Gibt es noch einen weiteren aktiven Klon, ist das gar kein Problem, weil die Klone wieder synchronisiert werden. Gibt es jedoch keinen, dann arbeitet man mit seinem Kanal auf dem letzten Stand vor der Sicherung weiter.
Die Sicherung erstellt man mit der App…
Kanalexport
Die App muss auch zunächst installiert und zugänglich (im App-Menü) gemacht werden.
Mit der App kann man seinen Kanal, also seine Identität und die Verbindungen exportieren.
Außerdem kann man seine Inhalte, also seine Beiträge, Direktnachrichten, Artikel und Karten in „Häppchen“ zu Jahren exportieren. Weiterhin kann man Sicherungsdateien der Webseiten, Wikis, Kalender und Chaträumen erzeugen und downloaden.

Wer aufgepasst hat, wird festgestellt haben, dass es bei dem Import-Dialog für die Kanalerstellung zwar möglich war, offline zu arbeiten, also eine Sicherungsdatei hochzuladen, dies ist aber beschränkt auf die Datei mit dem exportierten Kanal. Inhalte etc. kann man dort nicht gleichzeitig hochladen. Hat man also einen Kanal über eine Sicherungsdatei geklont, muss man die Inhalte noch importieren. Möchte man dies aus den anderen Sicherungsdateien tun, kann man nicht die App „Inhalte-Import“ verwenden sondern man muss das Formular für den Import direkt aufrufen. Dazu hängt man an die URL des Hubs „/import_items“ an: <URL_DES_HUB>/import_items.
Damit erreicht man ein Webformular mit welchem man (nacheinander) die verschiedenen vorhandenen Sicherungsdateien für den Import hochladen kann.

Kontakte importieren
Möchte man Kontakte („Followed“, nicht „Follower“) eines anderen Fediverse-Dienstes in seinen Kanal importieren, hält Hubzilla derzeit noch keine Funktion dafür bereit.
Viele Fediverse-Dienste erlauben das Exportieren seiner „Followed-Kontakte“, also der Kontakte denen man selbst folgt als CSV-Datei (Comma-separated values).
Es gibt nun ein Addon, mit welchem man solche Kontaktdateien in seinen Kanal zu importieren.
Das Addon stammt aus einer Drittquelle, gehört also nicht zum Standard-Umfang von Hubzilla und muss vom Admin erst hinzugefügt und aktiviert werden.
Wird es vom eigenen Hub zur Verfügung gestellt, kann man es in der Appverwaltung (App-Menü ➔ „+ Apps“) aus den „verfügbaren Apps. Der Name ist csvimport. Dann ist es möglich, diese App im Appmenü anzuheften und sie per Klick aufzurufen.
Es erscheint ein Formular, in welchem man die Sicherungsdatei auswählen kann.

Klickt man nun auf „Import starten“, wird die CSV-Datei nach Fediverse-Handles (Fediverse-Adressen / Webbies) durchsucht und die gefundenen Kontakte werden nacheinander mit Standard-Rechten als Verbindungen hinzugefügt.


Nach erfolgreichem Import findet man dann die Kontakte in der App „Verbindungen“.