Session-gated MinIO save sync with AppImage GUI, CLI edit/session flow, and Gitea release helper. Co-authored-by: Cursor <[email protected]>
SyncGames Android (Kotlin + Compose)
Light UI for Path 3 session ops against MinIO over Cloudflare HTTPS.
Features
- Settings (endpoint, keys in EncryptedSharedPreferences, device id, games JSON)
- Game list → Start / End / Status / History / Restore
- Doctor probe (PUT/GET/DELETE) to validate NGINX/Cloudflare
- Implements the same protocol as the Python agent (
docs/protocol.md)
Build
Open android/ in Android Studio, sync Gradle, run on a device/emulator.
cd android
./gradlew :app:assembleDebug # after generating the Gradle wrapper in Android Studio once
Sideload app/build/outputs/apk/debug/app-debug.apk.
First-run config
- Settings → set
https://syncgames-s3.<your-domain> - MinIO access/secret keys
device_ide.g.phone-android- Edit games JSON
nativePathto the absolute Eden/Yuzu save folder on the device
Note on Storage Access Framework
v1 accepts absolute paths in games JSON for devices where the save tree is readable. A SAF folder picker can be added without changing the protocol layer.