Skip to content
This repository has been archived by the owner on Sep 1, 2021. It is now read-only.

Acceptable Formula

mxcl edited this page Feb 13, 2011 · 1 revision

Some formula should not go in mxcl/master. But there are alternative forks for alternative formula. See Interesting Branches.

We really don’t like dupes

The mxcl fork doesn’t dupe stuff that comes with OS X or stuff that is provided by RubyGems, CPAN or PyPi. There are good reasons for this:

1. Duplicate libraries regularly break builds
2. Subtle bugs emerge with duplicate libraries, and to a lesser extent, duplicate tools
3. We want you to try harder to make your formula work with what OS X comes with

We currently have a few exceptions:

Ruby People need version 1.9
Python People need version 2.7 and 3.1
Bash Version 4 is cool
Subversion For some tasks Homebrew requires a newer version than OS X 10.5 provides
Zsh This was a mistake, but it’s a bit late to remove it
libpng The version that is bundled with OS X has some notable crash bugs
libxml2 The version that is bundled with OS X has some notable crash bugs

If you find other dupes they should be reported and removed.

Will your formula be exempted? Possibly. Submit and justify it.

We’re hoping other people will maintain forks that contain dupes. Currently AdamV is maintaining a duplicates branch.

We don’t like tools that upgrade themselves

Eg. recently we removed the formula for npm. We worked with the maintainer of npm to do this. It was the best decision for npm and Homebrew.

Bindings

First check that eg. rubygems doesn’t provide the bindings already.

If not, then put bindings in the formula they bind to. This is more useful to people. Just install the stuff! Having to faff around with foo-ruby foo-perl etc. sucks.

Niche Stuff

The software in question must be 1) maintained 2) known 3) used and 4) have a homepage.

We will reject formulae that seem too obscure, partly because they won’t get maintained and partly because we have to draw the line somewhere.

Don’t forget Homebrew is all git underneath! Maintain your own fork if you have to!

Stuff that builds a .app

Don’t make your formula build a .app, we don’t want those things in Homebrew. Make it build a command line tool.

Clone this wiki locally