Ghost FTP 0.95.12 — stronger privacy, Android 16 readiness and a cleaner experience
Ghost FTP continues to prioritize dependable file transfers, clear interactions, privacy and high-quality Windows/Linux desktop packages.
Improvements
- Windows / Linux — safer Site exports. Exported profile metadata now uses a uniquely named exclusive staging file, syncs before promotion and keeps a rollback copy while replacing an existing export. On Unix the new export is private (0600); symlink and non-file destinations are refused. Added regression tests for confidentiality, complete replacement and symlink rejection.
- Android 16 submission baseline. Updated Android to compile/target API 36, raised Android Gradle Plugin to 8.10.1 and Gradle to 8.11.1, and updated build validation and emulator selection to API 36. The production APK and AAB remain intentionally unsigned pending authorized Google Play upload signing.
- Premium product presentation. Replaced the developer-heavy repository landing page with a focused product README, seven existing real installed Windows app captures, clear package choices and grounded platform capability descriptions.
- Code health. Keep dependency versions locked and run TypeScript, dead-code/source reachability, Kotlin lint/tests, Rust tests/Clippy/formatting, macOS Swift tests, FTP/FTPS/SFTP real protocol E2E and Windows/Linux packaging gates.
Download choices
- Windows: Portable EXE, branded Setup EXE and MSI.
- Linux: AppImage, DEB, RPM and standalone binary.
- Android: a separately installable Preview APK and unsigned release APK/AAB intended for authorized signing and Play Console validation.
- macOS: Preview ZIP (plain FTP; explicit FTPS/SFTP and Developer ID notarization are not yet available).
Verification and distribution limits
Publishing to GitHub Releases is not the same as Google Play approval, Apple App Store acceptance, production code-signing or independent pixel-for-pixel acceptance. Remaining Android SAF cancellation (#127), vendor OAuth for Android/macOS (#128), physical-device and 75-screen UI reference checks remain separate acceptance work. Google Play targeting API 36 is necessary for new mobile submissions after 31 August 2026; additional store requirements still apply. Never claim preview packages are store-signed.
Release artifacts must be produced by the canonical workflow only after six exact-source-sha gates pass; v0.95.11 remains immutable and has 21 verified artifacts.