Назад | Перейти на главную страницу

Есть ли способ остановить apt-get upgrade, понижающий npm до версии 2?

Я установил nodejs 4 на Ubuntu 14.04, используя официальный PPA node, как описано здесь. Похоже, что по умолчанию используется npm v2, поэтому я обновил npm до v3, используя его (npm update --global). Версия 3 требуется для программного обеспечения, которое я развертываю.

Все в порядке, пока я не запустил регулярные обновления безопасности и т. Д., Используя apt-get update/upgrade и npm постоянно понижается до v2.

Есть ли способ предотвратить изменение глобальных пакетов npm (в частности, самого npm) с помощью apt-get?

Некоторые файлы конфигурации в случае необходимости:

# /etc/apt/sources.list
deb http://mirrors.digitalocean.com/ubuntu trusty main restricted
deb-src http://mirrors.digitalocean.com/ubuntu trusty main restricted
deb http://mirrors.digitalocean.com/ubuntu trusty-updates main restricted
deb-src http://mirrors.digitalocean.com/ubuntu trusty-updates main restricted
deb http://mirrors.digitalocean.com/ubuntu trusty universe
deb-src http://mirrors.digitalocean.com/ubuntu trusty universe
deb http://mirrors.digitalocean.com/ubuntu trusty-updates universe
deb-src http://mirrors.digitalocean.com/ubuntu trusty-updates universe
deb http://mirrors.digitalocean.com/ubuntu trusty multiverse
deb-src http://mirrors.digitalocean.com/ubuntu trusty multiverse
deb http://mirrors.digitalocean.com/ubuntu trusty-updates multiverse
deb-src http://mirrors.digitalocean.com/ubuntu trusty-updates multiverse
deb http://mirrors.digitalocean.com/ubuntu trusty-backports main restricted universe multiverse
deb-src http://mirrors.digitalocean.com/ubuntu trusty-backports main restricted universe multiverse
deb http://security.ubuntu.com/ubuntu trusty-security main
deb-src http://security.ubuntu.com/ubuntu trusty-security main
deb http://security.ubuntu.com/ubuntu trusty-security universe
deb-src http://security.ubuntu.com/ubuntu trusty-security universe

# /etc/apt/sources.list.d/nodesource.list 
deb https://deb.nodesource.com/node_4.x trusty main
deb-src https://deb.nodesource.com/node_4.x trusty main

После небольшого поиска я нашел это поток github что, кажется, предполагает, что вам нужно будет закрепить. Предлагаю вам попробовать добавить создание файла /etc/apt/preferences.d/nodejs с приведенным ниже содержанием, как предлагается в этом выпуске.

Package: *
Pin: origin deb.nodesource.com
Pin-Priority: 1001

Вы можете использовать apt-cache policy nodejs до и после настройки закрепления, чтобы убедиться, что она меняет приоритеты.