Builds a release-signed iOS .ipa ready to upload to App Store Connect.
mix dala.releaseOutput
_build/dala_release/<App>.ipa
Use mix dala.publish to upload it to TestFlight.
Prerequisites
- Apple Developer Program membership (paid, $99/yr)
- An "Apple Distribution" certificate in your keychain (Xcode → Settings → Accounts → Manage Certificates → +)
- An App Store provisioning profile for your bundle ID, downloaded
to
~/Library/Developer/Xcode/UserData/Provisioning Profiles/.mix dala.provision --distributionautomates the profile download.
What it does
- Resolves a distribution signing identity + App Store profile
(auto-detect, or
:ios_dist_sign_identity/:ios_dist_profile_uuidindala.exs) - Generates
ios/release_device.shand runs it:- Compiles BEAMs and copies them into the OTP runtime
- Builds native sources with
-DDALA_RELEASEsodala_beam.mdrops EPMD + the distribution BEAM args - Links the iOS device binary, no EPMD object files
- Signs the
.appwith the distribution identity (noget-task-allow) - Packages as
Payload/<App>.appzipped into<App>.ipa
The shipped .ipa runs the full BEAM but with no Erlang distribution
surface — Dala.Dist.ensure_started/1 no-ops at runtime when
DALA_RELEASE=1.