Skip to content

Add iOS IPA build to CI with XcodeGen - #6

Merged
jappeace merged 1 commit into
jappeace:masterfrom
jappeace-sloth:ios-ipa-build
Mar 18, 2026
Merged

jappeace merged 1 commit into
jappeace:masterfrom
jappeace-sloth:ios-ipa-build

Conversation

@jappeace-sloth

Copy link
Copy Markdown

Summary

  • Add conditional IPA build pipeline to the iOS CI job using xcodegen (from nixpkgs) + system xcodebuild
  • Create ios/project.yml XcodeGen spec linking the Haskell static lib with correct search paths and GHC RTS linker flags
  • All IPA steps gated on APPLE_CERTIFICATE_BASE64 secret + master branch — CI works unchanged without Apple credentials
  • Rewrite Readme.md with build/install instructions for both Android and iOS, plus CI overview and signing secrets docs
  • Update .gitignore for generated xcodeproj and staging directories

Test plan

  • CI passes without Apple signing secrets (IPA steps skipped, .a still built)
  • ios/project.yml generates valid Xcode project via xcodegen generate
  • Readme accurately describes both platforms

🤖 Generated with Claude Code

Add conditional IPA build pipeline to the iOS CI job:
- Stage nix-built .a/.h into ios/lib and ios/include
- Generate Xcode project via xcodegen from ios/project.yml
- Import signing certificate into temporary keychain
- xcodebuild archive + exportArchive to produce .ipa
- Upload as CI artifact alongside the static library
All IPA steps are gated on APPLE_CERTIFICATE_BASE64 secret + master branch,
so CI still works without Apple credentials (just builds the .a).

Create ios/project.yml XcodeGen spec with correct library/header search
paths and GHC RTS linker flags.

Update .gitignore for generated xcodeproj and staging directories.

Rewrite Readme.md with build instructions for native, Android APK,
iOS static library, and iOS app (local dev with xcodegen), plus CI
overview and signing secrets documentation.

Prompt: Implement the plan for iOS IPA build in CI + Readme update
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
@jappeace
jappeace merged commit 36537cd into jappeace:master Mar 18, 2026
15 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants