Setting up the Mac mini M6 runner
Setting it up
- Start your free week and tell us which GitHub organisation or repository the runner is for.
- We email you a short guide, usually within a few hours. You create a fine-grained GitHub token that can only manage self-hosted runners (the organisation permission "Self-hosted runners", or the repository permission "Administration") and send it to us.
- The runner appears in your repository or organisation settings, usually the same day. Point your workflows at it with
runs-onas above.
In your workflow
jobs:
build:
runs-on: [self-hosted, macOS, ARM64, pickaxe]
steps:
- uses: actions/checkout@v5
- run: xcodebuild -scheme MyApp -destination 'generic/platform=iOS Simulator' build
For Xcode 26.6, set DEVELOPER_DIR=/Applications/Xcode_26.6.app/Contents/Developer. Flutter, React Native and Fastlane install with Homebrew or your usual setup steps.
What every job gets
- A fresh copy of macOS Tahoe 26.6.2. The VM is deleted when the job ends, so nothing carries over between jobs.
- Xcode 27.1 (the default) and Xcode 26.6, with iOS 27 and iOS 26.5 simulators.
- 4 cores of the M6, 6 GB of memory and about 50 GB of free disk.
- Homebrew, Git LFS, the GitHub CLI, Node 24 and Rosetta, with passwordless sudo inside the VM.
- Two jobs at once, and the next job starts about 20 seconds after one finishes.
In our own test, an Xcode 27.1 job built a small Swift package for the iOS simulator in 10 seconds and ran its tests on an iOS 27 simulator in 34 seconds. The whole job took 55 seconds.
First 7 days free, then $109 a month. Cancel any time. One Mac is available right now.