Skip to content

Instalar fnm no Windows

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

Métodos de Instalação

Usando winget (Recomendado)

winget é o gerenciador de pacotes integrado ao Windows 11 e Windows 10 (1809+):

powershell
winget install Schniz.fnm

Usando Scoop

Scoop é um gerenciador de pacotes de linha de comando popular no Windows:

powershell
# Instalar Scoop (se ainda não estiver instalado)
Set-ExecutionPolicy RemoteSigned -Scope CurrentUser
irm get.scoop.sh | iex

# Instalar fnm
scoop install fnm

Usando Chocolatey

Chocolatey é um gerenciador de pacotes amplamente utilizado no Windows:

powershell
# Instalar Chocolatey (se ainda não estiver instalado)
Set-ExecutionPolicy Bypass -Scope Process -Force
[System.Net.ServicePointManager]::SecurityProtocol = [System.Net.ServicePointManager]::SecurityProtocol -bor 3072
iex ((New-Object System.Net.WebClient).DownloadString('https://community.chocolatey.org/install.ps1'))

# Instalar fnm
choco install fnm

Usando Script de Instalação

No Git Bash ou WSL:

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

Download Manual

  1. Visite a página de Releases do fnm
  2. Baixe fnm-windows.zip
  3. Extraia para o diretório de destino
  4. Adicione o diretório extraído ao PATH do sistema

Configurar PowerShell

Após a instalação, você precisa configurar o ambiente do PowerShell.

Configuração Automática

Execute o seguinte comando para adicionar configuração do fnm ao perfil do PowerShell:

powershell
# Criar perfil (se não existir)
if (!(Test-Path -Path $PROFILE)) {
    New-Item -ItemType File -Path $PROFILE -Force
}

# Adicionar configuração fnm
Add-Content -Path $PROFILE -Value 'fnm env --use-on-cd | Out-String | Invoke-Expression'

# Recarregar configuração
. $PROFILE

Configuração Manual

  1. Abrir perfil do PowerShell:
powershell
notepad $PROFILE
  1. Adicionar o seguinte conteúdo:
powershell
fnm env --use-on-cd | Out-String | Invoke-Expression
  1. Salvar e recarregar:
powershell
. $PROFILE

Configurar VS Code

Se você usa VS Code, precisa configurar o terminal integrado:

  1. Abrir Configurações (Ctrl + ,)
  2. Pesquisar por terminal.integrated.profiles.windows
  3. Adicionar ou modificar configuração do PowerShell:
json
{
  "terminal.integrated.profiles.windows": {
    "PowerShell": {
      "source": "PowerShell",
      "args": ["-NoLogo"]
    }
  }
}

Usando Mirror na China

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

powershell
# Definir variável de ambiente
[Environment]::SetEnvironmentVariable("FNM_NODE_DIST_MIRROR", "https://npmmirror.com/mirrors/node", "User")

# Ou adicionar ao perfil do PowerShell
$env:FNM_NODE_DIST_MIRROR = "https://npmmirror.com/mirrors/node"
fnm env --use-on-cd | Out-String | Invoke-Expression

Verificar Instalação

powershell
# Verificar versão fnm
fnm --version

# Instalar Node.js
fnm install --lts

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

Conclusão do Shell

Habilitar conclusão de comandos do PowerShell:

powershell
# Adicionar script de conclusão ao perfil
fnm completions --shell powershell | Out-String | Add-Content $PROFILE

# Recarregar configuração
. $PROFILE

Problemas Comuns

Comando Não Encontrado

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

  1. Confirmar se fnm foi adicionado ao PATH
  2. Reabrir janela do PowerShell
  3. Verificar caminho de instalação:
powershell
where.exe fnm

Erro de Política de Execução

Se você encontrar erro de política de execução:

powershell
# Permitir execução de scripts
Set-ExecutionPolicy RemoteSigned -Scope CurrentUser

Variáveis de Ambiente Não Efetivas

Certifique-se de que o perfil do PowerShell está carregado corretamente:

powershell
# Verificar caminho do perfil
$PROFILE

# Verificar conteúdo do perfil
Get-Content $PROFILE

# Recarregar manualmente
. $PROFILE

Usar fnm no WSL

Se você usa fnm no WSL:

bash
# Instalar no WSL
curl -fsSL https://fnm.vercel.app/install | bash

# Configurar Bash
echo 'eval "$(fnm env --use-on-cd)"' >> ~/.bashrc
source ~/.bashrc

Próximos Passos

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