Skip to content

Установка fnm на macOS

fnm имеет несколько способов установки на macOS. Это руководство поможет вам выбрать наиболее подходящий метод.

Способы установки

Использование Homebrew (рекомендуется)

Homebrew — самый популярный менеджер пакетов на macOS:

bash
# Установить fnm
brew install fnm

Использование скрипта curl

Не требуется менеджер пакетов, установка напрямую:

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

Использование MacPorts

Если вы используете MacPorts:

bash
port install fnm

Ручная загрузка

  1. Посетите страницу релизов fnm
  2. Загрузите fnm-macos.zip (Intel) или fnm-macos-arm64.zip (Apple Silicon)
  3. Распакуйте и переместите в директорию PATH:
bash
# Apple Silicon (M1/M2/M3)
unzip fnm-macos-arm64.zip
sudo mv fnm /usr/local/bin

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

Конфигурация Shell

macOS по умолчанию использует Zsh, но также поддерживает Bash и Fish.

Zsh (по умолчанию)

Отредактируйте ~/.zshrc:

bash
# Открыть файл конфигурации
nano ~/.zshrc

# Добавить следующий контент
eval "$(fnm env --use-on-cd)"

Перезагрузить конфигурацию:

bash
source ~/.zshrc

Bash

Отредактируйте ~/.bashrc или ~/.bash_profile:

bash
# Открыть файл конфигурации
nano ~/.bash_profile

# Добавить следующий контент
eval "$(fnm env --use-on-cd)"

Перезагрузить конфигурацию:

bash
source ~/.bash_profile

Fish

Отредактируйте ~/.config/fish/config.fish:

fish
# Открыть файл конфигурации
nano ~/.config/fish/config.fish

# Добавить следующий контент
fnm env --use-on-c | source

Перезагрузить конфигурацию:

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

Завершение Shell

Завершение Zsh

bash
# Добавить скрипт завершения
fnm completions --shell zsh > ~/.zsh/completion/_fnm

# Убедиться, что fpath включает директорию завершения
# Добавить в ~/.zshrc
fpath=(~/.zsh/completion $fpath)

# Включить завершение
autoload -U compinit && compinit

Или с использованием oh-my-zsh:

bash
# Создать директорию завершения
mkdir -p ~/.oh-my-zsh/completions

# Сгенерировать скрипт завершения
fnm completions --shell zsh > ~/.oh-my-zsh/completions/_fnm

Завершение Bash

bash
# Добавить скрипт завершения
fnm completions --shell bash >> ~/.bashrc

# Перезагрузить
source ~/.bashrc

Завершение Fish

bash
# Сгенерировать скрипт завершения
fnm completions --shell fish > ~/.config/fish/completions/fnm.fish

# Перезагрузить
source ~/.config/fish/config.fish

Использование зеркала в Китае

В материковом Китае рекомендуется настроить зеркало для ускорения загрузок:

bash
# Добавить в файл конфигурации Shell
export FNM_NODE_DIST_MIRROR=https://npmmirror.com/mirrors/node

# Или указать во время eval
eval "$(fnm env --use-on-cd --node-dist-mirror=https://npmmirror.com/mirrors/node)"

Примечания для Apple Silicon (M1/M2/M3)

fnm полностью поддерживает Apple Silicon:

  • Автоматически определяет архитектуру системы
  • Устанавливает нативную ARM64 версию Node.js
  • Поддерживает эмуляцию x64 (через Rosetta 2)

Установка версии x64

Если вам нужна версия Node.js x64:

bash
# Установить Node.js архитектуры x64
fnm install 20 --arch=x64

Проверка установки

bash
# Проверить версию fnm
fnm --version

# Установить Node.js
fnm install --lts

# Проверить Node.js
node --version
npm --version

Общие проблемы

Команда не найдена

Если команда fnm не найдена после установки:

bash
# Проверить путь к fnm
which fnm

# Если установлено через curl, убедиться, что PATH включает
echo $PATH

# Вручную добавить в PATH
export PATH="$HOME/.fnm:$PATH"

Проблемы с разрешениями

Если возникают проблемы с разрешениями:

bash
# Убедиться, что директория имеет правильные разрешения
chmod +x ~/.fnm/fnm

Установка Homebrew не работает

bash
# Переподключить
brew unlink fnm && brew link fnm

# Проверить установку
brew list fnm

Следующие шаги

После установки вы можете:

Связанные ссылки