Самый простой подход, когда это возможно, это использовать только один nvm
или несколько .deb
пакетов. Это, вероятно, избавит вас от многих головных болей в долгосрочной перспективе, так что сначала посмотрите на это. Кажется, что почти все связанное с узлами, предоставляемое .deb
пакетом, может быть установлено через nvm
него.
Однако, если это действительно невозможно, вы можете создать «фиктивные» .deb
пакеты, используя equivs-control
и equivs-build
сообщить, apt
что у вас установлены зависимости. Обратите внимание, что это может сбить с толку apt, если вы ошибаетесь. Кроме того, даже если вы удалите nvm
пакеты, apt все равно будет думать, что у вас есть заменители, которые вы определили в фиктивных пакетах, пока вы не удалите сами фиктивные пакеты.
Во-первых, установите «эквиваленты», чтобы мы могли создать пустые пакеты:
sudo apt-get install equivs
Создайте контрольный файл, описывающий фиктивный пакет:
cd ~
equivs-control nodejs-dummy
Отредактируйте этот контрольный файл:
nano nodejs-dummy
Откомментируйте и измените строки в контрольном файле по желанию. В частности, установите строку «Обеспечивает:» для отображения списка пакетов, которые вы заменили nvm
. Например:
Package: nodejs-dummy
Version: (version slightly higher than what the apt package actually provides)
Maintainer: Your Name <yourname@example.com>
Provides: nodejs
Architecture: all
Description: Something that will remind you what this does ;)
Построить пакет:
equivs-build nodejs-dummy
Наконец, установите его:
sudo dpkg -i nodejs-dummy_use_the_actual_filename.deb
Промойте и повторите для любых пакетов, которые вы заменили, используя nvm
. Если пакет зависит от конкретной версии другого пакета, которым вы заменили nvm
, вам может потребоваться использовать именно тот номер версии, от которого он зависит. Однако я не уверен, какие проблемы могут возникнуть из-за этого, и вам, вероятно, придется пересматривать фиктивные пакеты всякий раз, когда пакеты ОС меняют версии.