$30 off During Our Annual Pro Sale. View Details »

Introducing Homebrew

Introducing Homebrew

A brief overview of the Homebrew package management system for OS X, given at #codecumbria.

David Murphy

March 21, 2012
Tweet

More Decks by David Murphy

Other Decks in Technology

Transcript

  1. Homebrew
    Introducing
    Homebrew
    The missing package manager for OS X

    View Slide

  2. http://schwuk.com
    @schwuk

    View Slide

  3. What is it?
    • Package management for OS X that works
    (and doesn’t suck)
    • Powered by Ruby and Git
    • Only requires Xcode*
    • Pretty popular

    View Slide

  4. How popular?

    View Slide

  5. Why do I need it?
    • Mac App Store doesn’t carry (much)
    FLOSS
    • Not everything is packaged for OS X
    • Avoid making mistakes when building/
    installing manually

    View Slide

  6. MTOWTDI
    • Fink
    • MacPorts
    • By hand*

    View Slide

  7. Fink
    • Debian based
    • Relies on software being packaged
    • Issues with ‘stable’ and ‘unstable’ lagging
    behind - just like Debian ;)

    View Slide

  8. MacPorts
    • BSD Ports
    • Similar issue with versions

    View Slide

  9. Homebrew
    • “Designed” for OS X
    • Sticks to one standard prefix - /usr/local
    • Doesn’t duplicate what Apple already
    provides
    • Very active user community

    View Slide

  10. What’s not-so-good?
    • Support for running multiple, differing
    versions of formulas can be difficult
    • Doesn’t duplicate anything that Apple
    already provides

    View Slide

  11. Getting Started

    View Slide

  12. Requirements
    • An Intel CPU
    • OS X 10.5 or higher
    • Xcode or Command Line Tools for Xcode
    • Java Developer Update 5

    View Slide

  13. Install
    /usr/bin/ruby -e "$(/usr/bin/curl -
    fksSL https://raw.github.com/mxcl/
    homebrew/master/Library/
    Contributions/install_homebrew.rb)"

    View Slide

  14. Update
    brew update

    View Slide

  15. Find...
    brew search git

    View Slide

  16. ...and install
    brew install git

    View Slide

  17. More commands
    brew info [name]
    brew uninstall [name]
    brew upgrade [name]
    brew cleanup [name]

    View Slide

  18. My favourite tipples
    • bazaar
    • git
    • git-flow
    • mercurial
    • node
    • redis
    • postgresql
    • mysql
    • mongodb
    • macvim
    • znc
    • dot

    View Slide

  19. What else?
    • Editing formulae
    • Creating formulae
    • Using other “taps”

    View Slide

  20. Homebrew
    • http://mxcl.github.com/homebrew/
    • irc://irc.freenode.net/#machomebrew
    [email protected]
    • http://twitter.com/machomebrew

    View Slide