Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Installation on Windows doesn't "symlink" iojs to node #560

Closed
tgarbiak opened this issue Jan 22, 2015 · 15 comments
Closed

Installation on Windows doesn't "symlink" iojs to node #560

tgarbiak opened this issue Jan 22, 2015 · 15 comments
Labels
confirmed-bug Issues with confirmed bugs. windows Issues and PRs related to the Windows platform.

Comments

@tgarbiak
Copy link

I've just installed io.js v1.0.3 on my machine and it didn't create symlinks to node.
When I now run node -v I get v0.10.33 and when iojs -v I get v1.0.3.
Now, this might be because:

  • windows doesn't have symlinks (so I thought, but I was just told on #io.js that it indeed has)
  • I haven't run installer as an admin (but then it should ask me for elevation)
  • it was never intended on Windows to do it (but then it creates inconsistency between platforms, not good IMO)

On a side note, I think installer should provide some info about what's gonna happen with the current node and npm installations.

Some additional info:

Installer file: *iojs-v1.0.3-x64*
System: *Win8.1x64*
@gyandeeps
Copy link

I think the idea is to have them as individual entities on the machine.
#398

@tgarbiak
Copy link
Author

Yeah, that'd be the point 3 then. But that, as I've wrote, would be inconsistent with what happens on other platforms.

In any case, the least installer should do is to tell the user what will happen with his/her installations of node and npm.

@Fishrock123 Fishrock123 added the windows Issues and PRs related to the Windows platform. label Jan 22, 2015
@silverwind
Copy link
Contributor

I think it should be consistent too. How about an default-on option in the windows installer to symlink?

@piscisaureus
Copy link
Contributor

By default the installer creates a hard link. But the installer inserts the iojs directory at the end of the PATH environment variable, so if you already have node installed when you install iojs then iojs' node.exe doesn't "replace" node.

@silverwind
Copy link
Contributor

@piscisaureus Ah, that's one elegant way of solving this.

Is the Windows installer code on GitHub? I'd like to have a look.

@silverwind
Copy link
Contributor

@piscisaureus: Thanks!

So as a solution for this issue: Should we insert our path at the start of %PATH% for consistency so node goes to iojs? I think that's what most people would expect when they install io.js.

@dougwilson
Copy link
Member

Injecting your path at the beginning of %PATH% is not a friendly installation.

@silverwind
Copy link
Contributor

How about parsing the path for node and inserting before that? Is that possible with MSI?

@piscisaureus
Copy link
Contributor

So as a solution for this issue: Should we insert our path at the start of %PATH% ?

That's easy to do, if we want it. I'm in the @dougwilson camp here - it's friendlier to put yourself at the end. But make a good case and I may change my opinion.

@silverwind
Copy link
Contributor

How about this (pseudocode):

Run where node. If found, insert io.js's path before dirname($(where node)) inside the PATH string, otherwise insert at the end.

@cosmosgenius
Copy link
Contributor

I think its better to provide a message to the user about an existing node installation on the path. Modifying path string, other than at the end, doesn't go with the usual windows installation way.

@tgarbiak
Copy link
Author

tgarbiak commented Feb 9, 2015

Providing a message/explanation what's gonna happen would be fine by me. Just to not leave an user in the unknown.

@radum
Copy link

radum commented Feb 27, 2015

I would rather have this info in the docs (that you can move it to be first fixing everything and keeping both versions), or in the installer somewhere easy to find. Putting this in front of everything else is not a good practice and as @cosmosgenius said is not the Windows way.

I think the ruby installer does this and it causes lots of issues for some.

@Fishrock123
Copy link
Contributor

See #751 (comment)

This was referenced Dec 1, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
confirmed-bug Issues with confirmed bugs. windows Issues and PRs related to the Windows platform.
Projects
None yet
Development

No branches or pull requests

8 participants