NEWS
Test ioBroker unter Windows installieren - 2023 Edition
-
@derda-1 said in Test ioBroker unter Windows installieren - 2023 Edition:
Fehlermeldung im Log:
Npm prefix path exists: C:\Users\Benutzer\AppData\Roaming\npmDas ist keine Fehlermeldung, das ist eine Meldung die besagt, dass das Verzeichnis richtigerweise existiert.
Edit: Ich werde das in der nächsten Version des Installers im Log etwas klarer ausweisen, dass das kein Fehler ist.@derda-1 said in Test ioBroker unter Windows installieren - 2023 Edition:
Hallo ich habe gerade mal versucht mit dem neuen (3.0.1.) Installer ein Update auf meinem Windows 10 Server zu machen.
Wie wurde der ioBroker denn ursprünglich installiert?
@derda-1 said in Test ioBroker unter Windows installieren - 2023 Edition:
Das Problem hatten wir schon ein, zwei Mal, leider hatte bisher nie jemand der Betroffenen bisher Lust, dem Problem auf den Grund zu gehen bzw. die Fehlersuche ist im Sand verlaufen.
Ich zitiere mich mal selbst:
@gaspode said in Test ioBroker unter Windows installieren - 2023 Edition:
Da war wohl irgendwas mit deiner Node.js Installation verbogen. Aus irgendeinem Grund wollte Windows einen Script Aufruf im Installer- bzw. Fixer-Script (und wohl auch anderen Node Aufrufe) nicht in der Node Umgebung, sondern im Windows Script Host ausführen. Das geht dann natürlich in die Hose.
Was du versuchen kannst:
Mach bitte mal ein ioBroker Cmd Fenster auf, führe folgende Befehle aus und poste hier das Ergebnis:npm ls npm ls -g
Dann kannst du versuchen, den Fixer manuell zu starten:
Im selben Fenster wie gerade:del iobroker.bat iob fix
Ich vermute, du bekommst die gleiche Fehlermeldung wie mit dem GUI Installer?
Und schließlich kannst du versuchen Node.js komplett zu deinstallieren, wie das geht steht z.B. hier:
https://www.geeksforgeeks.org/how-to-completely-remove-node-js-from-windows/Danach den Installer starten, der sollte erkennen, dass Node.js fehlt und es installieren.
-
@gaspode said in Test ioBroker unter Windows installieren - 2023 Edition:
Da war wohl irgendwas mit deiner Node.js Installation verbogen. Aus irgendeinem Grund wollte Windows einen Script Aufruf im Installer- bzw. Fixer-Script (und wohl auch anderen Node Aufrufe) nicht in der Node Umgebung, sondern im Windows Script Host ausführen. Das geht dann natürlich in die Hose.
Könnte es sein, dass aus irgendeinem Grund die Fileassoziation .js verbogen bzw. unerwafrtet ist und dadurch der Windows Script Host gestartet wird?
@derda-1
Könntest du das ev vor der Node neuinstallation kurz checken?@Gaspode
Prüft der Fixer auf Windows (oder der Installer) dass die File Assoziation richtig ist? Kann er das tun?NACHTRAG:
Bei mir ist .js mit dem Windows Scripting Host verknüpft. Und trotzdem geht alles.
Das kann es also leider auch nicht sein. -
@mcm57 said in Test ioBroker unter Windows installieren - 2023 Edition:
Bei mir ist .js mit dem Windows Scripting Host verknüpft. Und trotzdem geht alles.
Das kann es also leider auch nicht sein.Ja, das wollte ich dir auch gerade antworten. die Installation wird direkt per npx aufgerufen, da spielen File Associations keine Rolle.
npx --yes @iobroker/fix@latest
@Derda-1
Enthält dein Logfile wirklich nur die eine Zeile, die du oben gepostet hast, oder kommt danach noch was? -
@mcm57 said in Test ioBroker unter Windows installieren - 2023 Edition:
Könnte es sein, dass aus irgendeinem Grund die Fileassoziation .js verbogen bzw. unerwartet ist und dadurch der Windows Script Host gestartet wird?
Also grundsätzlich ist das wie gesagt nicht erforderlich, dass die Extension .cs auf node verweist. Ich habe jetzt allerdings noch ein bisschen recherchiert und ggfs. könnte das ein Workaround sein. Wichtig ist, dass die Association für den User auf node gesetzt wird, der auch die Installation ausführt, das ist in der Regel der Admin User.
-
Hi zusammen.
Wie vor einigen Wochen im Dev Meeting besprochen, hab ich jetzt endlich mal Zeit gefunden, das JS-Controller Update in den Windows Installer einzubauen. Das wird dann in etwa so aussehen:
Wer beim Testen helfen will, meldet sich bitte per Mail bei gaspode@online.de.
Schon mal Danke an @sigi234, der schon erste Tests durchgeführt hat.
-
Hallo zusammen.
Ab sofort ist Version 3.1.0 auf der Download Seite verfügbar.
Wer bereits den Installer 3.0.x verwendet, bekommt beim Start des Installers automatisch die Aktualisierung auf 3.1.0 angeboten. Ansonsten einfach von der offiziellen ioBroker Download Seite herunterladen.Version 3.1.0:
- Der JS-Controller kann ab sofort mit dem Windows Installer aktualisiert werden, wenn im Repository eine neue Version verfügbar ist.
- Das Logging wurde verbessert
- Diverse kleinere Korrekturen
Danke an alle, die mit getestet haben, besonders @sigi234 und @mcm1957
-
Hi,
Kannst du ev mal überlegen den Windows installer so zu erweitern dass dieser (zumindest optional) GIT (nicht github) installiert.
Warum:
Wenn man einen Adapter unter Windows installiert und folgende Fehlermeldung erhält:iobroker add samsung --host Envy NPM version: 10.5.2 Installing iobroker.samsung@0.6.0... (System call) npm ERR! code ENOENTnpm ERR! syscall spawn gitnpm ERR! path gitnpm ERR! errno -4058npm ERR! enoent An unknown git error occurrednpm ERR! enoent This is related to npm not being able to find a file.npm ERR! enoent npm ERR! A complete log of this run can be found in: C:\WINDOWS\system32\config\systemprofile\AppData\Local\npm-cache\_logs\2024-05-24T13_42_56_087Z-debug-0.log host.Envy Cannot install iobroker.samsung@0.6.0: 4294963238 ERROR: Process exited with code 25
(Im referenzierten Log steht auch nicht viel mehr Verständliches) wird ein durchscnittlicher User wohl nicht auf die Idee kommen im package.json zu suchen of da eine direkte git Referenz drinnen steht und dann zu checken ob er auf dem PC git installiert hat.
Und wenn er drauf kommt muss er noch dran denken, dass er nicht bei seinem 0815 User checkt sondern unter admin (da ioBroker ja dort installiert wird und läuft). Der git Installer installiert nur dann systemweit, wenn er unter Administratorrechten gestartet wird - sonst installiert er lokal für den User. Vom Konzept in Ordnung - hier aber zusätzlicher Suchaufwand da ein lokales testweises 'git' funktioniert - die Installation aber noch immer nicht ...
Ergo
Für einen weniger erfahrenen Windows Nutzer wäre es ev. sinnvoll git standradmäßig zu installieren um das Problem zu vermeiden.Bitte mal drüber nachdenken und / oder auch hier diskutieren (gilt natürlcih für alle Leser)
mcm1957
P.S: Wenn ich ein Issue erstellen soll, bitte um Info in welchem Repo
-
@mcm1957 said in Test ioBroker unter Windows installieren - 2023 Edition:
Kannst du ev mal überlegen den Windows installer so zu erweitern dass dieser (zumindest optional) GIT (nicht github) installiert.
Das hatten wir zu Beginn des Installers schon mal diskutiert.
Das Problem: Wo fängt man an und wo hört man auf. Das nächste Thema ist dann schnell Python, Visual Studio Build Tools, etc.
Erklärtes Ziel war, den Installer möglichst einfach zu halten, und mit den weiteren Komponenten macht man ein riesiges Fass auf. Zumal 98% der User ohne Extras auskommen. Und dabei geht es nicht mal um die Installation der PAkete, sondern um die potentiellen Probleme, die anschließend kommen.
Evtl. könnte man in die Installer Hilfe (oder auch zu Ende in ein Popup) ein paar Hinweise geben, wenn jemand Zusatz-Komponenten benötigt. Node.js bringt z.B. einen Startmenü-Eintrag "Install Additional Tools for Node.js" mit, der lief aber zumindest auf meinen Rechnern nicht problemlos, als ich es letztes Mal getestet habe.
Aber wir können gerne hier Meinungen dazu einsammeln.
-
@gaspode sagte in Test ioBroker unter Windows installieren - 2023 Edition:
Wo fängt man an und wo hört man auf. Das nächste Thema ist dann schnell Python
ääähm,
auch wenn ich kein WIN user bin, hat eine Installation eines Adapters via git doch nichts mit 3rd party Software zu tun. -
@homoran said in Test ioBroker unter Windows installieren - 2023 Edition:
auch wenn ich kein WIN user bin, hat eine Installation eines Adapters via git doch nichts mit 3rd party Software zu tun.
Es gibt wohl Adapter, die für eine korrekte Funktion eine GIT Installation voraussetzen. Ich denke @mcm1957 geht es um diese Exoten.
-
Na ja, das Problem ist dass es immer wieder Adapter gibt die (warum auch immer) direkte Github Referenzen drinnen haben. Und die failen dann bei den meisten Windows usern.
Man könnte das auch im Zuge der Adapterinstallation lösen - z.B. durch einen Check auf direkte git Abhängigkeiten in Verbindung mit fehlender Installation von git. Oder auch nur einen Hinweis in jedem Fall ...
Ich seh nur dass wahrscheinlich 75% der User überfordert wären das Problem selbst zu lösen - ich habs im Hinterkopf gehabt aber auch eine gefühlte Ewigkeit gebraucht es einzugrenzen und zu fixen.
--- to be discussed - was meine Andere dazu --- sollen wir das beim Meeting nochmal aufwärmen oder wird es euch fad, dann geb ich Ruhe.
-
@homoran said in Test ioBroker unter Windows installieren - 2023 Edition:
@gaspode sagte in Test ioBroker unter Windows installieren - 2023 Edition:
Wo fängt man an und wo hört man auf. Das nächste Thema ist dann schnell Python
ääähm,
auch wenn ich kein WIN user bin, hat eine Installation eines Adapters via git doch nichts mit 3rd party Software zu tun.Nö um das geht es nicht.
Es gibt Adapter die die haben in ihrer package.json eine github Referenz drinnen - statt einer npm Referenz. Und dafür benötigt npm dann bei der Installation ein installiertes 'git'. Nur sagt die Fehlermeldung das nicht in einer für User verständlichen Form. Und die Installation von git ist dann auch noch ein wenig tricky da sie unter dem User zwar funtioniert - aber für die ioBroker Installationb damit nichts gewonnen ist. Die git Installation fragt nicht ob systemweit installiert werden soll sondern installiert lokal für den Benutzer wenn dieser nicht aktiver Administrator ist.
Edit:
Um das Ganze noch "perverser" zu machen:
Eine Installation von Github geht OHNE dass git installiert ist.
Nur die Installation einer DEPENDENCY von github erfordert ein installiertes git.Das soll mal wer verstehen. Ev. hat ja npm einen Spezialeinbau für eine Githubinstallation der bei Installation der dependencies nicht existiert oder ...
In jedem Fall - ohne git crashen manche ganz normale Adapetrinstallationen - auch vom Stable Repository - unter Windows mit einer ziemlich unklaren Fehlermeldung. Da git wohl unter linux standard iost, dürfte es das Problem dort nicht geben.
-
@mcm1957 said in Test ioBroker unter Windows installieren - 2023 Edition:
Da git wohl unter linux standard iost, dürfte es das Problem dort nicht geben.
Hmm, das wäre natürlich tatsächlich ein Argument, git mit zu installieren. Ich persönlich fände es allerdings so aus dem Bauch raus besser, wenn das auf Adapter-Ebene gelöst werden könnte.
-
und das über den adapter checker zu prüfen, wenn der adapter ins repository mit aufgenommen wird?
-
@oliverio said in Test ioBroker unter Windows installieren - 2023 Edition:
und das über den adapter checker zu prüfen, wenn der adapter ins repository mit aufgenommen wird?
Ja, so was in der Art schwebte mir auch vor.
@mcm1957
Über wie viele Adapter reden wir eigentlich? -
@oliverio said in Test ioBroker unter Windows installieren - 2023 Edition:
und das über den adapter checker zu prüfen, wenn der adapter ins repository mit aufgenommen wird?
Ja, das steht sowieso am Programm.
ABER der Checker kann das nur dem Dev mitteilen. Und zu 90% hat der einen guten Grund das so zu lösen. Ergo bringt das dem User bei der Installation wenig. Und das nur bei der Aufnahme zu prüfen bringt wenig - da das oft auch später erfolgt, z.B. um einen Fix direkt aus Github einzubinden - oder statt des Originals einen gefixeten Fork zu verwenden. Für LATEST ist der Checker wirkungslos da er nicht läuft. Und beim Stable könnte ich den Adapter dann zwar blocken - aber das wollen wir eher nicht da es technisch mit der GH Referenz ja funktioniert udn ev. nur mit dieser funktioniert.
Was die Anzahl betrifft:
Keine Ahnung - wahrscheinlich wenig. 2 kenne ich im community Bereich. -
hauptziel ist doch immer das stable repo.
alles andere muss der entwickler dann seinen testern selbst erklären.
komfort für alle eventualitäten zu schaffen sollte nicht das ziel sein,
da es sonst für die zukunft zu hohe komplexitäten und abhängigkeiten aufbaut.oder gibt es ein szenario für einen stable adapter, der git benötigt
und man das nicht anders lösen kann (also npm oder pnpm)? -
@gaspode said in Test ioBroker unter Windows installieren - 2023 Edition:
@mcm1957 said in Test ioBroker unter Windows installieren - 2023 Edition:
Hmm, das wäre natürlich tatsächlich ein Argument, git mit zu installieren. Ich persönlich fände es allerdings so aus dem Bauch raus besser, wenn das auf Adapter-Ebene gelöst werden könnte.
Auf Adapterebene ist es m.E. nicht lösbar.
Außer es zu verbieten - was aber m.E. keine Lösung wäre.Konkret es Beispiel:
Adapter Samsung
Der verwendet einen Fork als dependency wo weder das Original und schon gar nicht der Fork in npm ist. Was soll ich jetzt tun? Ich könnt den Adapter natürlich aus allen Repos werfen. Aber ich glaub da mach ich mich nicht beliebtEinzige Idee die ich noch hätte wäre eine verpflichtender Hinweis im README. Da müssten wir uns dann halt überlegen was da stehn soll.
-
@oliverio said in Test ioBroker unter Windows installieren - 2023 Edition:
hauptziel ist doch immer das stable repo.
Hauptziel ist dass jeder Adapter problemlos installierbar ist und problemlos läuft.
oder gibt es ein szenario für einen stable adapter, der git benötigt
und man das nicht anders lösen kann (also npm oder pnpm)?JA, jeder der eine git dependency benutzen will / muss.
Außerdem erklärst du bitte dann den Devs dass ein Adapter der einwandfrei funktioniert nicht ins Stable kommt. Das Ergebnis sind dann Adapter die im Stable total veraltet sind und die User Experiance schädigen weil die User Probleme haben und dann schnippisch zurück bekommen "Installier halt eine aktuelle Version vom Latest". Ich hab in den letzten Wochen bereits einige Adapter aus dem Stable geworfen wo das Latest viel neuer war, offensichtlich das Stable unbrauchbar war und ein Update nicht sinnvoll war da es z.B. kein vernünftiges README, keine Releasenotes/Changelog etc. gab.
Konkret:
Soll ich den Samsung nun aus dem Stable Repo werfen?
Und wollen wir wirklich dass es dann zig Adapter gibt die nur in Latest sind - irgendwann stellen die User dann auf LATEST um weil im Stable "eh nix verfügbar ist". -
Ev. noch eine alternative Lösung:
Wenn das NEWS System eine platformabhängige notification kann, dann könnte man verlangen dass der dev eine winwods only news einträgt. Die würde dann zwar bei jeder Installation des Adapters kommen - aber das wär wohl akzeptabel.Muss ich mir mal ansehen wenn ich nicht vergesse.