37 comments

[ 2.9 ms ] story [ 81.7 ms ] thread
Interesting. At first I thought this was a rival to CocoaPods, but it's actually for installing Xcode file/project templates. See the packages.json file for examples of what it managed https://github.com/mneorr/alcatraz-packages/blob/master/pack...
It seems to be for plug-ins, color schemes and project templates.
It also has File templates. Most likely, it will support snippets soon.
Marin, the creator, is a member of the Cocoapods team, we've been testing it internally. Big fan.
needs a mkdir in that install script for people without the plugins folder
(comment deleted)
updated install script
This is worth installing just to get the plugin that disables animations when you open/close the file browser and inspector panes.

But seriously, I hadn't really known about Xcode plugins, despite using it a lot of the time. I'd used a few but they were annoying to find and install. This is perfect and with an "Xcode Plugin" template available in it, I look forward to many more plugins emerging soon!

Doesn't that work? (honest question, I don't use XCode that much):

    defaults write NSGlobalDomain NSAutomaticWindowAnimationsEnabled -bool false
This would affect animations system-wide. I prefer animations in general, but for my IDE I want it to be fast.
first do this:

mkdir -p '/Users/{{username}}/Library/Application Support/Developer/Shared/Xcode/Plug-ins'

Thanks for the report, adding this in the Alcatraz. He should do it instead of you ;)
Just fixed that issue.
I want to use this, but I cannot get it to install. Even after creating this directory.
Looks very nice. But how stable is the Xcode plugin API these days?

BTW, what's the connection between the name "Alcatraz" and the idea of a package manager for Xcode plugins? Try as I might, I can't see one. I don't know why all open source projects need an arbitrary name these days - I would have simply called it "Xcode Package Manager". I don't mean this as criticism: I am just baffled by this phenomenon, and just a little bit concerned that we're going to run out of memorable names if every single niche project needs one.

Alcatraz was a high-security prison associated with some high profile escape attempts, though no successful escapes have been confirmed. I suspect the creators of this package manager were trying to link the tech terms ‘walled garden’ and ‘jailbreak’ to real life penitentiaries. If so, I think ‘Shawshank’ would have been a better name, because it’s a fictitious prison and the story has a happy ending.
Shawshank sounds like an awesome name; Alcatraz was just the first one that came to my mind.
Alcatraz was a prison known for tight security, so I am guessing that based on their motto "…your plugins are mine…" the project is just trying to tie all the external projects into one secured location. But I am just guessing.

Others may have more cynical views, though.

Here is the project list: https://github.com/mneorr/alcatraz-packages/blob/master/pack...

There is no API, it's all reverse-engineered (AFAIK). I've been using the XVim plugin full time for the past year, and it's been very, very stable lately. It still crashes from time to time, but that can just as well also be XCode.
This man is correct - there is no plugin API and everything is reverse-engineered.

XVim is built on an internal layer that doesn't know about Xcode, then all operations are funnelled through an interface that does know about Xcode specific things. This makes it a little easier to upgrade should they decide to refactor Xcode's internal implementation. Still, Xcode's internals haven't really changed that much since 4.2+.

Source: XVim contributor, especially to its architecture

Thanks for the reply. I really like XVim and I'm really looking forward to the current refactor branch.
Unfortunately I'm not involved anymore, it was hard to keep up motivation since I started using the excellent AppCode. Although I do think XVim is a lot better than IDEAVim.
I've used AppCode for a couple of months last year and tried again with 2.0 this year, but I really didn't like IdeaVim, and I didn't look like easy to extend.
I just tried XVim for the first time because of this post. This unbelievably well integrated into XCode, and the source code is very clean, especially for obj-c.
Yeah, and the guy has been working for a long time on a huge refactor that will bring column selection, global marks, better window management, and a couple of other things. Not to mention that it may be easier to extend it. This is currently the second best vim implementation after evil-emacs, imho.
I get "x failed to install :( .xcodeproj not found" every time I try to install something.
You need to install Command line tools from the Preferences pane. After that you should be good to go.

We'll add that notice probably tomorrow.

I like this. Having a useful central repository of 3rd party project templates is a good thing, especially as Apple seem to keep cutting back on them. (Until I saw this it hadn't even occurred to me that people might contribute their own; I must be a bit too comfortable in the walled garden).

In the spirit of sharing I've added my own, long-standing color theme.

I get "color scheme installation fail" for everything.
If you mkdir -p ~/Library/Developer/Xcode/UserData/FontAndColorThemes/ , does it work then?
Cool.

Just a heads-up: It's spelled "plug-in".

I'm getting 'curl: (6) Couldn't resolve host 's3.amazonaws.com''
Something is likely wrong with your DNS.
Looks great! There is an issue with installing/running it on OS X Lion, but I am sure it will get fixed soon.