При установке пакета глобально может возникнуть ошибка:
Error: EACCES: permission denied...
Решение:
1. Создать директорию для установки глобальных пакетов внутри домашней директории:
mkdir ~/.npm-global
2. Настроить npm на использование созданной директории:
npm config set prefix '~/.npm-global'
3. Дописать в ~/.profile:
export PATH=~/.npm-global/bin:$PATH
или в ~/.config/fish/config.fish:
set -gx PATH ~/.npm-global/bin $PATH
4. Выполнить файл:
source ~/.profile
или перезапустить шелл.
5. Теперь можно устанавливать пакеты глобально без sudo:
npm install -g elm