From 4bf591cad538044356ceacb24ecc11df24ab5531 Mon Sep 17 00:00:00 2001 From: PJ Date: Tue, 9 Jun 2026 16:51:03 +0530 Subject: [PATCH] docs(ios): device tunnel uses native usbmux, nothing to install --- docs/manual/cli.md | 2 +- docs/manual/getting-started.md | 4 ++-- internal/ios/device.go | 4 ++-- 3 files changed, 5 insertions(+), 5 deletions(-) diff --git a/docs/manual/cli.md b/docs/manual/cli.md index 860b26e..73c15da 100644 --- a/docs/manual/cli.md +++ b/docs/manual/cli.md @@ -53,7 +53,7 @@ sanderling doctor [--platform web|android|ios|ios-device|all] | `web` | headless Chromium can launch (the bundled CDP surface boots a real browser). | | `android` | `adb` on PATH; `emulator` on PATH or under `ANDROID_HOME`; Java 17+; embedded native sidecar JAR is real. | | `ios` | `xcrun` on PATH; `simctl` on PATH. The simulator path drives the native companion with no JVM. | -| `ios-device` | the `ios` checks plus `devicectl`; `iproxy` on PATH; a connected, paired device; App Store Connect signing credentials present. | +| `ios-device` | the `ios` checks plus `devicectl`; the macOS `usbmuxd` socket; a connected, paired device; App Store Connect signing credentials present. | ## `sanderling version` diff --git a/docs/manual/getting-started.md b/docs/manual/getting-started.md index 473eb04..fde52dd 100644 --- a/docs/manual/getting-started.md +++ b/docs/manual/getting-started.md @@ -67,7 +67,7 @@ IOS_DEVICE="iPhone 15" just test-ios # pick a different simulator #### Physical device -A connected iPhone is driven over a usbmux tunnel by a runner the driver builds and signs at run time. It needs `iproxy` (libimobiledevice) on PATH and App Store Connect signing credentials in the environment (a gitignored `.env` is loaded by `just`): +A connected iPhone is driven over a usbmux tunnel by a runner the driver builds and signs at run time. The tunnel talks to macOS's own `usbmuxd`, so nothing extra is installed beyond Xcode. It needs App Store Connect signing credentials in the environment (a gitignored `.env` is loaded by `just`): ```sh SANDERLING_IOS_TEAM=<10-char team id> @@ -78,7 +78,7 @@ ASC_API_KEY_PATH= IOS_DEVICE="iPhone" just test-ios-device # name, UDID, or CoreDevice id ``` -Run `sanderling doctor --platform ios-device` to check `devicectl`, `iproxy`, a connected and paired device, and the signing credentials before a run. +Run `sanderling doctor --platform ios-device` to check `devicectl`, the `usbmuxd` socket, a connected and paired device, and the signing credentials before a run. ### Web diff --git a/internal/ios/device.go b/internal/ios/device.go index 86ea661..667e21a 100644 --- a/internal/ios/device.go +++ b/internal/ios/device.go @@ -10,8 +10,8 @@ import ( ) // Device is a physical iOS device resolved from devicectl. A device carries two -// identifiers: HardwareUDID feeds xcodebuild -destination and iproxy -u, while -// CoreDeviceID feeds devicectl install/uninstall. +// identifiers: HardwareUDID feeds xcodebuild -destination and the usbmux device +// match, while CoreDeviceID feeds devicectl install/uninstall. type Device struct { Name string HardwareUDID string