user gravatar

Установка NPM пакетов глобально без sudo

Установка NPM пакетов глобально без sudo

Node.js набирает огромную популярность. Одна из самых его замечательных особенностей - NPM пакеты или модули. По-умолчанию они устанавливаются локально, в директорию откуда вы запустили команду. Однако есть способ установки NPM пакетов глобально. Проблема в том что для этого вам нужно запускать команду установки пакетов с правами root пользователя.

К счастью эту проблему можно исправить простыми шагами.

1. Создание директории для глобальных пакетов

$ mkdir ~/.npm-packages

2. Указать где будут находиться пакеты с помощью .bashrc

$ NPM_PACKAGES="${HOME}/.npm-packages"

3. Указать npm где вы собираетесь хранить глобальные пакеты

Для этого откройте файл ~/.npmrc с помощью текстового редактора и вставьте следующую строку:

prefix=${HOME}/.npm-packages

4. Убедитесь, что Node.js будет знать где находятся пакеты

Откройте опять ~/.bashrc с помощью текстового редактора и вставьте следующие строки:

NODE_PATH="$NPM_PACKAGES/lib/node_modules:$NODE_PATH"
PATH="$NPM_PACKAGES/bin:$PATH"
unset MANPATH
MANPATH="$NPM_PACKAGES/share/man:$(manpath)"

Если все предыдущие шаги вам кажутся слишком сложными, то можете воспользоваться скриптом npm-g_nosudo, он все предыдущие шаги делает автоматически.