Status: Manifest ist vorbereitet (
flatpak/com.coremail.Desktop.yml). Das Veröffentlichen auf Flathub ist ein manueller PR-Prozess beim externen Repoflathub/flathub.
sudo apt install flatpak flatpak-builder
flatpak remote-add --if-not-exists flathub https://flathub.org/repo/flathub.flatpakrepo
flatpak install -y flathub org.flatpak.Builder
flatpak install -y flathub org.electronjs.Electron2.BaseApp//23.08
flatpak install -y flathub org.freedesktop.Platform//23.08 org.freedesktop.Sdk//23.08Vor dem PR auf Flathub muss der Build sauber durchlaufen.
Im flatpak/com.coremail.Desktop.yml die PLACEHOLDER_SHA256_*-Werte mit den realen Hashes aus dem letzten GitHub-Release ersetzen:
curl -s https://github.com/Zenovs/coremail/releases/latest/download/SHA256SUMS.txtBeispiel-Ausgabe:
abc123...def x86_64.AppImage
fed987...cba arm64.AppImage
→ jeweils in das Manifest eintragen.
flatpak-builder --user --install --force-clean build-dir flatpak/com.coremail.Desktop.yml
flatpak run com.coremail.DesktopWenn das funktioniert: weiter zu Flathub.
Flathub akzeptiert keine direkten Releases — alles geht via Pull-Request beim Meta-Repo flathub/flathub.
# Fork: https://github.com/flathub/flathub klicken
git clone https://github.com/<DEIN-USER>/flathub.git
cd flathub
git checkout new-pr
git submodule add https://github.com/Zenovs/coremail-flatpak com.coremail.Desktop
git commit -am "Add com.coremail.Desktop"
git push origin new-prDu brauchst ein separates Repo für die Flatpak-Manifeste — z.B.
Zenovs/coremail-flatpak. Inhalt: alle Dateien ausflatpak/, plus eineflathub.jsonmit Build-Optionen.
Auf https://github.com/flathub/flathub/pulls einen PR von deinem new-pr-Branch öffnen. Beschreibung:
- App-Beschreibung
- Link auf Quellcode + Lizenz
- Verifikation der App-ID (
com.coremail.Desktopmuss zur eigenen Domain passen)
Flathub-Reviewer prüfen das Manifest (kann 1-4 Wochen dauern). Bei Erfolg: das Repo flathub/com.coremail.Desktop wird angelegt — von dort kommen alle künftigen Builds.
Bei jedem neuen CoreMail-Release musst du im flathub/com.coremail.Desktop-Repo die neuen URL + SHA256 im Manifest aktualisieren und einen Commit pushen — Flathub baut automatisch und published.
Das lässt sich auch via Flat-Manager-Bot automatisieren.
Damit Flathub akzeptiert, dass die App-ID com.coremail.Desktop zu dir gehört, musst du eine der folgenden Verifikationen aufsetzen:
Variante A — DNS-Eintrag bei coremail.ch:
TXT _flathub-verified."com.coremail.Desktop" → "<github-username>"
Variante B — Datei unter https://coremail.ch/.well-known/org.flathub.VerifiedApps.txt:
com.coremail.Desktop=<github-username>
- Flathub-IDs sind unveränderlich — wenn du
com.coremail.Desktopeinmal eingereicht hast, bleibt das die App-ID auf ewig. - Die Sandbox schränkt CoreMail ein: kein direkter Zugriff aufs Home-Verzeichnis, nur
xdg-downloadundxdg-documents:ro. Bei Anhängen kann das den User irritieren. - Auto-Update der App (In-App-Update aus dem Settings-Menü) sollte auf Flatpak deaktiviert werden, da Flathub die Updates managt — siehe Issue-Vorschlag:
if (process.env.FLATPAK_ID) hideUpdateUI().
Wenn dir der Aufwand zu gross ist: AppImage + deb + rpm decken bereits die meisten Linux-Nutzer ab. Flatpak ist ein Nice-to-Have, kein Must.