xtool-org / xtool

Sheet 01 · cross-platform Xcode replacement

iOS apps, built from a Linux shell.

xtool replicates Xcode's job with open standards. It builds a SwiftPM package into an iOS app, signs it, and installs it on your device, from Linux, Windows through WSL, or macOS.

First runfrom the docs
  1. xtool setupOnce: sign in, then point it at Xcode.xip.
  2. xtool newAn iOS-capable Swift package.
  3. xtool devBuild, install and run on the device over USB.

The first build compiles the iOS SDK's Swift modules, so it takes a few minutes. Later runs reuse SwiftPM's global cache.

Detail A

The build path, part by part.

Five stations from package to running app. Numbered balloons point to the parts list below.

  1. A

    Swift package

    A SwiftPM package plus an xtool.yml.

    xtool new
  2. B14

    iOS app

    SwiftPM builds it against the darwin SDK.

    xtool dev
  3. C5

    Signed

    Through Apple Developer Services, with your sign-in.

    xtool auth · ds
  4. D26

    On device

    Over USB, with usbmuxd doing the talking.

    xtool devices · install
  5. E

    Running

    First run: tap Trust, and enable Developer Mode if asked.

    xtool launch

Not to scale. Station E notes come from the first-app tutorial.

Parts list

Six parts, and one of them is still Xcode.

No.PartComes fromWhen
1Swift 6.4 toolchainswift.org, for your Linux distributionBefore setup
2usbmuxdThe libimobiledevice project; often preinstalledBefore setup
3Xcode.xip (Xcode 27)Apple, downloaded in a browser with your Apple IDOnce
4iOS Swift SDK, darwinGenerated by xtool setup from part 3Once
5Apple sign-inAn API key or a password, chosen in xtool setupOnce
6USBIPDWindows only: USB passthrough into WSLWindows

Part 5 · sign-in

Two ways to sign in, with the trade-off printed.

From the install guide: your credentials are only sent to Apple and nobody else, and you can build xtool from source to check.

Configuration

setup
Set up xtool for iOS development
auth
Manage Apple Developer Services authentication
sdk
Manage the Darwin Swift SDK

Development

new
Create a new xtool SwiftPM project
dev
Build and run an xtool SwiftPM project
ds
Interact with Apple Developer Services

Device

devices
List devices
install
Install an ipa file to your device
uninstall
Uninstall an installed app
launch
Launch an installed app
Projectxtool
DrawingiOS build path
Rev1.21.0 · Oct 5, 2026
ScaleNTS
LicenseMIT
Sheet1 of 1