Quando si lavora con gli ambienti di sviluppo Node.js, la flessibilità è fondamentale. Il Node Version Manager (NVM) è un potente strumento che consente agli sviluppatori di installare e gestire facilmente più versioni di Node.js su un unico sistema. Tuttavia, a volte potrebbe essere necessario installare una versione personalizzata di NVM o di Node.js nella propria macchina virtuale,ad esempio una versione forked per i test, una versione con funzioni patchate o una revisione più vecchia non disponibile nel registro principale di NVM.

In questo articolo illustreremo i passaggi per installare una versione personalizzata di NVM e quindi utilizzarla per installare una versione personalizzata o locale di Node.js.

Perché installare una versione personalizzata?

Ci sono diversi casi d’uso per l’installazione di una versione personalizzata:

  • Testare patch o fork di NVM o Node.js.

  • Utilizzo di build di Node.js con funzionalità sperimentali.

  • Lavorare offline con versioni compilate localmente.

  • Compatibilità con progetti legacy che richiedono ambienti specifici.

Passo 1: installare una versione personalizzata di NVM

Opzione 1: Clonare un repository forkato

Se si lavora con un fork o un ramo personalizzato di NVM:

git clone https://github.com/your-username/nvm.git ~/.nvm
cd ~/.nvm
git checkout del proprio ramo personalizzato

Quindi, aggiungere NVM alla configurazione della shell:

echo 'export NVM_DIR="$HOME/.nvm"' >> ~/.bashrc
echo '[ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh"' >> ~/.bashrc
sorgente ~/.bashrc

Se si usa zsh, sostituire .bashrc con .zshrc.

suggerimento: Verificate l’installazione eseguendo nvm –version.

Passo 2: Installazione di una versione personalizzata di Node.js

Opzione 1: installare Node.js dal sorgente

Se si dispone di una versione personalizzata di Node.js costruita dai sorgenti:

  1. Clonare il repository di Node.js o il proprio fork personalizzato:

git clone https://github.com/nodejs/node.git
cd node
git checkout del proprio ramo personalizzato
  1. Compilare e installare localmente:

./configure
make -j4
make install DESTDIR=$HOME/custom-node
  1. Utilizzare NVM per “installare” questa versione:

nvm install v18.99.99 --lts --no-download

Poi, collegare manualmente la build locale con un link simbolico:

nvm use v18.99.99
# oppure
nvm alias custom-node v18.99.99

Opzione 2: installare da un tarball personalizzato

Se si dispone di un tarball precompilato di Node.js:

nvm install v18.99.99 --lts --no-download
cp -r node-v18.99.99-linux-x64 ~/.nvm/versions/node/v18.99.99

Quindi usarlo come di consueto:

nvm use v18.99.99

Risoluzione dei problemi

  • nvm non trovato: Assicurarsi che il percorso di NVM sia aggiunto correttamente nella configurazione della shell.

  • Problemi di permessi: Usare sudo con cautela. NVM e Node.js sono progettati per funzionare senza privilegi elevati.

  • Errori di compilazione: Assicurarsi che tutte le dipendenze di compilazione siano installate (build-essential, python, ecc.).

Conclusione

L’installazione di una versione personalizzata di NVM o Node.js consente di controllare con precisione l’ambiente di sviluppo. Sia che stiate testando funzionalità sperimentali o lavorando su un sistema preesistente, queste configurazioni personalizzate sono preziose. Seguendo i passaggi sopra descritti, è possibile creare un flusso di lavoro di sviluppo Node.js robusto e personalizzato, adatto alle proprie esigenze.