Ghost FTP 0.0.3
Privacy-first FTP, FTPS and SFTP desktop client for Windows and Linux.
Release channel: Current.
GitHub prerelease flag: false.
Highlights
Bandwidth-aware transfers
- Added independent upload and download bandwidth ceilings with validated local settings on Windows and Linux.
- Added conservative aggregate directional scheduling so configured KiB/s budgets remain bounded across concurrent transfer worker slots instead of becoming a per-transfer multiplier.
- Enforced the effective transfer budget in the real transport path: curl
limit-ratefor FTP/FTPS and OpenSSHsftp -lfor SFTP. - Kept
0as the migration-safe unlimited default for settings written by Ghost FTP 0.0.2 and older builds. - Added validation, migration, aggregate-allocation, transport-conversion and Windows/Linux settings-surface regression coverage.
- Defined attempt-scoped bandwidth policy: a running transport keeps the budget sampled when it starts, while new and retried attempts observe the newly saved setting.
Packaging and release engineering
- Reduced the public Windows download surface to two self-contained files:
Ghost-FTP-0.0.3-Setup.exeandGhost-FTP-0.0.3-Portable.exe. - Preserved verified native x64/x86 application payloads internally and added a bootstrap that selects the native payload from
GetNativeSystemInfo, performs no runtime download and verifies staged bytes before execution. - Kept integrated uninstall ownership and optional fail-closed Authenticode behavior while preventing architecture-specific staging executables from leaking into the public artifact directory.
- Promoted
linux/BUILD-DISTROS.shto the canonical Linux release builder. - Added canonical Debian and Ubuntu DEBs for
amd64,arm64,i386; Fedora RPMs forx86_64,aarch64,i686; and distro-neutral Portable tarballs foramd64,arm64,i386. - Preserved one compiled executable per architecture across matching Debian/Ubuntu/Fedora/Portable packages and byte-parity verification before publication.
- Updated the public release allow-list to 14 platform artifacts / 17 public files, including immediate and delayed GitHub Release asset read-back and matching latest-only retention preflight.
- Kept Debian 13 amd64, Ubuntu 26.04 LTS amd64 and Fedora 44 x86_64 native install/remove/GUI lifecycle gates; additional architectures retain build, metadata, extraction and binary-parity verification.
- Strengthened the universal Windows wrapper with a direct fail-closed Go telemetry check and updated authentic UI evidence to capture the verified internal native x64 payload without making it a public download.
Security and privacy
- Preserved strict FTPS certificate/hostname validation, SFTP host-key verification/pinning, trusted Linux AskPass provenance, rooted local path protections, protected-secret lifetime rules and no silent secure-to-plain downgrade.
- Preserved the no-telemetry, no-analytics, no-advertising, no-fingerprinting and no-hidden-backend contract across the new bandwidth and packaging paths.
Release tag
ghostftp-v0.0.3
Public platform packages
Windows:
- Ghost-FTP-0.0.3-Setup-x64.exe — 64-bit Windows installer.
- Ghost-FTP-0.0.3-Setup-x86.exe — 32-bit x86 Windows installer.
- Ghost-FTP-0.0.3-Setup-x32.exe — byte-identical compatibility alias of the x86 installer.
- Ghost-FTP-0.0.3-Portable-x64.exe — portable 64-bit Windows executable.
- Ghost-FTP-0.0.3-Portable-x86.exe — portable 32-bit x86 Windows executable.
Linux:
- Ghost-FTP-0.0.3-Linux-amd64.deb — Debian package for amd64.
- Ghost-FTP-0.0.3-Linux-arm64.deb — Debian package for arm64.
- Ghost-FTP-0.0.3-Linux-i386.deb — Debian package for i386.
- Ghost-FTP-0.0.3-Linux-amd64.tar.gz — package-manager-neutral portable archive for amd64.
- Ghost-FTP-0.0.3-Linux-arm64.tar.gz — package-manager-neutral portable archive for arm64.
- Ghost-FTP-0.0.3-Linux-i386.tar.gz — package-manager-neutral portable archive for i386.
- Ghost-FTP-0.0.3-Linux-multiarch.zip — bundle containing the three verified Debian packages.
GitHub Packages
- Package: ghcr.io/bren-wp/ghost-ftp:0.0.3
- Type: verified OCI distribution bundle, not a runtime container.
- Contents: the same verified release directory under /ghostftp-release/.
- Current aliases: 0, 0.0, latest.
- The workflow verifies the exact-version registry readback before completing publication.
Verification files
- SHA256.txt — SHA-256 checksums for every public release file except SHA256.txt itself.
- RELEASE-NOTES.txt — these notes generated from CHANGELOG.md.
- BUILD-METADATA.txt — version, release tag, source commit, signing state and distribution metadata.
Release contract
- Current Ghost FTP releases are not inferred to be prereleases from semantic-version major zero.
- 12 platform artifacts.
- 15 public release files total, including the three verification/metadata files.
- Active application platforms: Windows and Linux.
- Local language catalog: 24 selectable languages with English default/fallback.
- Application telemetry: disabled.
- Linux portable archives are structurally verified and their ghostftp executable must be byte-identical to the matching DEB payload before publication.
- Publication is bound to the exact verified main commit and followed by canonical latest-only retention verification.
Signing and trust
The workflow never fabricates publisher identities. Production Authenticode signing is optional: when a protected trusted certificate is configured, Windows artifacts are signed and verified; when it is not configured, the release remains explicitly unsigned and BUILD-METADATA.txt records WINDOWS_AUTHENTICODE=unsigned. Never treat a locally generated or self-signed certificate as a trusted public publisher identity. Always verify SHA256.txt and the official GitHub release location before installation or deployment.
Privacy
Release bundles contain only the explicit verified artifact allow-list. They do not contain saved profiles, FTP/SFTP passwords, private-key passphrases, signing private keys, local application data or user files.