How I found a way to install node.js & npm on CentOs 5

I was having lots of difficulties to install node.js / npm on a server running CentOS 5. The node.js documentation mentions that we should be adding the EPEL repository and then using “yum install npm” to install it. However, no matter how much I tried, this package seems unavailable on CentOS 5. Compiling from source was a solution but I really did not want to install all the development tools on that machine that is essentially just a testing server. All I needed node.js for was to run tests from the mocha test framework.

After much research I finally found an answer on serverfault (a branch of StackOverflow). It suggests to use nave, a virtual environment for node that will install npm and node.js just for the local user. Turns out this is exactly what I wanted since it would simplify the migration if I need to move my testing environment to another server.

Commands in the console:
chmod +x
./ install stable
./ use stable

(You could replace stable with a specific node version number)

And that’s all! node and npm are available from this specific user, no need to compile node from source to use it from CentOS.

4 Responses to “How I found a way to install node.js & npm on CentOs 5”

  1. SirVon Thomas Says:

    thanks! time saver.

  2. mark Says:

    Silly question! Where does Node get installed. I’m using CentOS 5.* and the installation seems to have gone through successfully with the default options from nave.

  3. jeromegagnonvoyer Says:

    You can always do “whereis node” to know where it was installed.

  4. Bram Borggreve Says:

    Thanks, nice quick way to use node!

    ‘which node’ points out where the binary is… on my system that is ~/.nave/installed/0.10.25/bin/node

    The ‘global’ nodes_modules for this installation go to ~/.nave/installed/0.10.25/lib/node_modules

Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Google photo

You are commenting using your Google account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s