Nvm est un outil qui permet d’utiliser plusieurs versions de Node.js en parallèle.
Il est simple à utiliser et ajoute automatiquement quelques lignes au fichier ~/.bashrc sur votre système Linux, pour
pouvoir démarrer correctement.
Malheureusement, il peut ralentir le démarrage de votre bash de plusieurs secondes, et vous devrez même parfois attendre
10 secondes avant de voir le prompt apparaître, pour taper vos commandes.
Ce n’est pas dramatique, mais ce n’est vraiment pas idéal, surtout si vous n’avez pas besoin de nvm souvent
(parce que vous lancez plutôt Node directement dans Docker, par exemple).
Typiquement, votre IDE utilise peut-être bash au lancement, pour trouver les exécutables dont il a besoin. Si bash est trop long à démarrer, l’IDE peut considérer que git n’est pas installé, par exemple.
Pour éviter cela, il faut déplacer les lignes ajoutées par nvm à votre .bashrc, dans un fichier .sh dédié, qui
ne sera exécuté que lorsque vous avez besoin de nvm, et pas à chaque lancement de bash.
- Créez un fichier
load_nvm.sh, contenant
#!/bin/bash
# Delete the aliases
unalias nvm
unalias npm
unalias node
# (This is the loader code nvm put in my .bashrc)
export NVM_DIR="$HOME/.nvm"
[ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh" # This loads nvm
[ -s "$NVM_DIR/bash_completion" ] && \. "$NVM_DIR/bash_completion" # This loads nvm bash_completion
- Modifiez le fichier
~/.bashrc, pour remplacer
export NVM_DIR="$HOME/.nvm"
[ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh" # This loads nvm
[ -s "$NVM_DIR/bash_completion" ] && \. "$NVM_DIR/bash_completion" # This loads nvm bash_completion
par
# nvm
alias nvm='. ~/load_nvm.sh; nvm "$@"'
alias npm='. ~/load_nvm.sh; npm "$@"'
alias node='. ~/load_nvm.sh; node "$@"'



