npm installa errori con Error: ENOENT, chmod

Sto provando a installare globalmente un modulo npm che ho appena pubblicato. Ogni volta che cerco di installare, da npm o dalla cartella, ottengo questo errore.

npm ERR! Error: ENOENT, chmod '/usr/local/lib/node_modules/takeapeek/lib/cmd.js' npm ERR! If you need help, you may report this log at: npm ERR!  npm ERR! or email it to: npm ERR!  npm ERR! System Linux 3.8.0-19-generic npm ERR! command "node" "/usr/local/bin/npm" "install" "-g" "takeapeek" npm ERR! cwd /home/giodamlio npm ERR! node -v v0.10.6 npm ERR! npm -v 1.3.6 npm ERR! path /usr/local/lib/node_modules/takeapeek/lib/cmd.js npm ERR! code ENOENT npm ERR! errno 34 npm ERR! npm ERR! Additional logging details can be found in: npm ERR! /home/giodamlio/npm-debug.log npm ERR! not ok code 0 

Sto usando sudo e ho triplicato tutto nel pacchetto tutto dovrebbe funzionare. Ho fatto qualche ricerca in giro e ho visto un paio di casi di similari che nessuno dei quali è stato risolto. Ecco cosa ho provato.

  • Aggiorna npm ( sudo npm install -g npm )
  • Cancella la cache npm globale ( sudo npm cache clear )
  • Cancella la cache npm utente ( npm cache clear )

Ho notato che l’errore ha a che fare con il file che sto collegando al percorso, in particolare quando npm ha provato a fare un chmod. Questo non dovrebbe essere un problema, il mio lib/cli.js ha le normali autorizzazioni e npm ha i permessi di superutente durante questa installazione.

Dopo aver esplorato i documenti npm ho trovato un’opzione che impediva a npm di creare i collegamenti bin ( --no-bin-links ), quando ho provato l’installazione con esso, ha funzionato bene.

Allora, qual è l’affare? Si tratta di un bizzarro bug che non ha ancora una soluzione?

Modifica: per riferimento, ecco il modulo che ho caricato