Swiftpack.co - Package - RobotsAndPencils/xcodes

xcodes

Manage the Xcodes installed on your Mac

CI Status

Installation

Homebrew (Preferred)

brew install robotsandpencils/made/xcodes

These are Developer ID-signed and notarized 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/xcodes
Build from source

Building from source requires Xcode 11.0 or later, 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 install

While installing, you may get the following output:

swift build
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.

Usage

xcodes install 10.2.1
xcodes install 11 Beta 7
xcodes install 11.2 GM seed

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 successfully authenticating, xcodes will save your Apple ID password into the keychain and will remember your Apple ID for future use. If you need to use a different Apple ID than the one that's remembered, set the XCODES_USERNAME environment variable.

Commands

  • install <version>: Download and install a specific version of Xcode
  • installed: List the versions of Xcode that are installed
  • list: List all versions of Xcode that are available to install
  • uninstall <version>: Uninstall a specific version of Xcode
  • update: Update the list of available versions of Xcode
  • version: Print the version number of xcodes itself

Development

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.

Contact

Made with ❤️ by Robots & Pencils

Twitter | GitHub

Github

link
Stars: 111
Help us keep the lights on

Used By

Total: 0

Releases

0.8.1 - Nov 13, 2019

Changes

  • Update Apple auth URLs (#84) @interstateone

0.8.0 - Oct 10, 2019

If you installed xcodes with homebrew you can upgrade with brew upgrade robotsandpencils/made/xcodes.

Version 0.7.0 and later of xcodes are now notarized and ready for macOS Catalina.

Changes

  • Use Swift 5.1 and Xcode 11 (#77) @interstateone
  • Automate notarization (#74) @interstateone
  • Improve output for errors from underlying shell commands (#76) @interstateone

0.7.2 - Sep 24, 2019

If you installed xcodes with homebrew you can upgrade with brew upgrade robotsandpencils/made/xcodes.

Changes

  • Consolidate versions from both download sites (#73) @interstateone

0.7.1 - Sep 17, 2019

If you installed xcodes with homebrew you can upgrade with brew upgrade robotsandpencils/made/xcodes.

Changes

  • Improve GM seed version parsing and descriptions (#70) @interstateone
  • Replace CircleCI with GitHub Actions (#68) @interstateone

0.7.0 - Aug 30, 2019

If you installed xcodes with homebrew you can upgrade with brew upgrade robotsandpencils/made/xcodes.

Changes

  • Check for existing Xcode archive before downloading (#66) @interstateone
  • Add uninstall command (#64) @interstateone
  • Ensure requested version isn't already installed before downloading (#63) @interstateone
  • Sign with hardened runtime and timestamp (#62) @interstateone
  • Move XIPs to Trash instead of immediately deleting them (#60) @interstateone