Issue Installing Iron-Meteor on Ubuntu(Solved)


#1

I see errors when i try to install iron-meteor
command - sudo -H install -g iron-meteor

> fibers@1.0.5 install /usr/lib/node_modules/iron-meteor/node_modules/fibers
> node ./build.js

 child_process: customFds option is deprecated, use stdio instead.
gyp WARN EACCES user "root" does not have permission to access the dev dir "/root/.node-   gyp/0.12.2"
gyp WARN EACCES attempting to reinstall using temporary dev dir "/usr/lib/node_modules/iron-  meteor/node_modules/fibers/.node-gyp"

For more detaied errors and log file , I have posted it on github as well
[iron-meteor not installing on ubuntu with log file] (https://github.com/iron-meteor/iron-cli/issues/141)
Please help .


#2

Hello,

You want to install iron-router ?

Because if yes just tap this line in your terminal

meteor add iron:router

#3

He’s not talking about iron router he’s talking about the Npm meteor scaffolding tool.

Looks like a root permission error, do you have permission to install any Npm package in your machine?


#4

@lai I am not sure …
I have used sudo command to install it .
do you want to see the npm log file …
you can see it here -


#5

What happens if you don’t use sudo?


#6

it throws the following error

npm ERR! tar.unpack untar error /home/shail/.npm/iron-meteor/1.1.2/package.tgz
npm ERR! Linux 3.13.0-45-generic
npm ERR! argv "/usr/bin/node" "/usr/bin/npm" "install" "-g" "iron-meteor"
npm ERR! node v0.12.2
npm ERR! npm  v2.7.4
npm ERR! path /usr/lib/node_modules/iron-meteor
npm ERR! code EACCES
npm ERR! errno -13

npm ERR! Error: EACCES, mkdir '/usr/lib/node_modules/iron-meteor'
npm ERR!     at Error (native)
npm ERR!  { [Error: EACCES, mkdir '/usr/lib/node_modules/iron-meteor']
npm ERR!   errno: -13,
npm ERR!   code: 'EACCES',
npm ERR!   path: '/usr/lib/node_modules/iron-meteor',
npm ERR!   fstream_type: 'Directory',
npm ERR!   fstream_path: '/usr/lib/node_modules/iron-meteor',
npm ERR!   fstream_class: 'DirWriter',
npm ERR!   fstream_stack: 
npm ERR!    [ '/usr/lib/node_modules/npm/node_modules/fstream/lib/dir-writer.js:36:23',
npm ERR!      '/usr/lib/node_modules/npm/node_modules/mkdirp/index.js:46:53',
npm ERR!      'FSReqWrap.oncomplete (fs.js:95:15)' ] }
npm ERR! 
npm ERR! Please try running this command again as root/Administrator.

npm ERR! Please include the following file with any support request:
npm ERR!     /home/shail/npm-debug.log

#7

To test, are you able to install less?

npm install less -g


#8

I already have less installed via meteor , dont know if doin this will create any conflicts


#9

Just install something totally different that is a global Npm package just to see if it’ll work to see if it’s a permission error. Try grunt-cli.


#10

it is a permission error and m trying hard to resolve it … I ll try to update once I break this wall…


#11

Man… tried every other post … not working for me … May be I need to take some rest and come back tomorrow …

If any experience ubuntu user know a work around , please share …


#12

Have you tried on Node.js 0.10.x? In some case, there are API changes between 0.10 and 0.12 and nope I have not run any projects on 0.12.

and is the “0.12.2” folder does exist? The warning in
…have permission to access the dev dir “/root/.node-gyp/0.12.2” might be misleading.


#13

I don’t know if this would work but I would look into using nvm. It makes your node installation play well with permission issues among other things.


#14

@lai I tried nvm last night , same issue . I wonder whats goin on . And to my amaze I dont see a proper installation method on node.js site …I am trying another method … update ya soon


#15

Solved: This is how I did to make iron-meteor work on my ubuntu 14.04 LTS

  1. Uninstalled node and npm which where previously installed
    cd into path and than
    rm -r bin/node bin/node-waf include/node lib/node lib/pkgconfig/nodejs.pc share/man/man1/node.1
  2. Install Linuxbrew maintained by Homebrew. Follow the instructions here (Linuxbrew) http://brew.sh/linuxbrew/

3.Follow the instructions on here to install node and npm using Homebrew
https://gist.github.com/DanHerbert/9520689

Remember install nodejs with a --without-npm-- flag or you will see the above error again.


#16

I’m sorry but ehat you did is a very bad idea.

You should not mix and match package managers and linuxbrew is not a package manager with a deep understanding of linux/ubuntu global package dependency tree.

Also deleting directories in the wild like that is a bad idea as well.

It may onle useful if you want to clean up a system from a bad manual install of node.

The proper way to install node and npm is to install them using node’s official ubuntu package repository. Here’s a link to the latest information

And remember to install v0.10 not v0.12 because that’s what meteor’s going to be running on if you ever want to try out adeployment with meteor build.

After installing node (which also installs npm) by those instructions, install global npm packages with

$sudo -H npm install -g packagename

The trick here is -H which tells ubuntu that you need elevated privileges to install files into global ubuntu directories but user related files should still go into the user’s home not root’s home so that when you actually run those packages they use your home folder for private information.

Regarding nvm, yes it is a good way to manage multiple node versions should you actually ever do node development other than meteor. If you develop only on meteor, and maybe just a little node then this is a good way to keep a clean and healthy system.


#17

The proper way you mentioned didnt worked atall , by any means ,as I already tried them .
Nodejs nowhere mention How to uninstall … or atleast I couldnt figure out how to from their site.
And I didnt deleted the directories in wild , it was mentioned by some super users in stackoverflow.

Before ever reaching the Linux brew method , I have tried every single step mentioned anywhere on google , nothing helped .But yeah Linux brew did … and its working absolutely fine on my system without any trouble .

The -H thing . if you could visit my github issue page that I have mentioned , you would know I have already tried that , friend … Everytime and each time permission issues …


#18

The link I’ve posted shows exactly how to install nodejs on ubuntu and
it is a link from the nodejs web site.

How did you install nodejs the first time?

Linuxbrew might have solved one specific issue for you this time, but
it is very likely that you’ll encounter more issues in the future.

I’d also take stackoverflow answers regarding files on a linux/unix
system with caution. Those answers are usually very case specific and repeating them
on your system, even when it looks like the same problem, may end up
bad for you.

But well, it is your system, and your decision.


#19

Friend , if you will care to see wat I have posted in my question and links … you will understand what I went through … I hope you understand


#20

@shail I do very sincerely care and would like this post to end up with a proper solution so that anyone who reads this in the future will know exactly what to do and what not to do.

I have also carefully read all of the posts in this thread, including the complete github issue you have originaly posted.

As I said, you have never mentioned how you installed node the first time you installed it on your computer.

You only mentioned trying to npm install the iron router package.

I am insisting on asking because the way you install node is 99% of the problems you have with npm install commands.

You see, if you had not installed node properly (I’m 99% sure that was the problem) according to the clear instructions given on nodejs web site, it is very normal to experience problems such as you have bumped into. And installing linuxbrew is the very last thing to do to mitigate such problems.

But before jumping to conclusions, I’d really like to know for 100% if that is the case or not. Thanks for keeping the discussion up.