Sinatra front end for the homebrew package management system
Ruby
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Failed to load latest commit information.
.gitignore
Gemfile
README
Rakefile
TODO
app.rb

README

If you watch, please read:

Anyone want to make a MacRuby version of this (w/ a Cocoa Interface?)
@flangy suggested a ncurses version.

homebrew is a pretty awesome command line client.
I had my doubts at first, but I have come to realize that it is far and away 
the best package manager for OSX I have used.

Not everyone is comfortable with the command line though :(

I'm friendly.  This doesn't involve money.  
Let's just make something that makes other people's lives easier. 

Msg me on github or follow me on twitter - @melgray

homebrew-web
============

This started off as an attempt of creating a small website for homebrew for people to search for available packages.

I kinda hacked together a really janky web front end for the package manager.

Since homebrew is git based, it has the potential for being a really cool distributed package manager.

Requirements:

  homebrew
  Rubygems (1.3.5+)
  Bundler

  TokyoCabinet
  TokyoCabinet Ruby Bindings (1.2.9) [http://gemcutter.org/gems/tokyocabinet]
  Sinatra
  Grit
  yajl-ruby

If you have bundler, you only have to worry about having TokyoCabinet.


To get started quickly, install homebrew and then:

  git clone git://github.com/melito/homebrew-web.git
  gem bundle
	rake bootstrap
	
Running `rake bootstrap` will do the following:

  Get a list of all homebrew network members
  Add each of those remembers as a remote in your homebrew install
  Fetch (non-destructive) each of those remotes
  Index all of the remotes blobs & branches in a tokyocabinet bdb

Once you've been 'bootstrapped' just run: 

  ruby app.rb && open http://0.0.0.0:4567

  Then just start typing a package name in the 'Search' box and a list of results should come up.

The interface is very minimal and not nice atm.  
Design contributions / ideas / criticism is welcome. 

If you find this useful or like the idea of this, please contribute.


Current rake options
=====================================================================
~/workspace/homebrew-web/ rake -T
(in /Users/melgray/workspace/homebrew-web)
rake bootstrap                   # Use this to setup everything up and get going
rake db:build                    # Builds a TokyoCabinet BDB database to help search the git repo faster
rake homebrew:location           # Prints location where homebrew is installed
rake network:ls                  # Prints out all members in the homebrew network
rake network:remotes:add[user]   # Add a user from the network as a remote (ex: rake network:remotes:add[mxcl])
rake network:remotes:add_all     # Add all users from network as remotes and fetch (non-destructive)
rake network:remotes:fetch       # Fetches (non-destructive) from all your remotes.
rake network:remotes:ls          # List all remotes for your homebrew installation
rake network:remotes:remove_all  # Remove all remotes (except origin) from your homebrew install