While posting this question I figured out the answer, but I'll post both here in case it helps someone else, and perhaps someone can help with the why of what happened.
When I run:
sudo npm install -g grunt
the last part of it says:
/usr/bin/grunt -> /usr/lib/node_modules/grunt/bin/grunt
npm ERR! peerinvalid The package flatiron does not satisfy its siblings' peerDependencies requirements!
npm ERR! peerinvalid Peer flatiron-cli-config@0.1.3 wants flatiron@~0.1.9
npm ERR! peerinvalid Peer flatiron-cli-users@0.1.1 wants flatiron@~0.1.9
npm ERR! System Linux 3.5.0-23-generic
npm ERR! command "nodejs" "/usr/bin/npm" "install" "-g" "grunt"
npm ERR! cwd /home/explunit
npm ERR! node -v v0.8.19
npm ERR! npm -v 1.2.9
npm ERR! code EPEERINVALID
npm ERR!
npm ERR! Additional logging details can be found in:
npm ERR! /home/explunit/npm-debug.log
npm ERR! not ok code 0
As you can see in the above, I am on node 0.8.19 and npm 1.2.9 (the latest that comes down from ppa:chris-lea on Ubuntu 12.10).
Other things I tried:
- Did the same on a fresh Ubuntu install. No errors. The script output looks the same until those last few error lines.
- Ran "sudo npm cache clean" and tried again. No luck.
- Ran "npm list" and there was nothing else listed
If you don't mind keeping jitsu installed, you can just upgrade jitsu and this should work.
My mistake was not appending the -g on the npm list command.
Once I did that, I saw my list of globally installed modules (e.g. bower, jshint, mocha), and at the very end:
Then I ran this command to see which ones were using flatiron:
In this case it was jitsu, a module I'm not using anymore. I ran
And then ran the original command again. Note for anyone coming later to this question: The correct module for reinstalling grunt command-line globally after the release of 0.4 is now
grunt-cli
, NOTgrunt
like when I asked the original question.If I actually wanted to keep jitsu I could have updated it instead of uninstalling it (thanks @BenAtkin):
And then run the original command again. See this blog post about peerDependency being added in node 0.8.19 for more background.