Manage the Xcodes installed on your Mac
brew install robotsandpencils/made/xcodesThese are Developer ID-signed release builds and don't require Xcode to already be installed in order to use.
Other methods:
Download a release
Download the latest release from the Releases page. These are Developer ID-signed release builds and don't require Xcode to already be installed in order to use.
Using Mint
mint install RobotsAndPencils/xcodesBuild from source
Building from source requires Xcode, so it's not an option for setting up a computer from scratch.
git clone https://github.com/RobotsAndPencils/xcodes
cd xcodes
make install
# or, if /usr/local/ isn't in your PATH
PREFIX=/your/install/directory make installWhile installing, you may get the following output:
swift build -Xswiftc "-target" -Xswiftc "x86_64-apple-macosx10.13"
error: terminated(72): xcrun --sdk macosx --find xctest output:
If that occurs, it means you need to select a version of Xcode. You can do this with xcode-select or by choosing a Command Line Tools option in Xcode's preferences Locations tab.
E.g. xcodes install 10.1
You'll then be prompted to enter your Apple ID username and password. You can also provide these with the XCODES_USERNAME and XCODES_PASSWORD environment variables.
After successful login, xcodes will save your Apple ID password into the keychain for quick retrieval subsequent tries.
list: Lists the versions of Xcode available to downloadinstall <version>: Downloads and installs a version of Xcodeinstalled: Lists the versions of Xcodes that are installed in /Applications on your computerupdate: Updates the list of available versions of Xcodeversion: Prints the xcodes version
Notable design decisions are recorded in DECISIONS.md. The Apple authentication flow is described in Apple.paw, which will allow you to play with the API endpoints that are involved using the Paw app.
xcode-install and fastlane/spaceship both deserve credit for figuring out the hard parts of what makes this possible.
Made with ❤️ by Robots & Pencils
