- tree
- wget
- htop
- cask
- the silver searcher
- hub
- vim
- tmux
- ranger
- pyenv
- rbenv
- more to come...
- nearly all applications you can think of are downloadable with cask
- “To install, drag this icon…” no more!
- aliases for pruning and cleaning
- Point for Mac
- Tab Snooze
- etc.
Homebrew is a package management system for OS X. You can read more about it here, or simply run
ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"to install it.
First things first, you need to familiarize yourself with some of the basic homebrew commands.
All commands start with the binary brew.
If you are looking for something in particular, you can first search for it to see if homebrew has a formulae for what you're looking for. For example, running brew search tree will return mvptree pstree tree treecc treeline.
Once you find the formulae you're looking for, you can run brew install tree.
brew list- List all installed formulaebrew update– Fetch the newest version of Homebrew and all formulae form GitHub using git.brew upgrade [formulae]– Upgrade outdated formulae. This can take an optional argument if you only want to update one formulatebrew uninstall <formulae>– uninstall a specific formulae
There are a myriad of other commands and tasks you can run that we won't discuss in detail here. Running man brew or reading the documentation linked on Homebrew's main page.
Now that you know how Homebrew functions, let's get into so of the best packages to install.
Right off the bat, brew is useful for things like git, vim, zsh, tmux, and many more base level tools that a lot of developers normally already have. We're going to look at some lesser known packages, but just know that Homebrew is getting larger, and almost anything that you would want that runs in the terminal is available as a homebrew package. If it isn't, it's incredibly easy to make it yourself. More on this later.
This is easily one of my favorites. You can think of hub as all the same functionality of git, but with add-ons that make it compatible with GitHub.
When you're deep in the codebase and realize that you haven't commited any of your hard work to GitHub, it's annoying to have to jump over to your browser, surf to https://github.com, create a new repo, etc. That context switch just pulled you away from your important work and forced you to interact with – gulp – a GUI interface. How unfitting. This is where hub comes into play. Important tasks that you were once only able to do through GitHub are now available via the terminal. Want to create a new remote repo and automatically set GitHub as the origin? hub create. Want to open a pull request? hub pull-request. Want to view your remote repo on GitHub from any sub-directory? hub browse. Of course this is not an exhaustive list of commands for hub. Use hub --help or man hub for more information, customizing flags, and other goodies.