El enfoque más simple, siempre que sea posible, es usar solo uno nvm
o los .deb
paquetes. Esto probablemente le ahorrará muchos dolores de cabeza a largo plazo, así que investigue primero. Parece que casi todo lo relacionado con los nodos que proporciona un .deb
paquete podría instalarse en su nvm
lugar.
Sin embargo, si eso realmente no es posible, puede crear .deb
paquetes "ficticios" utilizando equivs-control
y equivs-build
decir apt
que tiene instaladas las dependencias. Tenga en cuenta que esto podría confundir a apt si se equivoca. Además, incluso si desinstala nvm
paquetes, apt seguirá pensando que tiene los sustitutos que ha definido en los paquetes ficticios hasta que desinstale los paquetes ficticios.
Primero, instale "equivs" para que podamos construir los paquetes ficticios:
sudo apt-get install equivs
Cree un archivo de control que describa el paquete ficticio:
cd ~
equivs-control nodejs-dummy
Edite este archivo de control:
nano nodejs-dummy
Descomente y cambie las líneas en el archivo de control como desee. En particular, configure la línea "Proporciona:" para enumerar los paquetes que ha sustituido utilizando nvm
. Por ejemplo:
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 ;)
Construye el paquete:
equivs-build nodejs-dummy
Finalmente, instálalo:
sudo dpkg -i nodejs-dummy_use_the_actual_filename.deb
Enjuague y repita los paquetes que haya sustituido usando nvm
. Si un paquete depende de una versión específica de otro paquete con el que ha reemplazado nvm
, es posible que deba usar el número de versión exacto del que depende. Sin embargo, no estoy seguro de qué problemas pueden surgir, y es probable que deba seguir reconstruyendo sus paquetes ficticios cada vez que los paquetes del sistema operativo cambien de versión.