Skip to content

feat(mobile): simplify forked iPhone setup - #84

Closed
tee8z wants to merge 1 commit into
mainfrom
feat/ios-fork-setup
Closed

tee8z wants to merge 1 commit into
mainfrom
feat/ios-fork-setup

Conversation

@tee8z

@tee8z tee8z commented Oct 26, 2026 •

Copy link
Copy Markdown
Collaborator

Installing a Voltage iPhone build currently requires manually editing Xcode overrides and reconstructing the signing and device workflow. Add repeatable setup and device commands that preserve a fork's identity across updates.

just mobile-ios-setup io.voltage.buzz.mobile YOURTEAMID "Buzz Voltage"
just mobile-ios-device YOUR_IPHONE_DEVICE_ID

Setup validates the bundle ID, Apple team, and display name, then atomically updates the gitignored AppOverrides.xcconfig. It preserves other operator settings, including a push gateway. The device command uses pinned Flutter, installs dependencies, selects the named device, and preserves the existing optional push configuration.

The guide documents both app targets, their capabilities and App Group, same-identity updates, and signing troubleshooting. It distinguishes local device builds from the inherited Block-only release pipeline. The launch guide also explains why older clients currently need an update and what a server-side mention watcher would require; this PR does not implement that watcher.

Validation:

  • Production CLI regression tests passed for configuration creation/preservation/idempotence, invalid input and symlink rejection, device/gateway argument forwarding, optional push, and host/tool/dependency failures.
  • Existing gateway recipe tests, shell syntax checks, differential file-size checks, and git diff --check passed.
  • The existing worktree identity suite hit a local NixOS host limitation: its cleanup fixture fixes PATH to /usr/bin:/bin, which omits this host's awk. Its three cleanup assertions failed; the unrelated script is unchanged.
  • New command tests run in Linux CI and under macOS system Bash in the Mobile Swift lane.
  • Full just ci passed workspace formatting, workspace Clippy, and desktop JavaScript checks, then stopped in desktop Tauri Clippy: this Linux host lacks glib-2.0.pc. Later suites did not execute.

Draft pending a real Mac/iPhone install and human confirmation, per AGENTS.md: “A human then tested it themselves.” No physical-device signing result is claimed. Apple team registrations and provisioning remain required; no native capability is removed, no TestFlight pipeline is created, and no cluster changes are included.

Signed-off-by: Tee8z <tee8z@protonmail.com>
@coderabbitai

coderabbitai Bot commented Oct 26, 2026

Copy link
Copy Markdown

Important

Draft PR not reviewed

Draft PRs are not automatically reviewed by default.

  • Trigger a manual review

To automatically review draft PRs, update your CodeRabbit configuration:

reviews:
  auto_review:
    drafts: true
  • Autofix · Keep fixing CodeRabbit findings and required CI, and resolving merge conflicts

Comment @coderabbitai help to get the list of available commands.

@tee8z tee8z self-assigned this Oct 26, 2026
@tee8z
tee8z requested a review from thebrandonlucas November 3, 2026 22:49
@tee8z

tee8z commented Nov 3, 2026

Copy link
Copy Markdown
Collaborator Author

CI triage: the failed Desktop Tauri (mesh) job stopped while downloading Ubuntu system packages. apt-get install exhausted three 420-second attempts against the package mirror; compilation and tests had not started.

This is a transient runner/package-download failure, not a failed product test. The old red attempt is safe to ignore as evidence of a regression in this PR. I have restarted the failed jobs so CI can complete the missing coverage. Keep the draft/device-acceptance requirements in the PR description separate from this infrastructure failure.

@tee8z

tee8z commented Nov 3, 2026

Copy link
Copy Markdown
Collaborator Author

Closing at the author’s request: we are keeping the existing iPhone app unchanged and are not pursuing a forked iPhone setup. The server-side launch work in #108 is the intended path.

@tee8z tee8z closed this Nov 3, 2026
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.

1 participant