-
Notifications
You must be signed in to change notification settings - Fork 0
Compiled App macOS Windows Linux
FLIMKit can be packaged as a standalone executable - no Python needed on the target machine.
python install.py --dev # installs PyInstaller (and test requirements)
python build_and_sign.pyOutput: dist/FLIMKit.app (macOS) or dist/FLIMKit / dist/FLIMKit.exe (Linux/Windows).
The compiled app bundles whatever GPU libraries are present on the build machine. The GPU backend is not fetched or probed at runtime from an external install, it must be baked in at build time.
| Build machine | GPU bundled |
|---|---|
Apple Silicon (M-series) Mac with mlx installed |
MLX + PyTorch MPS |
| Intel Mac | CPU only (no Metal GPU) |
| Linux/Windows with CUDA PyTorch | CUDA |
| Linux/Windows with ROCm PyTorch | ROCm |
If you need GPU acceleration in the compiled app, build it yourself on the machine (or OS/hardware type) where it will run. A pre-built binary downloaded from Releases will only have GPU support if it was built on matching hardware.
build_and_sign.py detects and bundles GPU backends automatically, run it on the target hardware after running python install.py to install the right backend.
The app is self-signed (ad-hoc). If you built it locally, Gatekeeper won't prompt because there's no quarantine flag. For distribution to other machines, you need a paid Apple Developer ID and notarization via xcrun notarytool.
Uses --onedir for a proper .app bundle and avoids the two-dock-icon issue you get with --onefile's two-stage launcher.
All output files are saved to the same directory as the input PTU file. The working directory inside the bundle is read-only.
Machine IRFs are stored in ~/.flimkit/machine_irf/ (created automatically). The app ships with a bundled default until you build your own. After saving a new machine IRF, restart the app.