Najprostszym podejściem, o ile to możliwe, jest użycie tylko jednego nvm
lub .deb
pakietów. To prawdopodobnie zaoszczędzi ci wielu bólów głowy na dłuższą metę, więc spójrz na to najpierw. Wygląda na to, że prawie wszystko, co związane z węzłem, które jest dostarczane przez .deb
pakiet, może zostać zainstalowane nvm
zamiast tego.
Jeśli tak naprawdę nie jest to możliwe, możesz być w stanie utworzyć „obojętne” .deb
pakiety za pomocą equivs-control
i equivs-build
powiedzieć, apt
że masz zainstalowane zależności. Zauważ, że może to potencjalnie pomylić apt, jeśli źle coś zrobisz. Ponadto, nawet jeśli odinstalujesz nvm
pakiety, apt nadal będzie myślał, że masz substytuty zdefiniowane w fikcyjnych pakietach, dopóki sam nie odinstalujesz pakietów fikcyjnych.
Najpierw zainstaluj „equivs”, abyśmy mogli zbudować atrapy pakietów:
sudo apt-get install equivs
Utwórz plik kontrolny, który opisuje atrapę pakietu:
cd ~
equivs-control nodejs-dummy
Edytuj ten plik kontrolny:
nano nodejs-dummy
Cofnij komentarz i zmień wiersze w pliku sterującym zgodnie z potrzebami. W szczególności ustaw wiersz „Zapewnia:”, aby wyświetlić listę pakietów, które zastąpiłeś nvm
. Na przykład:
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 ;)
Zbuduj pakiet:
equivs-build nodejs-dummy
Na koniec zainstaluj:
sudo dpkg -i nodejs-dummy_use_the_actual_filename.deb
Opłucz i powtórz dla wszystkich używanych opakowań nvm
. Jeśli pakiet zależy od konkretnej wersji innego pakietu, który zastąpiłeś nvm
, może być konieczne użycie dokładnego numeru wersji, od którego zależy. Nie jestem jednak pewien, jakie mogą z tego wynikać problemy, i prawdopodobnie będziesz musiał nadal odbudowywać atrapę pakietów, ilekroć pakiety OS zmieniają wersje.