feat(flatpak): add Flatpak packaging and CI release pipeline (#271)

Adds full Flatpak support for Psysonic including:

- Flatpak manifest (org.gnome.Platform 47 + rust-stable + node20)
  with proper finish-args for MPRIS, Discord RPC, PulseAudio, Wayland/X11
- AppStream metainfo XML and .desktop entry
- In-app updater disabled at build time via VITE_PSYSONIC_FLATPAK=1
- CI job \`build-flatpak\` in release.yml: generates cargo/npm offline
  sources, patches manifest with release tag/commit, builds bundle via
  flatpak/flatpak-github-actions@v6, uploads .flatpak to GitHub release
- Release docs updated in CLAUDE.md (Flatpak bump and Flathub mirror flow)
This commit is contained in:
kilyabin
2026-04-24 23:41:16 +04:00
committed by GitHub
parent 048d7249a4
commit 8b369b3fa9
6 changed files with 285 additions and 0 deletions
@@ -0,0 +1,10 @@
[Desktop Entry]
Name=Psysonic
Comment=Desktop music player for Subsonic API-compatible servers
Exec=psysonic
Icon=dev.psysonic.Psysonic
Terminal=false
Type=Application
Categories=AudioVideo;Audio;Music;Player;
StartupWMClass=psysonic
Keywords=music;player;subsonic;navidrome;streaming;