Repository navigation
FlutCloud App de
Die FlutCloud-Nextcloud-App (flutcloud-app/ im Repository) ist die
serverseitige Ergänzung des FlutLink-Desktop-Clients. Sie liefert die
Nicht-Standard-Funktionen des FlutCloud-Servers — die Teile, die Vanilla-
Nextcloud nicht bietet — und sie sagt FlutLink: „Das ist ein FlutCloud-Server,
nicht irgendein Nextcloud."
FlutLink verbindet sich ausschließlich mit Servern, die diese App
ausführen. Vor jedem Konto-Login fragt der Client den OCS-Capabilities-Endpoint
(/ocs/v2.php/cloud/capabilities?format=json) ab und bricht ab, wenn die
flutcloud-Capability nicht angekündigt wird.
| Voraussetzung | Version |
|---|---|
| Nextcloud-Server | 28 – 31 |
| PHP | 8.1+ |
| Composer | optional — nur für den OCA-Autoloader |
Die App selbst hat keine Laufzeit-PHP-Abhängigkeiten; der Composer-Autoloader
wird nur für den OCA\FlutCloud\-Namespace gebraucht (PSR-4 → lib/).
| Feature | Was es tut |
|---|---|
| Capability | Kündigt ocs.data.capabilities.flutcloud an — der FlutCloud-Server-Marker |
| Ping |
GET /ocs/v2.php/apps/flutcloud/api/v1/ping — App-Info zur Client-Prüfung |
| Virtuelle Links | Schreibgeschützte resources/-Ordner, verwaltet über die Links-API |
| Schreibbare Parts | Beschreibbare parts/-Ordner, verwaltet über die Parts-API |
| Projektordner |
/FlutLink/FlutCloud im Admin-Home mit zweisprachiger README |
Führe Folgendes auf dem Rechner aus, der den Nextcloud-Server hostet
(PowerShell 7+). Das Skript findet die Nextcloud-Installation automatisch
(oder akzeptiert -NextcloudRoot), lädt die App aus dem Repository nach
nextcloud/apps/flutcloud herunter, aktiviert sie mit occ und prüft sie:
iex (irm https://raw.githubusercontent.com/OseMine/FlutLink/main/scripts/install-flutcloud-app.ps1)oder mit curl:
curl.exe -sL https://raw.githubusercontent.com/OseMine/FlutLink/main/scripts/install-flutcloud-app.ps1 | iexAuf Ubuntu-/Debian-Servern funktioniert auch das native Bash-Installationsskript ohne PowerShell:
curl -sL https://raw.githubusercontent.com/OseMine/FlutLink/main/scripts/install-flutcloud-app.sh | bashSpeichere das Skript zuerst in eine Datei, um Parameter zu übergeben — zum Beispiel für das offizielle Nextcloud-Docker-Image oder um den Composer-Autoloader zu erzeugen:
irm https://raw.githubusercontent.com/OseMine/FlutLink/main/scripts/install-flutcloud-app.ps1 -OutFile install-flutcloud-app.ps1
./install-flutcloud-app.ps1 -DockerContainer nextcloud -ComposerNützliche Parameter: -NextcloudRoot <Pfad> (sonst automatisch erkannt),
-Ref <Tag-oder-Branch> (Standard: letztes Release), -WebUser <Benutzer>
(Standard: www-data), -NoSudo, -SkipVerify (Bash-Pendants:
--nextcloud-root, --ref, --web-user, --no-sudo, --skip-verify, plus
--docker-container und --composer). Wie die curl | iex- /
curl | bash-Muster funktionieren, welche Optionen es gibt und wie du
Probleme behebst, findest du unter
Installationsskripte. Die manuellen Schritte unten
entsprechen dem, was die Skripte tun.
-
App kopieren in das Nextcloud-Apps-Verzeichnis auf dem Server:
cp -r flutcloud-app nextcloud/apps/flutcloud
Das Verzeichnis muss
flutcloudheißen (es muss der<id>inappinfo/info.xmlentsprechen). -
Autoloader erzeugen (optional, aber empfohlen):
cd nextcloud/apps/flutcloud php composer.phar install --no-devIst Composer nicht verfügbar, funktioniert die App trotzdem — Nextclouds eigenes Autoloading übernimmt den
OCA\FlutCloud\-Namespace überappinfo/info.xmlund den Code unterlib/. -
App aktivieren:
cd /var/www/nextcloud sudo -u www-data php occ app:enable flutcloud(
www-datadurch den Webserver-Benutzer ersetzen; beim offiziellennextcloud-Docker-Imagedocker exec -u www-data nextcloud php occ app:enable flutcloudverwenden.) -
Prüfen, dass die Capability ausgeliefert wird:
curl -u alice:apptoken "https://YOUR-SERVER/ocs/v2.php/cloud/capabilities?format=json"ocs.data.capabilities.flutcloudmuss vorhanden sein. FlutLink akzeptiert den Server damit als FlutCloud-Instanz.
Alle Routen liegen unter /ocs/v2.php/apps/flutcloud/api/v1 und benötigen
einen angemeldeten Benutzer (außer dem Capabilities-Endpoint, der öffentlich
ist):
| Methode | Pfad | Beschreibung |
|---|---|---|
GET |
/ping |
App-Info: { app, name, version, features, user }
|
GET |
/links |
Virtuelle Links auflisten (Unterordner von resources/) |
POST |
/links |
Virtuellen Link erstellen (name als Form/Query-Parameter) |
DELETE |
/links/{name} |
Virtuellen Link löschen |
GET |
/parts |
Schreibbare Parts auflisten (Unterordner von parts/) |
POST |
/parts |
Schreibbaren Part erstellen (name-Parameter) |
POST |
/project-folder |
/FlutLink/FlutCloud sicherstellen (nur Admin) |
Link-/Part-Einträge werden als { name, path, readOnly } zurückgegeben.
-
FlutLink lehnt den Server ab — die Capability wird nicht angekündigt.
Prüfen, dass die App aktiv ist (
php occ app:list | grep flutcloud), das Verzeichnisflutcloudheißt und dascurlobenocs.data.capabilities.flutcloudliefert. -
composernicht gefunden — Composer installieren oder Schritt 2 überspringen; die App läuft ohne generierten Autoloader. -
App lässt sich nicht aktivieren — Nextcloud-Version 28–31 und PHP 8.1+
prüfen (siehe
<dependencies>inappinfo/info.xml). -
Permissions-Fehler — sicherstellen, dass die App-Dateien dem
Webserver-Benutzer gehören und
nextcloud/apps/beschreibbar ist.
composer check # php -l Lint aller QuelldateienBei Versionsanhebung appinfo/info.xml, composer.json und die von /ping
gelieferte version synchron halten.
- EN: Home · DE: Startseite
- EN: Getting Started · DE: Erste Schritte
- EN: Install Scripts · DE: Installationsskripte
- EN: Features · DE: Funktionen
- EN: Architecture · DE: Architektur
- EN: Sync Engine · DE: Sync-Engine
- EN: FlutCloud App · DE: FlutCloud-App
- EN: Tray & CLI · DE: Tray & CLI
- EN: Security · DE: Sicherheit
- EN: Development · DE: Entwicklung