Homebrew rocks, but managing system level dependencies can become a pain to track across multiple machines. Bundler was designed to make explicit declaration of Ruby dependencies consistent and painless. Tap Dance aims to do the same for system binaries by alleviating such issues as:
brew installto make my vim plugins work?"
brew listfor a reason I don't remember, or is it an automatically installed dependency?"
The "best" way to install tap dance is by including it in your system-wide Gemfile (e.g. a Gemfile in your dotfiles).
Add this line to your Gemfile:
And then execute:
If you don't version-control your dots (which you should), install it yourself as:
$ gem install tap_dance
TODO: Write usage instructions here
Because declaring system and project deps with an awesome ruby gem makes me want to dance. Although I actually prefer swing and waltz.
Huge thanks to Yehuda Katz for his awesome work on Bundler. I shamelessly stole a lot of the feature ideas and Gemfile evaluation magic from it. Oh, and obviously since the gem is built around Homebrew, a big thanks to Max and the community around brew: it has redefined my machine setup workflow.
I love contributions: give me a hand by including an in-depth description of the problem fixed or feature implemented, with usage information if applicable.
Most importantly, please include tests: if the request fixes a bug, include one or more failing tests which cover the issue. For new features, try to cover the basic functionalities, making sure the tests can pass on any properly configured OSX workstation.
Steps to contribution awesomeness:
git checkout -b my-new-feature)
git commit -am 'Add some feature')
git push origin my-new-feature)
Although you could just make your commits on the master branch, it's easier to inspect merge histories with actual feature branches. It also makes the bounds of your contribution obvious. Did I mention it looks better in
git log --oneline --graph