NEWS
NPM spinnt!
-
npm i -g npm ````das sollte 2x ausgeführt werden… habe ich das mißverständlich geschrieben !?
-
npm i -g npm ````das sollte 2x ausgeführt werden… habe ich das mißverständlich geschrieben !? `
auch damit keine Änderung …
kann man npm komplett runterwerfen und neu installieren?
-
Zum entfernen:
sudo apt-get remove nodejs sudo apt-get remove npm Then go to /etc/apt/sources.list.d and remove any node list if you have. Then do a sudo apt-get update Check for any .npm or .node folder in your home folder and delete those. If you type which node
Oder aus der iobroker Docu: http://www.iobroker.net/docu/?page_id=5106&lang=de
Kernel Update: sudo apt-get update && sudo apt-get upgrade Auf bereits vorhandene Versionen von nodejs und npm testen. node -v nodejs -v npm -v nur wenn ALLE diese Befehle kein Ergebnis bringen unter 5\. weitermachen, sonst Die alten node & node.js Versionen deinstallieren sudo apt-get --purge remove node sudo apt-get --purge remove nodejs sudo apt-get autoremove sudo reboot Node.js neu installieren für Linux und Raspberry 2/3 curl -sL https://deb.nodesource.com/setup_6.x | sudo -E bash - sudo apt-get install -y build-essential libavahi-compat-libdnssd-dev libudev-dev nodejs reboot Node.js neu installieren nur für Raspberry Pi1 (sollte es beim download zu einer Fehlermeldung kommen, bitte unter http://nodejs.org/dist/latest-v6.x/ die aktuelle Versionsnummer heraussuchen und in den Befehlen 1-3 ersetzen) wget http://nodejs.org/dist/latest-v6.x/node-v6.12.2-linux-armv6l.tar.gz tar -xvf node-v6.12.2-linux-armv6l.tar.gz cd node-v6.12.2-linux-armv6l sudo cp -R * /usr/local/ sudo ln -s /usr/local/bin/node /usr/bin/nodejs als Root über Putty anmelden Nach der Installation muss das Kommando “node -v” die Version von node.js zurückgeben. Falls es nicht passiert, dann sollte noch ein Alias erzeugt werden: sudo ln -s /usr/local/bin/nodejs /usr/bin/node
Ob und welche Einwirkungen das komplette entfernen auf deine Installation hat kann ich dir allerdings nicht sagen.
Je nachdem welches Linux du hast die apt Befehle ohne das "-get" ausführen.
Kannst aber vorher noch einmal das versuchen:
npm install npm@latest -g
-
npm i -g npm ````das sollte 2x ausgeführt werden… `
Sehe immer noch keinen Grund, warum das 2x ausgeführt werden sollte… Bei mir hats bisher immer mit 1x funktioniert.
-
Führe ich diesen Befehl jedoch aus, wird mir mit
npm -v
wieder die alte Version 5.5.1 angezeigt … `
Ist die Installation denn auch erfolgreich durchgelaufen oder gabs Fehler? Npm musst du in der Regel mit````
sudo npm i -g npm -
Warum 2x kann ich dir auch nicht sagen.
Ich weiß nur das ich es bei mir machen musste.
-
Ich habe alles ausprobiert.
Im Pfad /usr/lib/node_modules/npm den kompletten Ordner gelöscht und dann neu installiert.
node -v ergibt: v6.13.1
npm -v ergibt: 5.5.1
Ich geb's auf.
-
Bei mir lief es ohne Probleme, nur ein Klick unter Adapter-Updates.
System: Ubuntu Server
npm version 3.10.10
node version 6.13.1
Update Admin 3.3.1 -> 3.3.3
-
Ich habe alles ausprobiert.
Im Pfad /usr/lib/node_modules/npm den kompletten Ordner gelöscht und dann neu installiert.
node -v ergibt: v6.13.1
npm -v ergibt: 5.5.1
Ich geb's auf. `
Laut deiner abfrage liegt die benutze NPM Version auch hier:
> spuckt /usr/local/bin/npm aus.
-
Laut deiner abfrage liegt die benutze NPM Version auch hier:
> spuckt /usr/local/bin/npm aus.
`Und hier liegt sie nicht richtig? Ich habe nichts geändert …
-
Ich habe die auf allen Installationen hier:
root@pi-iobroker:/dev# which npm /usr/bin/npm
-
Ich habe die auf allen Installationen hier:
root@pi-iobroker:/dev# which npm /usr/bin/npm ```` `
Ja das mag ein Grund sein. Jedoch funktioniert ioBroker ja auch wenn npm in einem anderen Pfad liegt … Die Meldung dass 5.7.1 verlangt wird - aber trotz Upgrade nicht auf 5.7.1 gehoben wird, habe ich ja nur, wenn ich auf Aktualisieren gehe. Wenn ich einen Adapter neu installiere, anstatt ihn über die Admin-Oberfläche zu aktualisieren, wird er anstandslos installiert ...
iobroker 2018-03-15 16:09:05.451 error !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! iobroker 2018-03-15 16:09:05.451 error You need to make sure to repeat this step after installing an update to NodeJS and/or npm iobroker 2018-03-15 16:09:05.451 error use "npm install -g npm@>=5.7.1" to install a supported version of npm 5! iobroker 2018-03-15 16:09:05.451 error Please use "npm install -g npm@4" to downgrade npm to 4.x or iobroker 2018-03-15 16:09:05.451 error !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!NPM 5 is only supported starting with version 5.7.1!
Ich denke der neue Admin-Adapter und der js-controller hatten in letzter Zeit ziemlich viel Updates erfahren und Software ist immer in Bewegung.
-
Seit ein paar Tagen mosert ioBroker wegen der npm-Version herum. Nun klappt die Aktualisierung von z.B. des Admin-Adapters nicht mehr. Muss dann jedes mal den Adapter mit:
cd /opt/iobroker iobroker stop admin npm install iobroker.admin iobroker upload admin iobroker start admin
neu installieren um weiter arbeiten zu können. Dabei wird mir folgendes angezeigt:
Update available 5.5.1 → 5.7.1 Run npm i -g npm to update
Führe ich diesen Befehl jedoch aus, wird mir mit````
npm -vJemand eine Idee wie man ioBroker wieder zur zufriedenstellenden Mitarbeit überreden kann? `
ioBroker spinnt nicht.
Wenn dein npm nicht geht auf DEINEM System, wieso ioBroker schuld ist?
Wenn du kein Strom an dein Gerät anschließt, ist dann auch ioBroker spinnt?
-
Wenn man schreibt
npm i npm@latest -g
Dann sollte Meldung kommen, wo das installiert wurde.
Was ist das?
-
Die Meldung dass 5.7.1 verlangt wird - aber trotz Upgrade nicht auf 5.7.1 gehoben wird, habe ich ja nur, wenn ich auf Aktualisieren gehe. `
Ein nicht funktioniendes NPM-Update hat rein gar nichts mit ioBroker zu tun. NPM wird für die Installation und Updates verwendet.Auf NPM selbst hat ioBroker keinen Einfluss. Neuerdings überprüft ioBroker nur, ob es mit einer nicht unterstützten Version von npm installiert werden soll und bricht dann die Installation hab. Andernfalls könntest du dir unter Umständen deine komplette ioBroker-Installation zerschießen.
-
Wenn man schreibt
npm i npm@latest -g
Dann sollte Meldung kommen, wo das installiert wurde.
Was ist das? `
/usr/bin/npx -> /usr/lib/node_modules/npm/bin/npx-cli.js /usr/bin/npm -> /usr/lib/node_modules/npm/bin/npm-cli.js + npm@5.7.1 added 367 packages, removed 100 packages and updated 166 packages in 56.734s root@iobroker:~#
Naja ich bin schon daran interessiert, dass ioBroker zum besten System heranwächst … Auch wenn das heissen muss, dass ioBroker auch dann noch reibungslos funktioniert, wenn npm in einem anderen Pfad liegt. Es gibt doch unzählige Linux-Software, die mal hier, mal dort installiert liegt, in der einen Distribution hier, in der anderen dort. Es wird ein Symlink gesetzt und es funktioniert trotzdem.
ioBroker funktioniert ja erst seit ein paar Tagen nicht mehr, also muss bei ioBroker sich doch etwas geändert haben. Das ist auch kein Angriff gegen euch "verantwortliche" Programmierer. Nur wenn ich so etwas in einem Forum "melde" kann auch die Ursache gefunden werden und vielleicht auch andere davon profitieren.
-
Neuerdings überprüft ioBroker nur, ob es mit einer nicht unterstützten Version von npm installiert werden soll und bricht dann die Installation hab. Andernfalls könntest du dir unter Umständen deine komplette ioBroker-Installation zerschießen. `
Vielleicht liegt da der Hund begraben? Prüfroutine verfeinern? Denn anscheinend wird ja 5.7.1 installiert (Siehe oben), aber nur nicht erkannt - evtl. weil nur in einem möglichen Pfad abgefragt wird - ich kenne mich da allerdings mit meinen rudimentären Kenntnissen nicht aus …
-
Was passiert bei
/usr/bin/npm -v
?
-
Was passiert bei
/usr/bin/npm -v
? `
root@iobroker:~# /usr/bin/npm -v 5.7.1 root@iobroker:~#
:roll: Reines Abfrageproblem?
-
:roll: Reines Abfrageproblem? `
ioBroker verwendet einfach das npm, das in der PATH-Environment-Variable eingetragen ist. Das liegt bei dir in /usr/local/bin/npm und wird auch ausgeführt, wenn du npm auf der Kommandozeile eingibst. Woher ioBroker erfahren soll, dass eine andere Version in /usr/bin/ liegt weiß ich ehrlich gesagt nicht. Genauso wenig, warum du zwei npm Versionen parallel hast, wovon eine in PATH steht und die andere durch ein npm install aktualisiert wird.Naja, lass uns das ganze mal reparieren… Du willst ja schließlich auch bei manueller Eingabe von npm die korrekte Version ausführen.
Führe mal
npm get prefix
aus. Sofern das /usr/bin ausgibt, kannst du npm einfach aus dem Ordner /usr/local/bin löschen (nicht den ganzen Ordner!)
Ansonsten musst du zuerst
npm set prefix /usr/bin
ausführen.