Proton Drive mit Ignore-Regeln: ein Fork des Windows-Clients
Eine .protonignore im Sync-Ordner und .gitignore pro Verzeichnis, damit node_modules und Build-Ordner nicht mehr in der Cloud landen. Quelloffen, selbst zu bauen.
Es gibt eine neue Seite in den Guides: Proton Drive: Dateien vom Sync ausschließen.
Dahinter steckt ein Fork des Proton-Drive-Clients für Windows, dessen Quellcode
Proton unter der GPLv3 veröffentlicht hat. Er kennt Ignore-Regeln, wie man sie
von .gitignore kennt.
Der Anlass
Ein Code-Projekt im Sync-Ordner lädt alles mit hoch: node_modules, den
Build-Ordner, Logdateien. Also genau das, was jedes Repository bewusst draußen
lässt. Der Client bot dafür bisher keinen Schalter.
Der Aufhänger war schon da. Der Sync-Adapter schließt bereits hartcodiert Temp-Dateien aus. An derselben Stelle sitzt jetzt ein vollständiges Ignore-System.
Was der Fork kann
.protonignoreim Wurzelverzeichnis eines Sync-Ordners, gilt für den ganzen Ordner..gitignorepro Verzeichnis, ausgewertet genau dort, wo Git es auch täte. Ein Repository im Drive hört damit von selbst auf, seine Artefakte hochzuladen.- Vollständige gitignore-Syntax: Anker, Nur-Ordner-Muster, Negation,
*,?,**und Zeichenklassen. - Klare Rangfolge, damit
.protonignorezurückholen kann, was ein Repository ausschließt.
Der wichtigste Punkt steht in der Anleitung etwas weiter unten, gehört aber nach vorne: Regeln greifen nur für Elemente, die noch nicht indiziert sind. Nichts, was bereits synchronisiert ist, verschwindet, weil Du eine Regel nachträgst. Eine falsch getippte Zeile darf keinen Datenverlust auslösen.
Es gibt keinen Download
Der Client braucht drei Bibliotheken von Proton, die weder als Quellcode noch
unter einer Lizenz veröffentlicht sind, die eine Weitergabe erlaubt. Sie stecken
nur in der offiziellen Anwendung und landen in jedem Build. Deshalb liegt hier
keine fertige Datei, sondern eine Bauanleitung. Ein Befehl, .\build.ps1,
Voraussetzung sind das .NET 10 SDK und der offizielle Client.
Das Feature ist außerdem als PR #2 im Original-Repository vorgeschlagen. Wird es dort übernommen, kommt es aus dem offiziellen, signierten Installer, und der Fork erübrigt sich. Das wäre mir am liebsten.
Die Anleitung gibt es wie alle anderen auch auf Englisch.