Skip to content
This repository was archived by the owner on Oct 30, 2026. It is now read-only.

Add iPhone 6 RAM boot and USB/NFS host link - #12

Closed
shaynelegault wants to merge 1 commit into
OrchardLinux:mainfrom
shaynelegault:codex/iphone6-cli
Closed

shaynelegault wants to merge 1 commit into
OrchardLinux:mainfrom
shaynelegault:codex/iphone6-cli

Conversation

@shaynelegault

@shaynelegault shaynelegault commented Oct 29, 2026 •

Copy link
Copy Markdown
Contributor

Adds the host-side pieces needed for an experimental iPhone 6 RAM boot and USB/NFS desktop. The CLI converts the N61 Gen1 touch firmware from a private input, isolates loader workspaces, records build provenance and kernel receipts, and manages the selected N61 host link.

Boot checks now load the USB library before starting Pongo. Bootstrap failures clean up the associated process group, and serial access retains the existing ownership checks. The NFS guide describes the manual, single-attempt handoff and scoped host-link cleanup.

Dependency

Requires the N61 hardware contribution: OrchardLinux/orchard#26. Hardware should be reviewed and merged first. The desktop companion is OrchardLinux/omarchy-a#16.

Validation

  • The submission CLI wheel and the paired submission hardware wheel passed 271 tests on Python 3.9 and 271 on Python 3.12. Both environments passed pip check; mypy passed.
  • The shared-cache tests cover reuse after runtime-only changes and rebuilding after tool-input changes.
  • Two physical N61 desktop boots used the earlier CLI 8fed88e, hardware 853659d and Omarchy A f316b4d. Touch worked on both; vertical edges and keyboard entry passed on the first. The later CLI USB preflight and upstream cache-key change have host-test coverage and need a fresh paired device test.

CI pairing

The pull-request workflow currently defaults to the published hardware v0.1.10, while this CLI requires hardware 0.1.11. Until a compatible release exists, the workflow_dispatch inputs can select hardware_tag: v0.1.11 and a successful hardware hardware_run_id for the tested wheel. The local paired tests above used the submission wheel directly.

Current limits

The N61 host link remains experimental. Its gadget carries root and boot identities, while live ECID binding and Orchard's boot-scoped pinned SSH recovery protocol remain to be implemented and tested. The NFS host is required throughout the desktop session. Internal installation, Wi-Fi and Bluetooth remain unqualified.

AI assistance was used to develop this contribution and prepare the draft.

@henrikklee

Copy link
Copy Markdown
Contributor

Thanks! This follows once the hardware side is in. See the review on OrchardLinux/orchard#26 and CONTRIBUTING.md; please split it the same way, one topic per PR, each with the problem it solves.

@shaynelegault

Copy link
Copy Markdown
Contributor Author

henrikklee pushed a commit that referenced this pull request Oct 30, 2026
Hardware main's N61 recipe builds its touch firmware with the
z2fw-from-mtprops@3 step, which the CLI didn't have, so N61 firmware
builds failed. Add convert_gen1() for the legacy Z2 data-form mtprops
(the Gen1 command order of Corellium's Project Sandcastle, with per-unit
touch and proximity calibration) and the recipe step.

Checked against Apple's iOS 12.5.1 IPSW: the converter produces the
recipe's n61-fwstart.z2fw (51d2ef7b…).

[Orchard: the Gen1 converter part of #12 (2e11638), without
 its RAM boot and USB/NFS host link]
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants