Repository is archived
No commit activity in last 3 years
No release in over 3 years
There's a lot of open issues
This tool adds the missing UUIDs into the installed Xcode plug-ins so that they can be loaded by newer versions of Xcode.
2005
2006
2007
2008
2009
2010
2011
2012
2013
2014
2015
2016
2017
2018
2019
2020
2021
2022
2023
2024
 Dependencies

Runtime

~> 0.8.1
~> 0.2.1
 Project Readme

Coverage Status

$ update_xcode_plugins

This tool adds the missing UUIDs into the installed Xcode plugins so that they can be loaded by newer versions of Xcode.

You can choose to run it once or install a launch agent that will trigger the tool every time any of your installed plugins are modified or Xcode/Xcode-beta gets updated.

This tool also allows you to unsign Xcode in order to run plugins on Xcode 8 and later. For more information on why this is needed, see alcatraz/Alcatraz#475.

When unsigning Xcode, you will also be prompted to unsign xcodebuild; Doing so will allow xcodebuild to load plugins and silence the library validation warnings. More info at #8.

If you are having any issues, please check common issues before creating an issue.

Install

$ gem install update_xcode_plugins

(if using system ruby: sudo gem install update_xcode_plugins)

(if still having problems: sudo gem install -n /usr/local/bin update_xcode_plugins #10)

Usage

In Terminal:

$ update_xcode_plugins

To use plugins on Xcode 8 and later, unsign Xcode with:

$ update_xcode_plugins --unsign

If you need to restore Xcode, use the command:

$ update_xcode_plugins --restore
Other options

For a dry run to see which plugins will be updated,

$ update_xcode_plugins --dry-run

To install the launch agent for automatically updating plugins,

$ update_xcode_plugins --install-launch-agent

or to uninstall the launch agent,

$ update_xcode_plugins --uninstall-launch-agent
Common Issues
Xcode crashes:

One or more of the plugins you are using are incompatible with your version of Xcode and are causing it to crash. The crash report will generally include the name of the responsible plugin. If unsure, start removing your plugins one by one until you find the culprit.

Contact

@inket / @inket on Twitter / mahdi.jp