Il nome dell'interprete NodeJS ( node
) su Ubuntu è stato rinominato a nodejs
causa di un conflitto di nomi con un altro pacchetto. Ecco cos'è il readme. Debian dice:
Il nome upstream per il comando interprete Node.js è "nodo". In Debian il comando interprete è stato cambiato in "nodejs".
Ciò è stato fatto per prevenire una collisione dello spazio dei nomi: altri comandi usano lo stesso nome nel loro upstream, come ax25-node dal pacchetto "node".
Gli script che chiamano Node.js come comando shell devono essere modificati per utilizzare invece il comando "nodejs".
Tuttavia, usando nodejs si impone di installare i pacchetti usando npm
. L'installazione del pacchetto non riesce con il seguente errore:
sh: 1: node: not found npm WARN This failure might be due to the use of legacy binary "node" npm WARN For further explanations, please read /usr/share/doc/nodejs/README.Debian
Come faccio a far capire a npm che nodejs è già installato sul sistema ma il nome dell'interprete è diverso?
ln -s nodejs node
a/usr/bin
. È una specie di hack però.