I'm trying to set up yo to use the angular generator for a project. I am following the steps detailled here: http://yeoman.io/learning/index.html
I already have Node.js and NPM installed.
But when I use the command:
sudo npm install -g yo bower grunt-cli
It fails and I get this error:
> [email protected] postinstall /usr/lib/node_modules/yo/node_modules/cross-spawn/node_modules/spawn-sync
> node postinstall
fs.js:439
return binding.open(pathModule._makeLong(path), stringToFlags(flags), mode);
^
Error: EACCES, permission denied '/usr/lib/node_modules/yo/node_modules/cross-spawn/node_modules/spawn-sync/package.json'
at Object.fs.openSync (fs.js:439:18)
at Object.fs.writeFileSync (fs.js:978:15)
at Object.<anonymous> (/usr/lib/node_modules/yo/node_modules/cross-spawn/node_modules/spawn-sync/postinstall.js:20:6)
at Module._compile (module.js:456:26)
at Object.Module._extensions..js (module.js:474:10)
at Module.load (module.js:356:32)
at Function.Module._load (module.js:312:12)
at Function.Module.runMain (module.js:497:10)
at startup (node.js:119:16)
at node.js:935:3
npm ERR! Linux 3.13.0-24-generic
npm ERR! argv "node" "/usr/bin/npm" "install" "-g" "yo"
npm ERR! node v0.10.37
npm ERR! npm v2.11.0
npm ERR! code ELIFECYCLE
npm ERR! [email protected] postinstall: `node postinstall`
npm ERR! Exit status 8
npm ERR!
npm ERR! Failed at the [email protected] postinstall script 'node postinstall'.
npm ERR! This is most likely a problem with the spawn-sync package,
npm ERR! not with npm itself.
npm ERR! Tell the author that this fails on your system:
npm ERR! node postinstall
npm ERR! You can get their info via:
npm ERR! npm owner ls spawn-sync
npm ERR! There is likely additional logging output above.
npm ERR! Please include the following file with any support request:
npm ERR! /home/vincent/npm-debug.log
I tried to use chmod 777 on /usr/lib/node_modules
but it doesn't seem to work better.
I can install Bower and Grunt, it worked, but when I try to install Yo, it fails everytime...
I have no idea what to do as everything I tried using chmod
or chown
didn't work.
Thanks for your help guys! :)
This means you do not have permission to write to the directories npm uses to store global packages and commands. Try running commands: sudo chmod u+x -R 775 ~/. npm and sudo chown $USER -R ~/. npm or you can just run any npm command with sudo , that should get resolve your issue.
I worked around the issue by using:
sudo npm install -g yo --unsafe-perm
Use of --unsafe-perm
suggested by nyakto in this bug report.
Edit - realised that this is the URL posted by @Stephan in his answer.
I don't know the specifics about --unsafe-perm - I can only state that it allowed me to install yo without errors I experienced that were very similar / identical to OP.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With