Skip to content

techstackspace/developers-setting

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

17 Commits
 
 
 
 
 
 
 
 

Repository files navigation

Homebrew Installation and Usage Guide

Cover Image

What is Homebrew?

Homebrew (often called brew) is a package manager for macOS and Linux that allows users to easily install, update, and manage software applications and command-line tools.

Checking Your Default Shell

Before installing Homebrew, it's essential to verify which shell you are using. Run:

echo $SHELL  # or
echo $0

If you're using Zsh (which is the default on modern macOS versions), you may need to configure certain environment variables differently than in Bash.

(Optional) Switch to Zsh

If your default shell is not Zsh, you can switch using:

cat /etc/shells  # List available shells
chsh -s /bin/zsh  # Change default shell to Zsh

Close the terminal and reopen it for changes to take effect.


Prerequisites

Before you start installing and using Homebrew to manage packages, make sure you have the Command Line Tools (CTL) installed by running the following command:

  • Check if CTL is installed:
xcode-select -p

If it does not return a valid installation path or shows an error like "command not found", install CTL using:

xcode-select --install

This will prompt a macOS dialog to install the necessary tools. Follow the instructions and wait for the installation to complete.

Installing Homebrew

Step 1: Open the Homebrew Website

Run:

xdg-open https://brew.sh  # Linux
open https://brew.sh  # macOS

Or visit Homebrew manually.

Step 2: Copy and Run the Installation Command

Copy the installation script from the website and run it in your terminal:

/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
  • You may need to enter your password to allow sudo access.
  • Follow interactive instructions to add Homebrew to your PATH.
  • To uninstall Homebrew, replace /install.sh/ with /uninstall.sh/ in the command.
  • Before uninstalling Homebrew, first remove all installed packages to avoid orphaned files.

Step 3: Configure Environment Variables

Since zprofile loads once per login session, set the Homebrew path there:

cat ~/.zprofile  # View existing configurations

To modify it, use:

vim ~/.zprofile  # or
nano ~/.zprofile

If Homebrew is uninstalled, ensure you remove its path from .zprofile or .zshrc to prevent errors.

Step 4: Verify Installation

Run:

brew --prefix  # Confirm Homebrew’s location
brew -v  # Check installed version

Installing Git Using Homebrew

Even though Git is preinstalled on macOS and Linux, installing it via Homebrew ensures easier updates.

brew search git  # Search for Git
brew install git  # Install Git
brew install --formula git  # Explicitly install as a formula

During installation, dependencies like gettext, pcre2, and libunistring may also be installed.

Verify Installation

git --version  # Check Git version
which git  # Locate Git installation

Understanding Homebrew Package Types

Homebrew has two main package types:

  • Formulae (command-line tools, e.g., git)
  • Casks (GUI applications, e.g., Arc Browser)

To install a cask package:

brew search arc  # Search for Arc Browser
brew install --cask arc  # Install Arc Browser

Good practice: Always use --cask when installing GUI apps.

Listing Installed Packages

brew list  # List installed packages
brew list | grep git  # Filter results using `grep`

Managing Homebrew Packages

Before upgrading or removing Homebrew packages, ensure Terminal has necessary permissions:

  • Go to Apple icon → Privacy & Security → App Management
  • Toggle the button for Terminal

Upgrade Packages

brew upgrade --cask arc  # Upgrade a specific package
brew upgrade --greedy  # Upgrade all dependencies

Uninstall Packages

brew uninstall --formula <package-name>  # Remove a formula package
brew uninstall --cask <package-name>  # Remove a cask package
brew uninstall --zap --cask <package-name>  # Extra cleanup for GUI apps

The --zap flag in brew uninstall should only be used for cask packages (GUI applications)

Cleanup Unused Packages

brew cleanup  # Free up space by removing old versions
brew autoremove  # Remove orphaned dependencies

Exploring Homebrew Commands

brew help  # View basic commands
brew info <package-name>  # Get details about a package
man brew  # View all available commands
brew home  # Open Homebrew homepage
brew docs  # Open Homebrew documentation

For searching packages manually, visit Homebrew Formulae.


User-Specific Settings: Opening Websites from Terminal

To avoid typing https:// every time, add this function to your ~/.zshrc (for Zsh) or ~/.bashrc (for Bash):

macOS (Uses open)

oh() {
  local input="$*"
  if [[ "$input" =~ ^[a-zA-Z0-9.-]+\.[a-zA-Z]{2,}$ && ! "$input" =~ \  ]]; then
    open "https://$input"
  else
    open "https://www.google.com/search?q=$(echo "$input" | tr ' ' '+')"
  fi
}

Linux (Uses xdg-open)

oh() {
  local input="$*"
  if [[ "$input" =~ ^[a-zA-Z0-9.-]+\.[a-zA-Z]{2,}$ && ! "$input" =~ [[:space:]] ]]; then
    xdg-open "https://$input"
  else
    xdg-open "https://www.google.com/search?q=$(echo "$input" | tr ' ' '+')"
  fi
}

Source the file to apply changes:

source ~/.zshrc  # or source ~/.bashrc

Now, simply typing brew.sh will open the Homebrew website!


This guide ensures a smooth Homebrew installation and management experience. 🚀