Skip to content

Instalar fnm no macOS

fnm tem múltiplos métodos de instalação no macOS. Este guia ajudará você a escolher o método mais adequado.

Métodos de Instalação

Usando Homebrew (Recomendado)

Homebrew é o gerenciador de pacotes mais popular no macOS:

bash
# Instalar fnm
brew install fnm

Usando Script curl

Não requer gerenciador de pacotes, instale diretamente:

bash
curl -fsSL https://fnm.vercel.app/install | bash

Usando MacPorts

Se você usa MacPorts:

bash
port install fnm

Download Manual

  1. Visite a página de Releases do fnm
  2. Baixe fnm-macos.zip (Intel) ou fnm-macos-arm64.zip (Apple Silicon)
  3. Extraia e mova para o diretório PATH:
bash
# Apple Silicon (M1/M2/M3)
unzip fnm-macos-arm64.zip
sudo mv fnm /usr/local/bin

# Mac Intel
unzip fnm-macos.zip
sudo mv fnm /usr/local/bin

Configurar Shell

macOS usa Zsh por padrão, mas também suporta Bash e Fish.

Zsh (Padrão)

Editar ~/.zshrc:

bash
# Abrir arquivo de configuração
nano ~/.zshrc

# Adicionar o seguinte conteúdo
eval "$(fnm env --use-on-cd)"

Recarregar configuração:

bash
source ~/.zshrc

Bash

Editar ~/.bashrc ou ~/.bash_profile:

bash
# Abrir arquivo de configuração
nano ~/.bash_profile

# Adicionar o seguinte conteúdo
eval "$(fnm env --use-on-cd)"

Recarregar configuração:

bash
source ~/.bash_profile

Fish

Editar ~/.config/fish/config.fish:

fish
# Abrir arquivo de configuração
nano ~/.config/fish/config.fish

# Adicionar o seguinte conteúdo
fnm env --use-on-c | source

Recarregar configuração:

fish
source ~/.config/fish/config.fish

Conclusão do Shell

Conclusão Zsh

bash
# Adicionar script de conclusão
fnm completions --shell zsh > ~/.zsh/completion/_fnm

# Garantir que fpath inclua diretório de conclusão
# Adicionar ao ~/.zshrc
fpath=(~/.zsh/completion $fpath)

# Habilitar conclusão
autoload -U compinit && compinit

Ou usando oh-my-zsh:

bash
# Criar diretório de conclusão
mkdir -p ~/.oh-my-zsh/completions

# Gerar script de conclusão
fnm completions --shell zsh > ~/.oh-my-zsh/completions/_fnm

Conclusão Bash

bash
# Adicionar script de conclusão
fnm completions --shell bash >> ~/.bashrc

# Recarregar
source ~/.bashrc

Conclusão Fish

bash
# Gerar script de conclusão
fnm completions --shell fish > ~/.config/fish/completions/fnm.fish

# Recarregar
source ~/.config/fish/config.fish

Usando Mirror na China

Na China continental, é recomendado configurar um mirror para acelerar downloads:

bash
# Adicionar ao arquivo de configuração do Shell
export FNM_NODE_DIST_MIRROR=https://npmmirror.com/mirrors/node

# Ou especificar durante eval
eval "$(fnm env --use-on-cd --node-dist-mirror=https://npmmirror.com/mirrors/node)"

Observações para Apple Silicon (M1/M2/M3)

fnm suporta totalmente Apple Silicon:

  • Detecta automaticamente a arquitetura do sistema
  • Instala versão nativa ARM64 do Node.js
  • Suporta emulação x64 (via Rosetta 2)

Instalar Versão x64

Se você precisar da versão x64 do Node.js:

bash
# Instalar arquitetura x64 do Node.js
fnm install 20 --arch=x64

Verificar Instalação

bash
# Verificar versão fnm
fnm --version

# Instalar Node.js
fnm install --lts

# Verificar Node.js
node --version
npm --version

Problemas Comuns

Comando Não Encontrado

Se o comando fnm não for encontrado após a instalação:

bash
# Verificar caminho fnm
which fnm

# Se instalado via curl, garantir que PATH inclua
echo $PATH

# Adicionar manualmente ao PATH
export PATH="$HOME/.fnm:$PATH"

Problemas de Permissão

Se você encontrar problemas de permissão:

bash
# Garantir que o diretório tenha permissões corretas
chmod +x ~/.fnm/fnm

Instalação Homebrew Não Funciona

bash
# Re-link
brew unlink fnm && brew link fnm

# Verificar instalação
brew list fnm

Próximos Passos

Após a instalação, você pode: