Repository navigation
install,windows: symlink iojs -> node? #140
Description
Activity
- addedquestionIssues asking questions about Node.js.Issues asking questions about Node.js.
on Dec 10, 2014 For reasons @piscisaureus probably understands better than me (I think PATH_EXT is involved?), the stub
node.exe(notnode.cmd) will give the most seamless experience. That is what Git does as of ~1.8 on Windows, if I recall.Windows, starting with Vista, supports actual symlinks. But one of the other solutions is probably best if windows XP support is needed.
@gkatsev without elevated privileges?
@domenic elevated privileges are needed for writing to privileged areas like
C:/Program Fileset al, but otherwise, doesn't require extra privileges.@gkatsev If wish you were right but you are not. On windows creating symlinks always requires elevation.
Interesting, I was certain it didn't require elevation. I just tried it just to be sure and it does. That really is too bad.
I posted in that other thread, but if this is more on topic, I'll repost it:
NAN requires executing 'node' to find the location of the header. Windows compatibility is the main source of problems when it comes to using multiple alternative names. nodejs/nan#70
-1 on this. io.js looks like it will have some breaking API changes from node.js, which means cross-compatibility of io.js and node.js apps won't always be 100% guaranteed. having a
nodesymlink by default may hold progress back.@bnoordhuis @domenic @piscisaureus it is quite common for installers to require elevation on windows, why not just do that?
Short update: after some discussion, it got clear that it's not really possible to reliably detect if an existing install was done by joyent/node, iojs or a mashup of the two (e.g. an iojs install that got scribbled over by joyent/node.) The tentative conclusion is that we are not going to try and simply trust that the user knows what s/he is doing.
Instead of
iojswhy not justio. In this day and age do we really need thejs... Facebook vs The Facebook@geek it was mentioned earlier that
ioalready conflicts with some programming languagesFor the package name
iojsmakes sense, but for the bin it should just beio.Let those who want to install the io language binary and the iojs binary sort out the conflict.... all 5 of them.
Windows installers and binaries are being uploaded in the nightlies now but npm doesn't work obviously because there is no
nodeso they are hard to testSome native modules do seem to require a
node.exefile, so supplying that as a binary would be the only way of maintaining 100% compatiblity.For the record, adding the files
node.cmdandnode.exe.cmdcontaining the single line:@iojs.exe %*...seems to work nicely for me in the more general case (i.e. npm works).
@bnoordhuis can this be closed?
- added a commit that references this issue
on Apr 6, 2017
Per today's TC meeting, we're going to rename the binary to
iojsandln -s iojs nodeon install, provided there isn't already a binary with that name in the target directory.Symlinks on Windows require elevated privileges and are therefore probably not an option. What to do? I see two options:
iojs, no symlink. Least amount of effort.node.exeornode.cmd(if that works) that executesiojs.Input welcome.
/cc @domenic @piscisaureus