SparkleShare angetestet

Schaut man sich im Bereich der Software für die eigene Cloud um, fallen bald drei Begriffe: ownCloud,  Seafile und SparkleShare. Während ich ownCloud grausam finde und Seafile noch nicht kenne, erscheint SparkleShare auf den ersten Blick absolut traumhaft: Kaum Anforderungen (git und ssh, das war’s), einfach zu installieren (kein php, kein mySQL Setup-Krampf) und  Sync-Clients für alle gängigen Betriebssysteme vorhanden. Das musste ich einfach ausprobieren!

Auf der Homepage unter SparkleShare.org ist die Einrichtung gut beschrieben. In meinem Falle fehlte auf meinem Probierserver lediglich curl, das mittels der Bordwerkzeuge schnell nachinstalliert wurde. Danach ist die Installation praktisch ein Einzeiler:

SparkleShare Installationszeile
SparkcleShare Installation

Um dem angehenden SparkleShare-Admin das Leben zu erleichtern, übernimmt das Shell Script „dazzle“ die gesamte Setup-Arbeit. Es legt den nötigen Systembenutzer für Sparkle an, installiert, wenn nötig, git und konfiguriert den ssh-Daemon. Ausserdem richtet es noch ein git-Repository ein, da die gesamte Authentifizierung über git und ssh abläuft. Der normale Benutzer muss sich mit all dem nicht auseinander setzen – das nimmt ihm der Client ab. Zumindest theoretisch. Später mehr dazu.
Das dazzle-Script dient auch nach der Installation noch zur Verwaltung der Freigaben:

sparkle-dazzle
dazzle’s Optionen. Sehr übersichtlich.

Ein Projekt wird mit der Option „create“ und dem nachfolgenden Projektnamen angelegt. Technisch wird damit einfach ein neues git-Repository erstellt. Neue Nutzer bekommt man über die Eingabe ihrer „Link-ID“ auf den Server. Diese Link-ID wird vom Sync-Client auf dem jeweiligen PC/Mac/Linux-Rechner erstellt und ist nichts anderes als ein öffentlicher SSH-Schlüssel.

Wer sich jetzt fragt, wo denn da die erweiterte Rechteverwaltung bleibt, fragt sich zurecht! Es gibt nämlich keine! Die einzige Möglichkeit, nicht jedem Nutzer des eigenen Servers Zugriff auf alle Projekte zu geben ist die, ein verschlüsseltes Projekt zu erstellen. Das bedeutet, dass für den Zugriff darauf ein Passwort nötig ist, das bei der Einrichtung im Sync-Client mit angegeben werden muss.

Auch die Datei-Historie ist nur bedingt Endbenutzertauglich. Sobald eine Datei versehentlich gelöscht wurde, wird diese Löschung in Echtzeit auf alle verbundenen Clients synchronisiert. Zur Wiederherstellung sind dann weitergehende git-Kenntnisse nötig.

sparkle-changes
Datei-Historie im Sync Client. Ist ein Ordner erst einmal weg, wird’s kompliziert…

Im Normalfall arbeiten Nutzer  mit einem Sync-Client, der, einmal eingerichtet, seinen Dienst vollkommen unbeaufsichtigt versieht. Leider lässt sich die Position des synchronisierten Ordners, anders als bei den meisten anderen Programmen dieser Art, nicht selbst festlegen. Er liegt immer auf der Systemplatte.

sparkle-setup
Verbindung gesucht!

SparkleShare kommt mit diversen git-Repositories klar: Neben dem eigenen, eben beschriebenen, funktionieren ausserdem Bitbucket, Github, Gitorious und das mit unbekannte Pianio.

Wen die beschriebenen Einschränkungen nicht stören, sollte sich SparkleShare einmal ansehen. Wer auf Nummer sicher gehen will, wartet noch einige Zeit, bis das Projekt weiter fortgeschritten ist.