-
Notifications
You must be signed in to change notification settings - Fork 57
Installation
Download platform artifacts from the Releases page. To build it yourself instead, see Building from Source.
| Platform | File | Notes |
|---|---|---|
| Android / Android TV | Moonfin_Android_v<version>.apk |
The same APK installs on phones, tablets, and Android TV / Google TV (leanback) |
| iOS | Moonfin_iOS_v<version>.ipa |
Default workflow output, for self-signing |
| Windows | Moonfin_Windows_v<version>.exe |
x64 installer, plus a native ARM64 installer |
| macOS | Moonfin_macOS_v<version>.dmg |
App bundle builds are also supported |
| Linux | Moonfin_Linux_v<version>.<ext> |
Tarball / AppImage / deb / rpm / snap / flatpak, depending on tools |
| Web | served by the Moonbase plugin | Installable PWA, no download needed |
| Tizen (Samsung TV) | build a .tpk yourself |
Experimental, see below |
Install from the AUR using any of these commands:
yay -S moonfin
paru -S moonfin
pamac build moonfinIf you use another AUR helper, substitute the command accordingly.
Moonfin runs in the browser as an installable PWA served through the Moonbase server plugin, with an in-browser theme editor. Nothing needs to be installed on the client.
Tizen is a separate build target driven by the
flutter-tizen wrapper (Samsung
TVs require the .NET app runner; the platform project lives in tizen/). It builds
a signed .tpk.
Playback uses the native Tizen AVPlay player (via video_player / video_player_tizen) instead of libmpv/ExoPlayer. As a result:
- No runtime audio or subtitle track switching (tracks are selected server-side via the device profile / transcoding)
- No bitmap or ASS subtitle styling
- PDF/EPUB reading, in-app web trailers, and desktop window management are disabled
-
flutter-tizen: clone it and add
flutter-tizen/binto PATH (or setFLUTTER_TIZEN_BIN). First run downloads its bundled Flutter engine:git clone https://github.com/flutter-tizen/flutter-tizen.git ~/flutter-tizen export PATH="$HOME/flutter-tizen/bin:$PATH" flutter-tizen doctor -v
-
Tizen Studio + TV extension (requires a Java runtime): provides the SDK
that compiles and signs the
.tpk, plus the TV emulator. SetTIZEN_SDKif installed to a non-default location. -
A Tizen certificate / security profile (author + distributor certs) to sign
the package. Pass its name via
MOONFIN_TIZEN_SECURITY_PROFILE.
MOONFIN_TIZEN_SECURITY_PROFILE=<your-profile> ./build-tizen.shThe script runs flutter-tizen build tpk --device-profile tv --dart-define=MOONFIN_TIZEN=true and emits the .tpk under build/tizen/tpk/.
The MOONFIN_TIZEN=true dart-define is what flips the app into its Tizen code
paths (PlatformDetection.isTizen), since Tizen otherwise reports as Linux.
flutter-tizen emulators --launch <emulator-id>
flutter-tizen run -d <device>