NEWS
node.js update Quelle?
-
In meiner Info wird auch eine neue Version angezeigt.
Mit
iobroker update
und
iobroker upgrade self
wird mir aber ausgegeben, dass alle Adapter aktuell sind.
Kann ich die Node.js auch anders aktualisieren? -
-
Danke!
-
-
Ich komme hier nicht recht weiter. Zuerst hatte ich folgendes:
node -v
v8.16.2nodejs -v
v8.15.0ioBroker:
v8.15.0Daraufhin habe den link in /usr/bin/nodejs geändert
von: /usr/bin/node
nach: /root/.nvm/versions/node/v8.16.2/bin/node (der Pfad, auf den "where node" bereits wies)Jetzt habe ich:
node -v
v8.16.2nodejs -v
v8.16.2aber ioBroker immer noch:
v8.15.0Wieso das denn nun wieder? Warum folgt ioBroker nicht dem Link?
MfG
-
@150d sagte in node.js update Quelle?:
Wieso das denn nun wieder?
Weil du zweimal node an verschiedenen stellen installiert hast
-
@Homoran Vielen Dank, auf die Idee war ich gekommen. Siehe Post #1.
Aber wie werde ich das Chaos los?
Ein Problem könnte sein, daß v8.16 unter /root installiert ist. Soll das so sein?
MfG
-
@150d sagte in node.js update Quelle?:
Aber wie werde ich das Chaos los?
lies dir mal die Lösung von Paul durch:
https://forum.iobroker.net/topic/29718/npm-installation-nach-anleitung -
Danke für den Link. War interessant, auch wenn er nicht direkt meinen Fall berührte:
Mein Problem war offenbar, daß irgendjemand oder irgendetwas (kann ich selbst gewesen sein, aber vielleicht auch ein älteres install-script) die Version v8.16 von nodejs per NVM installiert hatte. NVM ist offenbar nur root zugänglich, und deshalb landete diese Version unter /root/.nvm. Dort kam aber der user iobroker nicht hin. Für iobroker gab es daher die v8.16 nicht, sondern nur die v8.15 (system).
Wurde nun nodejs v10 per apt-get installiert, änderte das nichts: Offenbar "gewann" trotzdem die NVM-Konfiguration mit v8.16, an die iobroker nicht hinkam, und der fallback war v8.15, nicht v10.
Ich habe nun (als root) per NVM die v8.16 entfernt (vorher musste "system" zur "default" gemacht werden, weil NVM die aktive Version nicht deinstallieren kann) und danach per apt-get die v10 installiert. Danach ergab sowohl "node -v" als auch "nodejs -v" die Version v10, unter root ebenso wie unter user iobroker (per sudo).
Dann aber lief "npm rebuild" nicht durch (verschiedene Fehler und Abbrüche.) Hier war das Problem, daß das unter dem user iobroker ausgeführt werden muß. Ein Aufruf mit "sudo -u iobroker" reicht nicht. Darauf war ich lange nicht gekommen, weil für den user iobroker keine Shell angegeben und somit keine interaktive Anmeldung möglich ist - da das explizit so drinstand nahm ich an, daß das schon so richtig sei.
War es aber nicht. Nachdem ich schließlich den Shell-Eintrag änderte und mich als user iobroker anmeldete, lief auch "nvm rebuild" ohne Fehler (mit Ausnahme einer fehlenden Bibliothek, die manuell nachinstalliert werden musste) durch.
MfG
-
@150d sagte in node.js update Quelle?:
auch wenn er nicht direkt meinen Fall berührte:
Doch das tat er.
Du hattest zwei Installationen, warum auch immer
Die mussten BEIDE deinstalliert werden. zu erkennen leider nur daran, dass die eine mit nodejs, die andere mit node zu finden warhätten beide die selbe Version gehabt wäre es schwieriger geworden.
Erst nach der Deinstallation von BEIDEN node-Installationen kann die neue erfolgreich sein, ohne durch die andere maskiert zu werden.
@150d sagte in node.js update Quelle?:
Danach ergab sowohl "node -v" als auch "nodejs -v" die Version v10
Das ist dann leider kein Garant mehr doch nicht zwei Installationen zu haben.