More tweaks to the README
Still too long, but it reads marginally better.
This commit is contained in:
		
							parent
							
								
									8b1b3d2a97
								
							
						
					
					
						commit
						ee0459a087
					
				
							
								
								
									
										96
									
								
								README
									
									
									
									
									
								
							
							
						
						
									
										96
									
								
								README
									
									
									
									
									
								
							@ -1,7 +1,8 @@
 | 
			
		||||
Homebrew
 | 
			
		||||
========
 | 
			
		||||
Homebrew's purpose is fundamentally the same as MacPorts or Fink, ie. to let
 | 
			
		||||
you easily install other open source software on your Mac.
 | 
			
		||||
Homebrew is a package management system for OS X. In other words it is a tool
 | 
			
		||||
that helps you manage the installation of other open source software on your
 | 
			
		||||
Mac.
 | 
			
		||||
 | 
			
		||||
Here's why you may prefer Homebrew to the alternatives:
 | 
			
		||||
 | 
			
		||||
@ -15,15 +16,16 @@ Here's why you may prefer Homebrew to the alternatives:
 | 
			
		||||
    Homebrew never changes any files outside of its prefix.
 | 
			
		||||
 | 
			
		||||
3.  The GoboLinux approach  
 | 
			
		||||
    Packages are installed to their own prefix (eg. /usr/local/Cellar/wget)
 | 
			
		||||
    and then symlinked into the Homebrew prefix (eg. /usr/local).
 | 
			
		||||
    Packages are installed into their own prefix (eg. /usr/local/Cellar/wget)
 | 
			
		||||
    and then symlinked into the Homebrew prefox (eg. /usr/local).
 | 
			
		||||
 | 
			
		||||
    This way the filesystem is the package database. As is often the case with
 | 
			
		||||
    the simplest possible solution, it makes everything else easier and
 | 
			
		||||
    better.
 | 
			
		||||
    This way packages can be managed with existing command line tools. You can
 | 
			
		||||
    uninstall with rm -rf, list with find, query with du. It also means you
 | 
			
		||||
    can easily install multiple versions of software or libraries and switch
 | 
			
		||||
    on demand.
 | 
			
		||||
 | 
			
		||||
    Eg. You can, if you like, rm -rf to uninstall a package. Or use find to
 | 
			
		||||
    list the package contents. Or du to see its size.
 | 
			
		||||
    Of course you don't have to do anything by hand, we also provide a
 | 
			
		||||
    convenient and fully-featured four-letter tool called brew.
 | 
			
		||||
 | 
			
		||||
4.  You don't have to sudo  
 | 
			
		||||
    It's up to you. We recommend not--see the relevant later section.
 | 
			
		||||
@ -36,8 +38,7 @@ Here's why you may prefer Homebrew to the alternatives:
 | 
			
		||||
    Homebrew will automatically open it for you to tweak with TextMate or
 | 
			
		||||
    $EDITOR.
 | 
			
		||||
 | 
			
		||||
    It is trivially easy to modify or customize existing formulae, and there
 | 
			
		||||
    is a quick edit command too:
 | 
			
		||||
    Or edit an existing formula:
 | 
			
		||||
 | 
			
		||||
        brew edit foo
 | 
			
		||||
 | 
			
		||||
@ -47,7 +48,7 @@ Here's why you may prefer Homebrew to the alternatives:
 | 
			
		||||
    you can build stuff by hand but still end up with package management.
 | 
			
		||||
 | 
			
		||||
    Just install to the Cellar and then call brew ln to symlink that
 | 
			
		||||
    installation into /usr/local, eg.
 | 
			
		||||
    installation into your PATH, eg.
 | 
			
		||||
 | 
			
		||||
        ./configure --prefix=/usr/local/Cellar/wget/1.10
 | 
			
		||||
        make install
 | 
			
		||||
@ -62,8 +63,8 @@ Here's why you may prefer Homebrew to the alternatives:
 | 
			
		||||
    switch on demand.
 | 
			
		||||
 | 
			
		||||
7.  Optimization  
 | 
			
		||||
    We optimise for Leopard Intel, binaries are stripped, compile flags
 | 
			
		||||
    tweaked. Nobody wants crappy, slow software. Apart from MacPorts and Fink.
 | 
			
		||||
    We optimise for (Snow) Leopard Intel, binaries are stripped, compile flags
 | 
			
		||||
    tweaked. Slow software sucks.
 | 
			
		||||
 | 
			
		||||
8.  Making the most of OS X  
 | 
			
		||||
    Homebrew knows how many cores you have thanks to RubyCocoa, so it makes
 | 
			
		||||
@ -71,21 +72,21 @@ Here's why you may prefer Homebrew to the alternatives:
 | 
			
		||||
    course).
 | 
			
		||||
 | 
			
		||||
    Homebrew knows exactly which Mac you have, and optimizes the software it
 | 
			
		||||
    builds as well it possibly can.
 | 
			
		||||
    builds as well as it possibly can.
 | 
			
		||||
 | 
			
		||||
    Homebrew can integrate with Ruby gems, CPAN and Python disttools. These
 | 
			
		||||
    tools exist already and do the job great. We don't reinvent the wheel, we
 | 
			
		||||
    just improve it by making these tools install with more management
 | 
			
		||||
    options.
 | 
			
		||||
    tools exist already and do the job great. We don't duplicate packaging 
 | 
			
		||||
    effort, we just improve on it by making these tools install with more
 | 
			
		||||
    management options.
 | 
			
		||||
 | 
			
		||||
9.  No duplication  
 | 
			
		||||
    MacPorts is an autarky. You get a duplicate copy of zlib, OpenSSL, Python,
 | 
			
		||||
    etc. To cut a long story short, Homebrew doesn't. As a result everything
 | 
			
		||||
    you install has less dependencies and builds much faster.
 | 
			
		||||
    you install has less dependencies and builds significantly faster.
 | 
			
		||||
 | 
			
		||||
10. Fork with Git  
 | 
			
		||||
    The package descriptions are all on git, so just fork to add new packages,
 | 
			
		||||
    or add extra remotes to get packages from more exotic maintainers.
 | 
			
		||||
    The formula are all on git, so just fork to add new packages, or add extra
 | 
			
		||||
    remotes to get packages from more exotic maintainers.
 | 
			
		||||
 | 
			
		||||
11. Surfing the cutting edge  
 | 
			
		||||
    If the package provides a git:// or svn:// url you can choose to install
 | 
			
		||||
@ -100,7 +101,8 @@ Here's why you may prefer Homebrew to the alternatives:
 | 
			
		||||
 | 
			
		||||
I know I've made it sound so awesome you can hardly wait to rip MacPorts out
 | 
			
		||||
and embrace the fresh, hoppy taste of Homebrew, but I should point out that it
 | 
			
		||||
is really new and still under heavy development. Thanks!
 | 
			
		||||
is really new and still under heavy development. Eg. *dependency resolution
 | 
			
		||||
and updates are still manual*. Thanks!
 | 
			
		||||
 | 
			
		||||
Max Howell -- <http://twitter.com/mxcl>
 | 
			
		||||
 | 
			
		||||
@ -112,28 +114,42 @@ so you need Xcode:
 | 
			
		||||
 | 
			
		||||
<http://developer.apple.com/technology/xcode.html>
 | 
			
		||||
 | 
			
		||||
Also, a lot of build scripts assume MacPorts or Fink on OS X. Which isn't a
 | 
			
		||||
problem until you uninstall them and stuff you built with Homebrew breaks and
 | 
			
		||||
you email me with a bug report. So uninstall them (or rename their root
 | 
			
		||||
folders if you don't want to burn bridges).
 | 
			
		||||
Many build scripts assume MacPorts or Fink on OS X. Which isn't a problem
 | 
			
		||||
until you uninstall them and stuff you built with Homebrew breaks. So
 | 
			
		||||
uninstall them (if you prefer renaming their root folders is sufficient).
 | 
			
		||||
 | 
			
		||||
<http://trac.macports.org/wiki/FAQ#uninstall>  
 | 
			
		||||
<http://www.finkproject.org/faq/usage-fink.php#removing>
 | 
			
		||||
 | 
			
		||||
Homebrew is self-contained and ready to go. Copy this directory anywhere you
 | 
			
		||||
like. But we recommend installing to /usr/local because:
 | 
			
		||||
Now, download Homebrew:
 | 
			
		||||
 | 
			
		||||
    git clone git://github.com/mxcl/homebrew.git
 | 
			
		||||
 | 
			
		||||
If this leaves you shaking your head because you are installing Homebrew
 | 
			
		||||
*in order to* install git, then try this installer script:
 | 
			
		||||
<http://gist.github.com/179275>
 | 
			
		||||
 | 
			
		||||
Homebrew is self-contained so once you've put it somewhere, it's ready to go.
 | 
			
		||||
Copy this directory anywhere you like. But we recommend installing to
 | 
			
		||||
/usr/local because:
 | 
			
		||||
 | 
			
		||||
1.  It is already in your path
 | 
			
		||||
2.  Build scripts always look in /usr/local for dependencies so it makes it
 | 
			
		||||
    easier for you personally to build and install software
 | 
			
		||||
 | 
			
		||||
You can move the location of Homebrew at a later time, although this *will*
 | 
			
		||||
break some tools because they compile they hardcode their installtion prefixes
 | 
			
		||||
into their binaries. Homebrew does make more effort than competing solutions
 | 
			
		||||
to prevent this though.
 | 
			
		||||
break some tools because they hardcode their installtion prefixes into their
 | 
			
		||||
binaries. Homebrew does make more effort than competing solutions to prevent
 | 
			
		||||
this though.
 | 
			
		||||
 | 
			
		||||
If you install outside of your home directory -- don't sudo
 | 
			
		||||
-----------------------------------------------------------
 | 
			
		||||
Finally, if you don't install to /usr/local, you have to add the following to
 | 
			
		||||
your ~/.profile file:
 | 
			
		||||
 | 
			
		||||
    export PATH=`brew --prefix`/bin:$PATH
 | 
			
		||||
    export MANPATH=`brew --prefix`/share/man:$MANPATH
 | 
			
		||||
 | 
			
		||||
Don't sudo
 | 
			
		||||
----------
 | 
			
		||||
Well clearly you can sudo if you like. Homebrew is all about you doing it your
 | 
			
		||||
way. But the Homebrew recommendation is: don't sudo!
 | 
			
		||||
 | 
			
		||||
@ -229,7 +245,7 @@ There are preliminary instructions on the [wiki][].
 | 
			
		||||
 | 
			
		||||
Contributing New Formulae
 | 
			
		||||
=========================
 | 
			
		||||
Formulae are simply Ruby scripts. Generate a formula with most bits filled-in:
 | 
			
		||||
Formulae are simple Ruby scripts. Generate a formula with most bits filled-in:
 | 
			
		||||
 | 
			
		||||
    brew mk http://foo.org/foobar-1.2.1.tar.bz2
 | 
			
		||||
 | 
			
		||||
@ -245,18 +261,10 @@ your own distribution. Maybe you want to support Tiger? Or use special compile
 | 
			
		||||
flags? Go ahead that's what git is all about! :)
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
Important Missing Bits
 | 
			
		||||
======================
 | 
			
		||||
1. Package upgrades
 | 
			
		||||
2. Dependency resolution
 | 
			
		||||
 | 
			
		||||
Coming soon!
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
Licensing
 | 
			
		||||
=========
 | 
			
		||||
Homebrew is mostly BSD licensed although some parts are public domain.
 | 
			
		||||
Individual formulae are licensed according to their authors wishes.
 | 
			
		||||
Homebrew is mostly BSD licensed although you should refer to each file to
 | 
			
		||||
confirm. Individual formulae are licensed according to their authors wishes.
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
FAQ
 | 
			
		||||
 | 
			
		||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user