Apple's AirPort Utility is not guaranteed to run on macOS 27 and newer, so I reverse engineered the application and have reimplemented it for macOS 27 and newer with Swift (front-end code) and Python (backend protocol code). I leveraged Codex to accelerate this work.
I have tested the app with the AirPort models below. However, bugs still remain and there are models I have not tested with. Even for devices that I have tested with, I cannot test all features, such as PPPoE, as I lack the necessary hardware. All contributions are welcome! Please open bug reports for any issues you find and pull requests are greatly appreciated!
The build and runtime requirements are:
- macOS 13 or newer
- Swift 6.0 or newer, provided by Xcode 16 or newer or the corresponding Command Line Tools
- Python 3.10 or newer available on
PATHaspython3
The project has no third-party Swift packages or Python packages to install. AppKit, SwiftUI, Security, Bonjour, and CommonCrypto are provided by macOS.
On a new Mac, install the Command Line Tools:
xcode-select --installIf python3 --version reports a version older than 3.10, install a newer
Python. For example, with Homebrew:
brew install pythonVerify that the required tools are selected:
swift --version
python3 --versionThen compile and run the application from the root of the repository:
./run.shRun the Swift unit tests from the root of the repository:
swift testThe default test run skips slower subprocess integration tests. Include them with:
AIRPORT_UTILITY_SLOW_TESTS=1 swift testRun the Python backend unit tests separately:
python3 -m unittest Tests/BackendPythonTests/test_backend_modules.pyLive base-station tests are skipped unless their AIRPORT_LIVE_* environment
flags are explicitly set. These tests can change network, password, disk, or
firmware settings on real hardware and are not required for the normal test
suite.
The app has been tested with these AirPort models. The app is still likely to work with AirPort models not listed, at least partially. The goal is to fully support all features of all models.
| Name | Model | ACP Version | Device-Specific Features |
|---|---|---|---|
| AirPort Express | A1088 | v1 | AirPlay |
| AirPort Express | A1392 | v2 | AirPlay |
| AirPort Extreme | A1034 | v1 | Modem, No NAS |
| AirPort Extreme | A1354 | v2 | NAS |
| AirPort Extreme | A1521 | v2 | NAS |
| Time Capsule | A1254 | v2 | NAS, Internal Disk |
| Time Capsule | A1470 | v2 | NAS, Internal Disk |

