NEWS
Test ioBroker unter Windows installieren - 2023 Edition
-
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.
-
Ja evtl ist die toolchain/buildchain für neue afapter und zu bearbeitende bestehende Adapter nicht einfach genug.
Bin zwar noch nicht so weit, aber genau zu diesem Thema wollte ich mich demnächst mal im dev discord melden.
Ich habe versucht für meine Adapter eine neue Entwicklungsumgebung aufzubauen und bin wieder am gleichen hängen geblieben wie vor einiger Zeit.
Entweder mach ich was grundlegend anders oder es funktioniert einfach nicht so richtig wie es sollte.
Auf jeden Fall hab ich meine eigenen Posts dazu wieder gefunden.
Aber wie gesagt, ich bereite da was vor und dann vergleichen wir mal mit jemanden configs der das gleiche Szenario hat. -
@oliverio
Sorry -dein letztes Posting verstehe ich absolut nicht. Ich seh beim besten Willen kein Toolchain Problem.Aber in jedem Fall ist das beim Windows Installer OT. Wenn es bezüglich Toolchain was zu besprechen gibt wär das wahrscheinlich in Telegramm oder in einem eigenen Topic sinnvoller.
-
@gaspode sagte in Test ioBroker unter Windows installieren - 2023 Edition:
Das nächste Thema ist dann schnell Python, Visual Studio Build Tools, etc.
Nur zur Info: Ja, genau das mußte ich wegen des RFLink Adapters manuell nachinstallieren. Sozusagen im Blindflug, jewils die nächsten Schritte aus den Logfiles erratend, https://forum.iobroker.net/topic/60173/rflink-auf-win-rechner-cannot-find-adapter-rflink-2-1-6?_=1716613541351
-
@klassisch said in Test ioBroker unter Windows installieren - 2023 Edition:
Nur zur Info: Ja, genau das mußte ich wegen des RFLink Adapters manuell nachinstallieren.
Ja, genau dich hatte ich auch im Hinterkopf, als ich den Beitrag geschrieben habe.
Es gibt unheimlich viele Fallstricke, die man überwinden muss - richtige Versionen (bei z.B. Python), richtige Pakete (bei z.B. VS Studio), etc. und irgendwie muss man die Installation dann auch aktuell halten. Das würde den Installer sehr komplex machen für einen Fall, den die wenigsten Anwender benötigen. Mal ganz davon abgesehen, dass ich mich mit der Ecke bisher nur rudimentär beschäftigt habe und mir nicht zutrauen würde, das wasserdicht zu implementieren.
Ich würde da eher zu einer sauberen Doku tendieren, evtl. auch zu einem Script, das man als Nachbrenner ausführen kann.
Wie schon geschrieben bringt Node.js das Script "Install Additional Tools for Node.js" im Startmenü mit, das ich bei mir aber noch nicht erfolgreich testen konnte. -
@klassisch
Steht da aber auch im README. Und wenns noch als News käme würden es auch die Nicht - Readme - Leser vor die Nase bekommenGeht (mir) zu 50% um Komfort für weniger erfahrene User und zu 99% darum, dass der User sich auskennen muss und erfahren sollte was er tun muss bzw. warum was nicht geht.
Quintessenz der Diskussion hier (für mich):
Einbau in Installer wäre möglich aber wahrscheinlich ein Fass ohne Boden.
Alternativen gesucht / gefragt.P.S. Muss mal schaun ob npm ein preinstall kennt ..