Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

understanding the output of `nvm ls`. Is everything installed properly?

I think I may have done something untoward during the install process of nodejs and nvm.

When I start bash or open a terminal I get:

:~$ bash
N/A: version "N/A -> N/A" is not yet installed.

You need to run "nvm install N/A" to install it before using it.

Using nvm ls from the command line I get:

result of <code>nvm ls</code>

going through my history I did find two lines where I'd tried to set an alias (I do believe I got that from a set of instructions I was following)

As far as I know, I'm not having any errors, other than when bash starts up, and those lines are generated from .bashrc:

export NVM_DIR="$HOME/.nvm"
[ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh"  # This loads nvm
[ -s "$NVM_DIR/bash_completion" ] && \. "$NVM_DIR/bash_completion"  # This loads nvm bash_completion

My primary aim here is to understand the output of nvm ls and is there anything there that needs to be fixed.

A bonus aside is, how do I get rid of these errors on logging in (other than simply deleting the last two lines) ;)

I'm on ubuntu 17.04

Update:

After checking the link in Matt's answer I see that these are the instructions I saw. It appears I missed a little here and there. This is what I have done and the results so far:

After checking out the link and runnin the update not much had changed except the lts/boron version number. Being yellow, I'm guessing it's not installed anyway. Still not sure why it's in my list then.

after first update

within the instructions I found I missed this one:

nvm install iojs-v1.0.3

That fixed <code>iojs</code>

So then I tried:

install node, cleared the node->stable line

So I've cleared the red node -> stable and the iojs -> N/A lines. They're now a nice green. I realised the first default line was an alias.

I set the alias correctly:

things are looking better

Doing all these extra steps has finally got rid of my login errors, so that's a plus.

So I still have the yellow lts entries...

I'd still like to know should they be there, have I done something to make them appear, should they be installed? Is there a problem not having them installed?

The funny thing about how it has been setup; I have been running node and electron apps without any issue what so ever! Just adding to my confusion.

like image 450
Madivad Avatar asked Aug 05 '17 14:08

Madivad


People also ask

What is NVM ls command?

Useful commands nvm ls shows the node versions you installed. nvm ls-remote shows all the node versions available. nvm install <version> installs the specified version. nvm uninstall <version> works like the install command. nvm alias default <version> sets your default node version.

What is NVM and how do you install it?

nvm stands for Node Version Manager. As the name suggests, it helps you manage and switch between different Node versions with ease. It provides a command-line interface where you can install different versions with a single command, set a default, switch between them and much more.


1 Answers

nvm is simply showing the default aliases, even though there are not versions installed for all those aliases.

By default, nvm doesn't install any Node versions, but it comes with the following aliases:

  • node and stable point to the latest version of Node.js.
  • iojs points to the latest version of io.js, an old unmaintained fork of Node.js.
  • lts/aragon points to the latest version of the Node LTS Aragon line (which is Node 4)
  • lts/boron points to the latest version of the Node LTS Boron line (which is Node 6)
  • lts/* points to the latest LTS release of Node.js, which is the same as lts/boron as of Aug 2017. (This will change when Node 8 moves into LTS)

Since you don't have any Node versions installed, it shows that those aliases don't point to any currently installed Node version, hence the N/A.

If you just want to run the latest version of Node.js, just run nvm install node.

Don't bother installing iojs or older versions of Node.js unless you need them. Just ignore the N/A output, nvm is just reminding you that these aliases do exist.

like image 52
RyanZim Avatar answered Sep 23 '22 20:09

RyanZim