Skip to content

Instalar fnm en Windows

fnm proporciona múltiples métodos de instalación en Windows. Esta guía te ayudará a elegir el método más adecuado.

Métodos de Instalación

Usando winget (Recomendado)

winget es el gestor de paquetes integrado en Windows 11 y Windows 10 (1809+):

powershell
winget install Schniz.fnm

Usando Scoop

Scoop es un gestor de paquetes de línea de comandos popular en Windows:

powershell
# Instalar Scoop (si no está instalado)
Set-ExecutionPolicy RemoteSigned -Scope CurrentUser
irm get.scoop.sh | iex

# Instalar fnm
scoop install fnm

Usando Chocolatey

Chocolatey es un gestor de paquetes ampliamente utilizado en Windows:

powershell
# Instalar Chocolatey (si no está 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 Instalación

En Git Bash o WSL:

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

Descarga Manual

  1. Visita la página de Releases de fnm
  2. Descarga fnm-windows.zip
  3. Extraer al directorio de destino
  4. Añadir el directorio extraído al PATH del sistema

Configurar PowerShell

Después de la instalación, necesitas configurar el entorno de PowerShell.

Configuración Automática

Ejecuta el siguiente comando para añadir la configuración de fnm al perfil de PowerShell:

powershell
# Crear perfil (si no existe)
if (!(Test-Path -Path $PROFILE)) {
    New-Item -ItemType File -Path $PROFILE -Force
}

# Añadir configuración de fnm
Add-Content -Path $PROFILE -Value 'fnm env --use-on-cd | Out-String | Invoke-Expression'

# Recargar configuración
. $PROFILE

Configuración Manual

  1. Abrir perfil de PowerShell:
powershell
notepad $PROFILE
  1. Añadir el siguiente contenido:
powershell
fnm env --use-on-cd | Out-String | Invoke-Expression
  1. Guardar y recargar:
powershell
. $PROFILE

Configurar VS Code

Si usas VS Code, necesitas configurar la terminal integrada:

  1. Abrir Configuración (Ctrl + ,)
  2. Buscar terminal.integrated.profiles.windows
  3. Añadir o modificar configuración de PowerShell:
json
{
  "terminal.integrated.profiles.windows": {
    "PowerShell": {
      "source": "PowerShell",
      "args": ["-NoLogo"]
    }
  }
}

Usar Mirror en China

En China continental, se recomienda configurar un mirror para acelerar las descargas:

powershell
# Establecer variable de entorno
[Environment]::SetEnvironmentVariable("FNM_NODE_DIST_MIRROR", "https://npmmirror.com/mirrors/node", "User")

# O añadir al perfil de PowerShell
$env:FNM_NODE_DIST_MIRROR = "https://npmmirror.com/mirrors/node"
fnm env --use-on-cd | Out-String | Invoke-Expression

Verificar Instalación

powershell
# Verificar versión de fnm
fnm --version

# Instalar Node.js
fnm install --lts

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

Autocompletado del Shell

Habilitar autocompletado de comandos de PowerShell:

powershell
# Añadir script de autocompletado al perfil
fnm completions --shell powershell | Out-String | Add-Content $PROFILE

# Recargar configuración
. $PROFILE

Problemas Comunes

Comando No Encontrado

Si el comando fnm no se encuentra después de la instalación:

  1. Confirmar que fnm está añadido al PATH
  2. Reabrir ventana de PowerShell
  3. Verificar ruta de instalación:
powershell
where.exe fnm

Error de Política de Ejecución

Si encuentras un error de política de ejecución:

powershell
# Permitir ejecución de scripts
Set-ExecutionPolicy RemoteSigned -Scope CurrentUser

Las Variables de Entorno No Tienen Efecto

Asegúrate de que el perfil de PowerShell se carga correctamente:

powershell
# Verificar ruta del perfil
$PROFILE

# Verificar contenido del perfil
Get-Content $PROFILE

# Recargar manualmente
. $PROFILE

Usar fnm en WSL

Si usas fnm en WSL:

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

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

Siguientes Pasos

Después de la instalación, puedes:

Enlaces Relacionados