Building a Distributable¶
Package a standalone application that end users can run without installing Python or any dependencies.
Output goes to dist/:
- macOS →
AutoPhaseAnalysis.app - Windows / Linux → a one-directory bundle under
dist/AutoPhaseAnalysis/
How the packaged app stays working¶
The BGMN binaries are bundled and copied to the writable per-user directory
(~/.autophaseanalysis/bgmn) at runtime, so the packaged app works even when it
is installed to a read-only location. This behaviour comes from the compatibility
patches in app/patches.py — see Architecture.
Build on the target OS
PyInstaller does not cross-compile. Build the macOS app on macOS and the Windows bundle on Windows.
BGMN is GPL
A packaged app bundles BGMN binaries, which are licensed under GPL-2.0-or-later. Comply with BGMN's GPL terms before redistributing. See Acknowledgements & License.
Distributing via GitHub Releases¶
Once you have a build, attach it to a GitHub Release so users can download
and run it directly. Tag the commit (e.g. v1.0.0), write release notes, and
upload the dist/ artifact as a release asset.