Plugin Installation über Command (git)

  • Hallo


    Ich habe von einem Plugin Entwickler eine Anweisung bekommen dass ich seine neue Version wie folgt installieren soll.


    Code
    npm install git+https://github.com/rloomans/homebridge-unifi-kids-cry.git

    Ich habe das dann versucht direkt im Terminal auszuführen und auch über das Terminal im Homebridge UI und der Output sieht wie folgt aus.

    Die Installation scheint nicht funktioniert zu haben, denn das Plugin ist nicht sichtbar im Web UI. Ich weiss jedoch nicht was ich falsch mache, sieht hier vielleicht ein Homebridge/Pi Guru was der Fehler ist?


    Vielen Dank

    Gruss

  • Der Entwickler hat dich angewiesen, das Plugin in dein Homeverzeichnis zu installieren, was du nicht willst. Du willst es lieber dort installieren, wo auch die anderen Plugins sind, also global, und so wird aus npm install schon mal gleich ein npm install -g, und weil du nicht die erforderlichen Rechte hast, das auszuführen, wird aus dem npm install -g ein sudo npm install -g.


    sudo npm install -g git+https://github.com/rloomans/homebridge-unifi-kids-cry.git

  • Vielen Dank für den Input, ich habe das nun mal über das normale Terminal (MacOS) versucht.


    Code
    pi@homebridge:~ $ sudo npm install -g git+https://github.com/rloomans/homebridge-unifi-kids-cry.git
    npm ERR! code 128
    npm ERR! Command failed: git clone --mirror -q https://github.com/rloomans/homebridge-unifi-kids-cry.git /root/.npm/_cacache/tmp/git-clone-07c486a8/.git
    npm ERR! fatal: could not create leading directories of '/root/.npm/_cacache/tmp/git-clone-07c486a8/.git'
    npm ERR! 
    
    npm ERR! A complete log of this run can be found in:
    npm ERR!     /root/.npm/_logs/2021-01-21T16_31_05_776Z-debug.log

    Ich muss gestehen ich kenne mich mit git nicht wirklich gut aus.


    Hallo

    Hat mir vielleicht noch jemand einen Tipp was ich noch machen könnte?

    Vielen Dank

    Einmal editiert, zuletzt von Spy () aus folgendem Grund: Ein Beitrag von suxus mit diesem Beitrag zusammengefügt.

  • Dann versuche folgendes:


    sudo su - (als root einloggen)

    rm -rf .npm (npm-Cache löschen)

    npm install -g --unsafe-perm git+https://github.com/rloomans/homebridge-unifi-kids-cry.git

    exit (als root ausloggen)

  • Hey genial, vielen Dank so hat es funktioniert.


    Sieht es dann so aus als ob ich ein Problem mit dem npm-Cache hatte, war da was Altes drin?


    Nochmals vielen Dank

  • Sieht es dann so aus als ob ich ein Problem mit dem npm-Cache hatte, war da was Altes drin?

    Ich weiß es nicht. Gelegentlich passiert sowas. Der npm-Installer hat da auch noch irgendwie ein eigenes Rechtesystem, wozu auch immer, und manchmal macht's dann bumm.


    Du solltest hier eines mitnehmen: wenn in Installationsanweisungen so etwas steht wie npm install homebridge-blafasel, dann ist das für dich immer:

    sudo npm install -g --unsafe-perm homebridge-blafasel

    Immer. Ausnahmslos. Egal was die Entwickler dahin schreiben.


    Und: wenn es geht, dann installiere alle Plugins über die Web-Oberfläche. Die macht genau das, was ich gerade aufgeschrieben habe und die macht's immer richtig. Das ging ja in deinem Fall nicht, und so kann's schon mal zu Gebastel kommen. Ist aber eher selten. Es kann tatsächlich auch passieren, dass man es gar nicht zum Laufen bekommt, aber das ist dann ganz selten.


    Einfach hier fragen.

  • Danke auf jeden Fall für deine tolle Unterstützung und ich konnte so auch wieder was dazu lernen.


    Und das Plugin läuft auch wunderbar und macht was es soll.


    Vielen Dank

  • sschuste


    Darf ich Dich noch kurz was zu meinem Problem von oben fragen und zwar wenn ich nun meinen neuen Pi gemäss Deiner Anleitung aufgesetzt habe, wie muss ich dann das Plugin von oben installieren (Command, UI-Terminal, Terminal)? Ich würde das Plugin auch am liebsten direkt über das Web UI installieren, doch solange der Code noch nicht im Master ist, bleibt mir wohl nichts anders übrig als über dieses Git-Command zu gehen.


    Vielen Dank

    • Hilfreich

    Genauso wie oben beschrieben.