Skip to content

vphone 2.14.0

Choose a tag to compare

@Lakr233 Lakr233 released this 29 Oct 09:00

vphone 2.14.0

Core Bundle

  • A machine can use a patch preset from a file: --preset <path> on vm create, fw patch, fw set-patches, fw patches and vm template find takes a preset plist as well as a name. The machine keeps a copy as PatchPreset.plist, so later steps, root cfw install included, resolve it without the original. fw export-preset writes such a file from a machine's choice, or from --preset/--block/--allow. A preset file cannot reuse a shipped preset's identifier. (#768)
  • For a preset the bundle does not ship (a preset file, or one in ~/.vphone/patches_presets), the template key now covers its guest patches too, so a preset changed under the same identifier no longer reuses a template built from the old one.
  • iPhone Duo (iPhone19,4, iOS 27.1) is usable: the whole shared cache is lowered for X1 ahead of time (dyld-cfw-arm64e_x1_cache), VirtualAudio patches apply on X1 builds, the foldable device tree takes the VM pose path, vphoned adds display.posture, and the inner display is a virtual display of its own. The cover boots on its own 1398×2034 screen and the inner display fills the panel when open. Service profile list version 3 keeps passd and financed running, so Wallet opens. (#728, #771)
  • The standalone CIBarcode filter on iOS 27.1 is lowered for X1, so apps that create a CIFilter no longer crash on hosts without X1 support. TV and HomePod presets block it. (#772)
  • Device > Toggle Software Keyboard shows or hides the guest's software keyboard while the hardware keyboard stays attached, without a restart. iPhone and iPad guests only. (#767)
  • Apple Watch Series 11 reports 326 ppi, so watchOS picks the right size class and watch faces render correctly. (#765)

Launchpad 2.14.0

  • The preset pickers in New Machine and Patch Settings have Other… to choose a preset plist, and Patch Settings has Export Preset… to save the current choice as one. vphone-launchpad-cli vm create --preset takes a path too. (#768)
  • A creation reads the preset file once, when it records it on the machine; later steps and retries use the machine's copy.
  • Installing CFW or updating the environment or kernel no longer opens the progress sheet, and the sheet shows only the log. Show… in the inspector still opens it.
  • Launchpad 2.14 needs a 2.14 bundle: --preset taking a path is part of the contract, so the minimum bundle is 2.14.0. The helper is unchanged (build 21).
  • Download vphone-launchpad-2.14.0-notarized.zip: Developer ID signed, notarized and stapled. vphone-launchpad-2.14.0.zip is built by CI and not notarized; macOS blocks it the first time you open it (see Downloads).

Upgrading

Install Launchpad 2.14.0 and VPhone.bundle 2.14.0 together. Templates from 2.13 are not reused (the bundle series is part of the key); the first creation builds a new one. An existing iPhone Duo gets the X1 cache and CIBarcode patches when its environment is updated.

Validation

  • CI builds the Release VPhone scheme and Launchpad, runs bundle admission, and checks both vphone-escalator slices before attaching the files.
  • 2.14.0 (before the template key and Launchpad preset-file fixes) on six Mac mini M4 hosts, one platform each: iPhone17,3 iOS 27.0.1, iPad16,1 iPadOS 27.0.1, AppleTV14,1 tvOS 26.6, HomePod mini 27.0, Watch7,18 watchOS 26.4 and iPhone19,4 iOS 27.1 were created, booted and answered vphoned. The HomePod was created from an exported preset file. The software keyboard RPCs flipped and restored the keyboard state on the iPhone, iPad and Duo.
  • Launchpad's test scripts pass.
  • The notarized Launchpad was built (Release) from the 2.14.0 tag (c503e1c) and signed with SignLaunchpad.sh.