12k
All articles

Como instalar e usar o Homebrew no Linux

Instale o Homebrew no Linux, configure o PATH, gerencie pacotes, compartilhe ferramentas com um Brewfile e veja o suporte a Linux, WSL e Homebrew 7.0.

OpenReplay Team
OpenReplay Team
Como instalar e usar o Homebrew no Linux

Para instalar o Homebrew no Linux, instale as ferramentas de compilação da sua distro, execute o script de instalação oficial do brew.sh, adicione brew shellenv ao arquivo de inicialização do seu shell e, em seguida, execute brew doctor para verificar a configuração.

O Ubuntu LTS costuma trazer uma versão do neovim ou do gh com um ano de atraso em relação à que você tem no Mac, e compilar a partir do código-fonte toda vez logo se torna cansativo. O Homebrew oferece versões atuais em um prefixo de propriedade do usuário, e um único Brewfile pode descrever as duas máquinas. Este guia vai da instalação ao uso no dia a dia e, depois, aborda Brewfiles, as mudanças para Linux no Homebrew 7.0, WSL e desinstalação.

Principais pontos

  • No Linux, o Homebrew é instalado em /home/linuxbrew/.linuxbrew e usa apenas a glibc e o gcc do host, e somente se forem recentes o suficiente.
  • Debian/Ubuntu precisam de build-essential procps curl file git antes da instalação. O Fedora precisa do grupo development-tools mais procps-ng curl file.
  • Um Brewfile é Ruby, então adicionar if OS.linux? ou if OS.mac? a uma linha permite que um único arquivo atenda às duas plataformas.
  • O Homebrew 7.0 troca o sandbox Bubblewrap pelo recurso Landlock do kernel, então não há nada extra para instalar.
  • No Windows, o Homebrew roda apenas dentro do WSL 2. O WSL 1 é Tier 3 e o Windows nativo não é suportado.

Quando usar o Homebrew no Linux em vez de apt ou dnf?

Use o Homebrew para ferramentas de linha de comando que você quer em versões mais novas do que as fornecidas pela sua distribuição. Mantenha apt, dnf ou pacman para drivers, bibliotecas do sistema, daemons de servidor e qualquer coisa da qual outros pacotes do sistema dependam. A documentação do Homebrew on Linux explica que o Homebrew depende do host apenas para a glibc e o gcc, e somente quando eles são recentes o suficiente. Em distribuições mais antigas, ele traz suas próprias cópias de ambos. Por isso, os pacotes do Homebrew ficam lado a lado com os pacotes do sistema, sem interferir neles.

Use o Homebrew paraUse apt / dnf / pacman para
node, gh, ripgrep, neovim em versões atuaisDrivers de GPU, módulos do kernel
Instalações por usuário sob um único prefixoBibliotecas compartilhadas do sistema
Um Brewfile compartilhado com o seu MacPacotes de servidor gerenciados pelo systemd
Qualquer coisa da qual outros pacotes do sistema dependam

Requisitos e ferramentas de compilação

O Homebrew precisa de um compilador C do sistema funcionando e das ferramentas de desenvolvimento padrão da sua distro. Instale-as com o gerenciador de pacotes do sistema antes de executar o instalador do Homebrew:

# Debian / Ubuntu
sudo apt-get install build-essential procps curl file git

# Fedora
sudo dnf group install development-tools
sudo dnf install procps-ng curl file

# Arch Linux
sudo pacman -S base-devel procps-ng curl file git

Os requisitos do Homebrew on Linux exigem um compilador C do sistema funcionando, além das ferramentas de desenvolvimento padrão da sua distribuição, então instale-as primeiro mesmo que o Homebrew depois adicione seu próprio gcc.

A página Support Tiers define o Tier 1 do Linux como todos os itens a seguir:

  • Ubuntu dentro da sua janela de suporte padrão, ou uma imagem Docker do Homebrew
  • glibc do sistema 2.39 ou mais recente
  • kernel 3.2 ou mais recente
  • ARM64 ou x86_64 com SSSE3
  • o prefixo padrão ou um prefixo personalizado compatível
  • instalação a partir de bottles

Hosts Debian, Fedora e Arch não são Tier 1. Em sistemas com glibc de 2.13 a 2.38 (Tier 2), o Homebrew instala sua própria glibc. Outras plataformas são mais limitadas: placas ARM de 32 bits, como o Raspberry Pi, não recebem bottles e ficam no Tier 3, e x86 de 32 bits não é suportado de forma alguma.

Instale o Homebrew e adicione-o ao PATH

Execute o instalador do brew.sh como seu usuário normal, não como root:

/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"

O instalador configura o Homebrew em /home/linuxbrew/.linuxbrew. O prefixo padrão oferece o suporte mais confiável a bottles. A opção --path do instalador aceita um prefixo personalizado que não seja maior que o padrão (26 bytes), mas as notas de lançamento do Homebrew 7.0.0 ainda descrevem prefixos não padrão como não suportados por enquanto, então mantenha o padrão, a menos que tenha um motivo para não fazê-lo.

Em seguida, carregue o Homebrew no shell atual e torne isso persistente:

eval "$(/home/linuxbrew/.linuxbrew/bin/brew shellenv)"
echo 'eval "$(/home/linuxbrew/.linuxbrew/bin/brew shellenv)"' >> ~/.bashrc

Se você usa zsh, adicione a linha ao ~/.zshrc. A configuração do shellenv na página de documentação do Linux cobre os dois shells.

Depois, verifique a instalação:

brew doctor
brew install hello

O brew doctor relata problemas de configuração. Em uma distribuição mais antiga, o primeiro brew install também instala a glibc e o gcc próprios do Homebrew.

Instale pacotes e mantenha-os atualizados

Instale pacotes com brew install, atualize os metadados de pacotes do Homebrew com brew update e faça upgrade do que você instalou com brew upgrade:

brew install gh ripgrep neovim node
brew update      # refresh Homebrew and package metadata
brew upgrade     # upgrade installed packages

Nunca coloque sudo antes de um comando brew. Sempre execute o brew com a conta proprietária do prefixo. O instalador e a etapa de ferramentas de compilação podem pedir acesso elevado, mas as instalações e upgrades do dia a dia rodam com o seu usuário. A manpage do brew lista todos os subcomandos e flags.

Compartilhe uma única configuração do Homebrew entre Linux e Mac com um Brewfile

Um Brewfile lista os pacotes que uma máquina deve ter, e o brew bundle instala o que estiver faltando. Um Brewfile é avaliado como Ruby, então você pode adicionar uma condição de plataforma a qualquer linha:

# Brewfile
brew "git"
brew "gh"
brew "neovim"
brew "node"

if OS.mac?
  cask "firefox"
end

brew "gnupg" if OS.mac?

O if OS.linux? funciona da mesma forma para linhas exclusivas do Linux. A documentação do Brewfile observa que o brew bundle list não exibirá gnupg no Linux quando ele estiver condicionado com OS.mac?. Alguns casks funcionam no Linux, mas mantenha condicionados os casks exclusivos do macOS.

Crie, aplique e verifique um Brewfile:

brew bundle dump --file=~/dotfiles/Brewfile --force   # snapshot what's installed
brew bundle install --file=~/dotfiles/Brewfile         # install/upgrade to match
brew bundle check --file=~/dotfiles/Brewfile || brew bundle install --file=~/dotfiles/Brewfile

O brew bundle dump registra em um Brewfile as formulae, casks, taps e outros tipos de pacotes suportados que estão instalados. A linha check || install é idempotente, então é segura para colocar em scripts de bootstrap. Adicione --verbose ao check para ver quais entradas não foram atendidas.

Um Brewfile registra quais pacotes você quer, não quais versões. O Homebrew sempre avança para a versão mais recente de cada pacote, então você não pode pedir uma versão antiga arbitrária, e o brew bundle não tem lock file. Para impedir que o brew bundle faça upgrade de dependências instaladas, passe --no-upgrade ou defina HOMEBREW_BUNDLE_NO_UPGRADE=1. Isso não fixa versões.

Tenha cuidado com brew bundle cleanup --force. Ele desinstala tudo o que não estiver listado no Brewfile.

O que muda no Linux com o Homebrew 7.0?

O Homebrew 7.0, lançado em 13 de setembro de 2026, usa o recurso Landlock do kernel para o seu sandbox no Linux. As notas de lançamento da versão 7.0.0 explicam que a 7.0.0 abandona o sandbox Bubblewrap, adicionado no Homebrew 6.0.0, em favor do Landlock, que não exige pacotes extras nem permissões elevadas no Docker. O Landlock é um recurso do kernel que permite que um processo sem privilégios restrinja aquilo que pode acessar.

MudançaO que fazer
Landlock substitui o BubblewrapNada para instalar
Kernel sem LandlockOs builds rodam sem sandbox e o brew doctor exibe um aviso
HOMEBREW_SANDBOX_LINUXDesativada. Remova-a do rc do seu shell
HOMEBREW_NO_SANDBOX_LINUXObsoleta e com remoção prevista para 2027-12-11, sem opção de desativação substituta
ARM64 LinuxTier 1 desde o Homebrew 5.0.0

As notas de lançamento informam que o Homebrew funciona com a ABI 2 do Landlock, disponível no Linux 6.1, e exibe um alerta se o kernel não conseguir aplicar restrições de rede. Para verificar sua máquina:

uname -r                           # kernel version
brew config                        # 7.0 reports the Landlock ABI here
brew doctor                        # shows an advisory if the sandbox is unavailable
grep -n HOMEBREW_SANDBOX_LINUX ~/.bashrc ~/.zshrc

O Homebrew funciona no Windows?

O Homebrew roda no Windows apenas por meio do WSL 2. O WSL 1 é uma plataforma Tier 3 e o Windows nativo não é suportado. No WSL 1, a documentação do Linux alerta que alguns executáveis instalados pelo Homebrew podem se comportar de forma inesperada por causa de problemas conhecidos do WSL 1, e recomenda migrar para o WSL 2. Configure uma distro com o guia do WSL da Microsoft e, em seguida, siga dentro dela os passos para Linux descritos acima.

Como desinstalar o Homebrew?

Para remover o Homebrew, use o script de desinstalação do repositório Homebrew/install. O README dele traz o comando e as opções atuais.

Em resumo, configurar o Homebrew no Linux leva quatro passos: instalar as ferramentas de compilação, executar o script do brew.sh, adicionar o shellenv ao rc do seu shell e executar brew doctor. Depois disso, execute brew bundle dump no seu Mac, adicione if OS.mac? às linhas exclusivas do macOS e execute brew bundle install na sua máquina Linux para que ambas tenham as mesmas ferramentas.

Perguntas frequentes

Posso instalar o Homebrew no Linux sem sudo ou acesso root?

Sim, desde que o prefixo seja gravável pela sua conta. O instalador via shell precisa de acesso de escrita ao prefixo, então peça a um administrador que crie /home/linuxbrew/.linuxbrew e transfira a propriedade para você, ou use a opção --path do instalador para escolher um prefixo personalizado compatível com 26 bytes ou menos. Depois que isso estiver configurado, instalar e atualizar formulae nunca exige sudo.

O Homebrew ainda fornece bottles para o Ubuntu 22.04?

O Ubuntu 22.04 traz a glibc 2.35, então é uma plataforma Tier 2 desde que o Homebrew 6.0.0 elevou a base do Linux para a glibc 2.39. O Homebrew não gera mais novos bottles para esses sistemas, instala sua própria glibc e o brew doctor exibe um aviso de suporte. Para suporte Tier 1, atualize para o Ubuntu 24.04 ou use a imagem Docker ghcr.io/homebrew/brew.

Posso instalar casks do Homebrew no Linux?

Alguns casks funcionam. O Homebrew 4.5.0 adicionou suporte preliminar a casks no Linux, que abrange principalmente fontes, como font-fira-code, e casks que distribuem binários para Linux. O Homebrew 6.0.0 adicionou suporte a AppImage. Casks que distribuem apenas um app para macOS não serão instalados no Linux, então, em um Brewfile compartilhado, condicione essas linhas com if OS.mac?.

Qual imagem Docker devo usar para rodar o Homebrew no Linux em CI?

Use ghcr.io/homebrew/brew. O Homebrew 7.0.0 removeu a imagem ghcr.io/homebrew/ubuntu22.04 e indica ghcr.io/homebrew/brew como sua substituta. As imagens Docker fornecidas pelo Homebrew contam como uma configuração Linux Tier 1 segundo a página Support Tiers, o que as torna uma escolha confiável para builds de CI que precisam de bottles. Se algum pipeline ainda referenciar a imagem ubuntu22.04, troque-a por ghcr.io/homebrew/brew.

Understand every bug

Uncover frustrations, understand bugs and fix slowdowns like never before with OpenReplay — self-hosted, with full data ownership.

Star on GitHub

We use cookies to improve your experience. By using our site, you accept cookies.