Skip to content
  • Home
  • Aktuell
  • Tags
  • 0 Ungelesen 0
  • Kategorien
  • Unreplied
  • Beliebt
  • GitHub
  • Docu
  • Hilfe
Skins
  • Light
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Standard: (Kein Skin)
  • Kein Skin
Einklappen
ioBroker Logo

Community Forum

  1. ioBroker Community Home
  2. Deutsch
  3. ioBroker Allgemein
  4. Gelöst / Bash-Befehl in javaScript

NEWS

  • UPDATE 31.10.: Amazon Alexa - ioBroker Skill läuft aus ?
    apollon77A
    apollon77
    48
    3
    8.4k

  • Monatsrückblick – September 2025
    BluefoxB
    Bluefox
    13
    1
    2.0k

  • Neues Video "KI im Smart Home" - ioBroker plus n8n
    BluefoxB
    Bluefox
    15
    1
    2.5k

Gelöst / Bash-Befehl in javaScript

Geplant Angeheftet Gesperrt Verschoben ioBroker Allgemein
19 Beiträge 6 Kommentatoren 1.4k Aufrufe 3 Watching
  • Älteste zuerst
  • Neuste zuerst
  • Meiste Stimmen
Antworten
  • In einem neuen Thema antworten
Anmelden zum Antworten
Dieses Thema wurde gelöscht. Nur Nutzer mit entsprechenden Rechten können es sehen.
  • S Offline
    S Offline
    Schorsch
    schrieb am zuletzt editiert von
    #6

    Vielen Dank für eure schnellen Antworten.

    @homoran
    In der JS-Instanz sind die Einstellungen wie folgt (bekomme zur Zeit keinen Screenshot eingebaut):
    Kommando "setObject" erlauben = aus
    Kommando "exec" erlauben = an
    Kommando "sendToHost" erlauben = aus
    Nicht alle Zustände beim Start abonnieren = aus

    Mein User ist in der Gruppe "iobroker" enthalten. Bei dem User funktioniert es ja. Im Blockly-Script bleibt der Text leer.
    Muss "sendToHost" aktiviert sein?

    @Thomas-Braun das Ergebnis ist:

    sudo -H -u iobroker hoymiles-wifi --host xxx.xxx.xxx.xxx get-version-info
    Traceback (most recent call last):
      File "/usr/local/bin/hoymiles-wifi", line 5, in <module>
        from hoymiles_wifi.__main__ import run_main
    ModuleNotFoundError: No module named 'hoymiles_wifi'
    

    Als SSH-User erhalte ich folgendes bei diesem Befehl:

    hoymiles-wifi --host xxx.xxx.xxx.xxx get-version-info
    No response or unable to retrieve response for get-version-info
    

    Die Antwort ist in soweit richtig, weil sich der hoymiles bei Dunkelheit aus dem WLAN verabschiedet und morgen bei Tageslicht wieder einbindet.

    Der Inhalt der Datei hoymiles-wifi lautet:

    #!/usr/bin/python3
    # -*- coding: utf-8 -*-
    import re
    import sys
    from hoymiles_wifi.__main__ import run_main
    if __name__ == '__main__':
        sys.argv[0] = re.sub(r'(-script\.pyw|\.exe)?$', '', sys.argv[0])
        sys.exit(run_main())
    

    Vielleicht hilft euch dies weiter.

    Thomas BraunT paul53P 3 Antworten Letzte Antwort
    0
    • S Schorsch

      Vielen Dank für eure schnellen Antworten.

      @homoran
      In der JS-Instanz sind die Einstellungen wie folgt (bekomme zur Zeit keinen Screenshot eingebaut):
      Kommando "setObject" erlauben = aus
      Kommando "exec" erlauben = an
      Kommando "sendToHost" erlauben = aus
      Nicht alle Zustände beim Start abonnieren = aus

      Mein User ist in der Gruppe "iobroker" enthalten. Bei dem User funktioniert es ja. Im Blockly-Script bleibt der Text leer.
      Muss "sendToHost" aktiviert sein?

      @Thomas-Braun das Ergebnis ist:

      sudo -H -u iobroker hoymiles-wifi --host xxx.xxx.xxx.xxx get-version-info
      Traceback (most recent call last):
        File "/usr/local/bin/hoymiles-wifi", line 5, in <module>
          from hoymiles_wifi.__main__ import run_main
      ModuleNotFoundError: No module named 'hoymiles_wifi'
      

      Als SSH-User erhalte ich folgendes bei diesem Befehl:

      hoymiles-wifi --host xxx.xxx.xxx.xxx get-version-info
      No response or unable to retrieve response for get-version-info
      

      Die Antwort ist in soweit richtig, weil sich der hoymiles bei Dunkelheit aus dem WLAN verabschiedet und morgen bei Tageslicht wieder einbindet.

      Der Inhalt der Datei hoymiles-wifi lautet:

      #!/usr/bin/python3
      # -*- coding: utf-8 -*-
      import re
      import sys
      from hoymiles_wifi.__main__ import run_main
      if __name__ == '__main__':
          sys.argv[0] = re.sub(r'(-script\.pyw|\.exe)?$', '', sys.argv[0])
          sys.exit(run_main())
      

      Vielleicht hilft euch dies weiter.

      Thomas BraunT Online
      Thomas BraunT Online
      Thomas Braun
      Most Active
      schrieb am zuletzt editiert von
      #7

      @schorsch

      echad@chet:~ $ sudo -H -u iobroker pipx install hoymiles-wifi
        installed package hoymiles-wifi 0.2.7, installed using Python 3.12.7
        These apps are now globally available
          - hoymiles-wifi
      ⚠  Note: '/home/iobroker/.local/bin' is not on your PATH environment variable. These apps will not be globally accessible until your PATH is updated. Run
          `pipx ensurepath` to automatically add it, or manually modify your PATH in your shell's config file (e.g. ~/.bashrc).
      done! ✨ 🌟 ✨
      echad@chet:~ $ sudo -H -u iobroker /home/iobroker/.local/bin/hoymiles-wifi 
      usage: hoymiles-wifi [-h] --host HOST [--local_addr LOCAL_ADDR] [--as-json]
                           {get-real-data-new,get-real-data,get-config,network-info,app-information-data,app-get-hist-power,set-power-limit,set-wifi,firmware-update,restart-dtu,turn-on-inverter,turn-off-inverter,get-information-data,get-version-info,heartbeat,identify-dtu,identify-inverters,identify-meters,get-alarm-list}
      hoymiles-wifi: error: the following arguments are required: --host, command
      echad@chet:~ $ 
      

      Wenn der user iobroker das Programm nur nutzen soll würde ich es so machen.

      Linux-Werkzeugkasten:
      https://forum.iobroker.net/topic/42952/der-kleine-iobroker-linux-werkzeugkasten
      NodeJS Fixer Skript:
      https://forum.iobroker.net/topic/68035/iob-node-fix-skript
      iob_diag: curl -sLf -o diag.sh https://iobroker.net/diag.sh && bash diag.sh

      S 1 Antwort Letzte Antwort
      0
      • S Schorsch

        Vielen Dank für eure schnellen Antworten.

        @homoran
        In der JS-Instanz sind die Einstellungen wie folgt (bekomme zur Zeit keinen Screenshot eingebaut):
        Kommando "setObject" erlauben = aus
        Kommando "exec" erlauben = an
        Kommando "sendToHost" erlauben = aus
        Nicht alle Zustände beim Start abonnieren = aus

        Mein User ist in der Gruppe "iobroker" enthalten. Bei dem User funktioniert es ja. Im Blockly-Script bleibt der Text leer.
        Muss "sendToHost" aktiviert sein?

        @Thomas-Braun das Ergebnis ist:

        sudo -H -u iobroker hoymiles-wifi --host xxx.xxx.xxx.xxx get-version-info
        Traceback (most recent call last):
          File "/usr/local/bin/hoymiles-wifi", line 5, in <module>
            from hoymiles_wifi.__main__ import run_main
        ModuleNotFoundError: No module named 'hoymiles_wifi'
        

        Als SSH-User erhalte ich folgendes bei diesem Befehl:

        hoymiles-wifi --host xxx.xxx.xxx.xxx get-version-info
        No response or unable to retrieve response for get-version-info
        

        Die Antwort ist in soweit richtig, weil sich der hoymiles bei Dunkelheit aus dem WLAN verabschiedet und morgen bei Tageslicht wieder einbindet.

        Der Inhalt der Datei hoymiles-wifi lautet:

        #!/usr/bin/python3
        # -*- coding: utf-8 -*-
        import re
        import sys
        from hoymiles_wifi.__main__ import run_main
        if __name__ == '__main__':
            sys.argv[0] = re.sub(r'(-script\.pyw|\.exe)?$', '', sys.argv[0])
            sys.exit(run_main())
        

        Vielleicht hilft euch dies weiter.

        Thomas BraunT Online
        Thomas BraunT Online
        Thomas Braun
        Most Active
        schrieb am zuletzt editiert von
        #8

        @schorsch

        Und wenn es global für alle user verfügbar sein soll:

        sudo pipx install hoymiles-wifi --global
        

        Linux-Werkzeugkasten:
        https://forum.iobroker.net/topic/42952/der-kleine-iobroker-linux-werkzeugkasten
        NodeJS Fixer Skript:
        https://forum.iobroker.net/topic/68035/iob-node-fix-skript
        iob_diag: curl -sLf -o diag.sh https://iobroker.net/diag.sh && bash diag.sh

        1 Antwort Letzte Antwort
        0
        • S Schorsch

          Vielen Dank für eure schnellen Antworten.

          @homoran
          In der JS-Instanz sind die Einstellungen wie folgt (bekomme zur Zeit keinen Screenshot eingebaut):
          Kommando "setObject" erlauben = aus
          Kommando "exec" erlauben = an
          Kommando "sendToHost" erlauben = aus
          Nicht alle Zustände beim Start abonnieren = aus

          Mein User ist in der Gruppe "iobroker" enthalten. Bei dem User funktioniert es ja. Im Blockly-Script bleibt der Text leer.
          Muss "sendToHost" aktiviert sein?

          @Thomas-Braun das Ergebnis ist:

          sudo -H -u iobroker hoymiles-wifi --host xxx.xxx.xxx.xxx get-version-info
          Traceback (most recent call last):
            File "/usr/local/bin/hoymiles-wifi", line 5, in <module>
              from hoymiles_wifi.__main__ import run_main
          ModuleNotFoundError: No module named 'hoymiles_wifi'
          

          Als SSH-User erhalte ich folgendes bei diesem Befehl:

          hoymiles-wifi --host xxx.xxx.xxx.xxx get-version-info
          No response or unable to retrieve response for get-version-info
          

          Die Antwort ist in soweit richtig, weil sich der hoymiles bei Dunkelheit aus dem WLAN verabschiedet und morgen bei Tageslicht wieder einbindet.

          Der Inhalt der Datei hoymiles-wifi lautet:

          #!/usr/bin/python3
          # -*- coding: utf-8 -*-
          import re
          import sys
          from hoymiles_wifi.__main__ import run_main
          if __name__ == '__main__':
              sys.argv[0] = re.sub(r'(-script\.pyw|\.exe)?$', '', sys.argv[0])
              sys.exit(run_main())
          

          Vielleicht hilft euch dies weiter.

          paul53P Offline
          paul53P Offline
          paul53
          schrieb am zuletzt editiert von paul53
          #9

          @schorsch sagte: Der Inhalt der Datei hoymiles-wifi lautet:

          Das ist doch kein Bash-Skript, sondern ein Python-Skript. Rufe es mal im exec() mit python3 auf.
          "python3 hoymiles-wifi --host 111.111.111.111 get-real-data-new"

          Bitte verzichtet auf Chat-Nachrichten, denn die Handhabung ist grauenhaft !
          Produktiv: RPi 2 mit S.USV, HM-MOD-RPI und SLC-USB-Stick mit root fs

          Thomas BraunT 1 Antwort Letzte Antwort
          1
          • paul53P paul53

            @schorsch sagte: Der Inhalt der Datei hoymiles-wifi lautet:

            Das ist doch kein Bash-Skript, sondern ein Python-Skript. Rufe es mal im exec() mit python3 auf.
            "python3 hoymiles-wifi --host 111.111.111.111 get-real-data-new"

            Thomas BraunT Online
            Thomas BraunT Online
            Thomas Braun
            Most Active
            schrieb am zuletzt editiert von
            #10

            @paul53 sagte in Bash-Befehl in javaScript:

            Rufe es mal im exec() mit python3 auf.
            "python3 hoymiles-wifi --host 111.111.111.111 get-real-data-new

            Wenn es 'ordentlich' per pipx installiert wurde (und dann dadurch im $PATH des users 'iobroker' liegt) dann sollte der Aufruf von
            hoymiles-wifi
            per exec-Block reichen.

            Linux-Werkzeugkasten:
            https://forum.iobroker.net/topic/42952/der-kleine-iobroker-linux-werkzeugkasten
            NodeJS Fixer Skript:
            https://forum.iobroker.net/topic/68035/iob-node-fix-skript
            iob_diag: curl -sLf -o diag.sh https://iobroker.net/diag.sh && bash diag.sh

            1 Antwort Letzte Antwort
            0
            • Thomas BraunT Thomas Braun

              @schorsch

              echad@chet:~ $ sudo -H -u iobroker pipx install hoymiles-wifi
                installed package hoymiles-wifi 0.2.7, installed using Python 3.12.7
                These apps are now globally available
                  - hoymiles-wifi
              ⚠  Note: '/home/iobroker/.local/bin' is not on your PATH environment variable. These apps will not be globally accessible until your PATH is updated. Run
                  `pipx ensurepath` to automatically add it, or manually modify your PATH in your shell's config file (e.g. ~/.bashrc).
              done! ✨ 🌟 ✨
              echad@chet:~ $ sudo -H -u iobroker /home/iobroker/.local/bin/hoymiles-wifi 
              usage: hoymiles-wifi [-h] --host HOST [--local_addr LOCAL_ADDR] [--as-json]
                                   {get-real-data-new,get-real-data,get-config,network-info,app-information-data,app-get-hist-power,set-power-limit,set-wifi,firmware-update,restart-dtu,turn-on-inverter,turn-off-inverter,get-information-data,get-version-info,heartbeat,identify-dtu,identify-inverters,identify-meters,get-alarm-list}
              hoymiles-wifi: error: the following arguments are required: --host, command
              echad@chet:~ $ 
              

              Wenn der user iobroker das Programm nur nutzen soll würde ich es so machen.

              S Offline
              S Offline
              Schorsch
              schrieb am zuletzt editiert von
              #11

              @thomas-braun Hi, ich habe den Befehl so eingegeben, erhalte jedoch eine Fehlermeldung.
              5d00c3e6-e22c-4731-ad7c-ec011b032121-grafik.png

              Kann es sein, dass durch die Installation mit pip und anschließend mit pipx etwas durcheinander gekommen ist?
              Die PATH-Variable habe ich mit export PATH angepasst.
              f5b454e0-9b04-4a16-a34f-dfa515c83a8a-grafik.png

              Wie muss ich vorgehen, um hoymiles-wifi komplett zu deinstallieren, um es dann neu zu installieren?

              @paul53 Der Aufruf mit dem Vorangestellten "python3" führt auch zu keinem Erfolg.

              Gruß Schorsch

              Thomas BraunT 1 Antwort Letzte Antwort
              0
              • S Schorsch

                @thomas-braun Hi, ich habe den Befehl so eingegeben, erhalte jedoch eine Fehlermeldung.
                5d00c3e6-e22c-4731-ad7c-ec011b032121-grafik.png

                Kann es sein, dass durch die Installation mit pip und anschließend mit pipx etwas durcheinander gekommen ist?
                Die PATH-Variable habe ich mit export PATH angepasst.
                f5b454e0-9b04-4a16-a34f-dfa515c83a8a-grafik.png

                Wie muss ich vorgehen, um hoymiles-wifi komplett zu deinstallieren, um es dann neu zu installieren?

                @paul53 Der Aufruf mit dem Vorangestellten "python3" führt auch zu keinem Erfolg.

                Gruß Schorsch

                Thomas BraunT Online
                Thomas BraunT Online
                Thomas Braun
                Most Active
                schrieb am zuletzt editiert von
                #12

                @schorsch

                Bilidchen kann und will ich nicht entziffern.
                Text immer in CodeTags eingebettet hier rein.

                Linux-Werkzeugkasten:
                https://forum.iobroker.net/topic/42952/der-kleine-iobroker-linux-werkzeugkasten
                NodeJS Fixer Skript:
                https://forum.iobroker.net/topic/68035/iob-node-fix-skript
                iob_diag: curl -sLf -o diag.sh https://iobroker.net/diag.sh && bash diag.sh

                1 Antwort Letzte Antwort
                0
                • S Offline
                  S Offline
                  Schorsch
                  schrieb am zuletzt editiert von
                  #13

                  @Thomas-Braun Sorry, mach ich n atürlich.

                  Folgend der Befehl und das Ergebnis zur Installation von hoymiles-wifi gemäß deinen Angaben.

                  sudo -H -u iobroker pipx install hoymiles-wifi
                  ^ File exists at /home/iobroker/.local/bin/hoymiles-wifi and points to /home/iobroker/.local/pipx/venvs/hoymiles-wifi. Not modifying. installed package hoymiles-wifi 0.2.7, installed using Python 3.11.2
                  -hoymiles-wifi (symlink missing or pointing to unexpected location)
                  ^ Note: '/home/iobroker/.local/bin is not on your PATH environment variable. These apps will not be globally accessibleuntil your PATH is updatet. Run 'pipx ensurepath' to automatically add it, or manually modify your PATH in your shell`s config file (e.g. ~/.bashrc).
                  

                  Ich denke, dass ich da etwas durcheinandergebracht habe. Daher möchte ich wie folgt vorgehen:

                  1. hoymiles-wifi komplett deinstallieren. Wie mache ich es am Besten?
                  2. hoymiles-wifi wieder installieren, gemäß deiner Vorgabe
                  3. wie editiere ich die PATH-Variable des users iobroker, wie in der Antwort vorgeben oder anders?

                  Vielen Dank für deine Geduld.
                  Schorsch

                  Thomas BraunT 1 Antwort Letzte Antwort
                  0
                  • S Schorsch

                    @Thomas-Braun Sorry, mach ich n atürlich.

                    Folgend der Befehl und das Ergebnis zur Installation von hoymiles-wifi gemäß deinen Angaben.

                    sudo -H -u iobroker pipx install hoymiles-wifi
                    ^ File exists at /home/iobroker/.local/bin/hoymiles-wifi and points to /home/iobroker/.local/pipx/venvs/hoymiles-wifi. Not modifying. installed package hoymiles-wifi 0.2.7, installed using Python 3.11.2
                    -hoymiles-wifi (symlink missing or pointing to unexpected location)
                    ^ Note: '/home/iobroker/.local/bin is not on your PATH environment variable. These apps will not be globally accessibleuntil your PATH is updatet. Run 'pipx ensurepath' to automatically add it, or manually modify your PATH in your shell`s config file (e.g. ~/.bashrc).
                    

                    Ich denke, dass ich da etwas durcheinandergebracht habe. Daher möchte ich wie folgt vorgehen:

                    1. hoymiles-wifi komplett deinstallieren. Wie mache ich es am Besten?
                    2. hoymiles-wifi wieder installieren, gemäß deiner Vorgabe
                    3. wie editiere ich die PATH-Variable des users iobroker, wie in der Antwort vorgeben oder anders?

                    Vielen Dank für deine Geduld.
                    Schorsch

                    Thomas BraunT Online
                    Thomas BraunT Online
                    Thomas Braun
                    Most Active
                    schrieb am zuletzt editiert von Thomas Braun
                    #14

                    @schorsch sagte in Bash-Befehl in javaScript:

                    hoymiles-wifi komplett deinstallieren. Wie mache ich es am Besten?

                    pip uninstall hoymiles-wifi
                    

                    im gleichen Verzeichnis wie bei der installation eingeben.

                    Linux-Werkzeugkasten:
                    https://forum.iobroker.net/topic/42952/der-kleine-iobroker-linux-werkzeugkasten
                    NodeJS Fixer Skript:
                    https://forum.iobroker.net/topic/68035/iob-node-fix-skript
                    iob_diag: curl -sLf -o diag.sh https://iobroker.net/diag.sh && bash diag.sh

                    1 Antwort Letzte Antwort
                    0
                    • S Offline
                      S Offline
                      Schorsch
                      schrieb am zuletzt editiert von
                      #15

                      So, nach mehreren Tagen lesen und probieren bekomme ich es jetzt halbwegs hin.
                      Was nicht funktioniert, ist die Variable PATH für iobroker zu verändern.

                      Bei der Installation mit pipx wurde hoymiles-wifi im Verzeichnis "/home/iobroker/.local/pipx/venvs/hoymiles-wifi/bin/" installiert.

                      Mit folgendem Aufruf aus der bash erhalte ich Daten vom Wechselrichter

                      sudo -H -u iobroker /home/iobroker/.local/pipx/venvs/hoymiles-wifi/bin/hoymiles-wifi --host xxx.xxx.xxx.xxx get-real-data-new
                      

                      Wenn ich den Befehl in einem exec-Block von Blockly eingebe, erhalte ich auch Daten zurück.

                      /home/iobroker/.local/pipx/venvs/hoymiles-wifi/bin/hoymiles-wifi --host xxx.xxx.xxx.xxx get-real-data-new
                      

                      Was ich nicht hinbekomme, ist die PATH-Variable so zu ändern, dass iobroker im Verzeichnis /home/iobroker/.local/pipx/venvs/hoymiles-wifi/bin sucht. Ich habe testweise mit nano folgende Dateien editiert und danach wieder in den ursprung gesetzt:

                      • /etc/profile
                      • /home/iobroker/.profile
                        und den RasPi danach jeweils neu gestartet.
                        Als User dann mit folgenden Befehl die PATH-Variable geprüft:
                      sudo -H -u iobroker printenv
                      

                      Ergebnis war immer:

                      PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
                      MAIL=/var/mail/iobroker
                      LOGNAME=iobroker
                      USER=iobroker
                      HOME=/home/iobroker
                      

                      Fragen:

                      • Ist es möglich, mit pipx das Programm hoymiles-wifi im Verzeichnis usr/local/bin zu installieren? Wenn ja, wie?

                      • Wie kann ich die PATH-Variable so anpassen, dass iobroker das Programm hoymiles-wifi selber findet und ich mir die Pfadangaben im Befehl sparen kann?

                      Thomas BraunT 1 Antwort Letzte Antwort
                      0
                      • S Schorsch

                        So, nach mehreren Tagen lesen und probieren bekomme ich es jetzt halbwegs hin.
                        Was nicht funktioniert, ist die Variable PATH für iobroker zu verändern.

                        Bei der Installation mit pipx wurde hoymiles-wifi im Verzeichnis "/home/iobroker/.local/pipx/venvs/hoymiles-wifi/bin/" installiert.

                        Mit folgendem Aufruf aus der bash erhalte ich Daten vom Wechselrichter

                        sudo -H -u iobroker /home/iobroker/.local/pipx/venvs/hoymiles-wifi/bin/hoymiles-wifi --host xxx.xxx.xxx.xxx get-real-data-new
                        

                        Wenn ich den Befehl in einem exec-Block von Blockly eingebe, erhalte ich auch Daten zurück.

                        /home/iobroker/.local/pipx/venvs/hoymiles-wifi/bin/hoymiles-wifi --host xxx.xxx.xxx.xxx get-real-data-new
                        

                        Was ich nicht hinbekomme, ist die PATH-Variable so zu ändern, dass iobroker im Verzeichnis /home/iobroker/.local/pipx/venvs/hoymiles-wifi/bin sucht. Ich habe testweise mit nano folgende Dateien editiert und danach wieder in den ursprung gesetzt:

                        • /etc/profile
                        • /home/iobroker/.profile
                          und den RasPi danach jeweils neu gestartet.
                          Als User dann mit folgenden Befehl die PATH-Variable geprüft:
                        sudo -H -u iobroker printenv
                        

                        Ergebnis war immer:

                        PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
                        MAIL=/var/mail/iobroker
                        LOGNAME=iobroker
                        USER=iobroker
                        HOME=/home/iobroker
                        

                        Fragen:

                        • Ist es möglich, mit pipx das Programm hoymiles-wifi im Verzeichnis usr/local/bin zu installieren? Wenn ja, wie?

                        • Wie kann ich die PATH-Variable so anpassen, dass iobroker das Programm hoymiles-wifi selber findet und ich mir die Pfadangaben im Befehl sparen kann?

                        Thomas BraunT Online
                        Thomas BraunT Online
                        Thomas Braun
                        Most Active
                        schrieb am zuletzt editiert von Thomas Braun
                        #16

                        @schorsch sagte in Bash-Befehl in javaScript:

                        Ist es möglich, mit pipx das Programm hoymiles-wifi im Verzeichnis usr/local/bin zu installieren? Wenn ja, wie?

                        Ja, wenn es mit root-Rechten global installiert wird landet es dort.

                        Oder du machst es per

                        sudo -H -u iobroker pipx ensurepath
                        

                        Linux-Werkzeugkasten:
                        https://forum.iobroker.net/topic/42952/der-kleine-iobroker-linux-werkzeugkasten
                        NodeJS Fixer Skript:
                        https://forum.iobroker.net/topic/68035/iob-node-fix-skript
                        iob_diag: curl -sLf -o diag.sh https://iobroker.net/diag.sh && bash diag.sh

                        1 Antwort Letzte Antwort
                        0
                        • OliverIOO Offline
                          OliverIOO Offline
                          OliverIO
                          schrieb am zuletzt editiert von
                          #17

                          @schorsch sagte in Bash-Befehl in javaScript:

                          /home/iobroker/.profile

                          was hast du da eingetragen?

                          du hättest da sowas eintragen können

                          export PATH="$PATH:/path/to/dir"
                          

                          das $PATH sorgt dafür, dsa der bisherige Pfad mit deinem /path/to/dir ergänzt wird.

                          der rechner muss auch nicht neu gestartet werden, es muss nur die aktuelle session beendet werden, also am besten ausloggen und wieder einloggen.

                          logout
                          

                          https://stackoverflow.com/questions/14637979/how-to-permanently-set-path-on-linux-unix

                          Meine Adapter und Widgets
                          TVProgram, SqueezeboxRPC, OpenLiga, RSSFeed, MyTime,, pi-hole2, vis-json-template, skiinfo, vis-mapwidgets, vis-2-widgets-rssfeed
                          Links im Profil

                          S 1 Antwort Letzte Antwort
                          0
                          • OliverIOO OliverIO

                            @schorsch sagte in Bash-Befehl in javaScript:

                            /home/iobroker/.profile

                            was hast du da eingetragen?

                            du hättest da sowas eintragen können

                            export PATH="$PATH:/path/to/dir"
                            

                            das $PATH sorgt dafür, dsa der bisherige Pfad mit deinem /path/to/dir ergänzt wird.

                            der rechner muss auch nicht neu gestartet werden, es muss nur die aktuelle session beendet werden, also am besten ausloggen und wieder einloggen.

                            logout
                            

                            https://stackoverflow.com/questions/14637979/how-to-permanently-set-path-on-linux-unix

                            S Offline
                            S Offline
                            Schorsch
                            schrieb am zuletzt editiert von
                            #18

                            @oliverio Da ich mich noch zu den Anfängern zähle, habe ich einfach vorhandene PATH-Zuweisungen ergänzt.
                            So z. B. in der Datei /etc/profile. Da habe ich hinten ":/home/iobroker/.local/bin" angehängt:

                            if [ "$(id -u)" -eq 0 ]; then
                              PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/home/iobroker/.local/bin"
                            else
                              PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/home/iobroker/.local/bin:/usr/local/games:/usr/games"
                            fi
                            export PATH
                            

                            Ich bin davon ausgegangen, dass entweder der eine oder andere Teil der if-Anweisung durchlaufen wird. Daher habe ich in beiden die PATH-Angabe hinten ergänzt. Meine Erwartung war, dass dann für den User iobroker in der PATH-Anweisung hinten die Ergänzung erscheint.

                            Ich gehe davon aus, dass die Variable $PATH des Users "iobroker" mit folgendem Befehl mit ausgegeben wird:

                            sudo -H -u ioproker printenv
                            

                            In der Ausgabe ist dann unter PATH folgendes zu lesen (siehe auch meinen vorherigen Beitrag):

                            PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
                            

                            In der Datei /home/iobroker/.profile hat pipx nach Eingabe des folgenden Befehls

                            sudo -H -u iobroker pipx ensurepath
                            

                            folgenden Eintrag hinterlassen

                            # Created by `pipx` on 2024-11-15 17:24:05
                            export PATH="$PATH:/home/iobroker/.local/bin"
                            

                            Auch diese Zeichenkette erschien nicht. Ich habe danach die Ergänzung von pipx mit nano auskommentiert und folgende Zeilen eingefügt:

                            # set PATH so it includes hoymiles-wifi
                            if [ -d "$HOME/.local/pipx" ] ; then
                                PATH="$HOME/.local/pipx/venvs/hoymiles-wifi/bin"
                            fi
                            

                            Auch ohne Erfolg.
                            Entweder zeigt der Befehl "sudo -H -u iobroker printenv" nicht die Variable $PATH vom User iobroker an oder die Zuweisung erfolgt irgendwie anders.

                            Der User, mit dem ich über SSH auf den Raspi zugreife, ist folgenden Gruppen zugeordnet:

                            USER@ioBrokerPi:~ $ id USER
                            uid=1000(USER) gid=1000(USER) Gruppen=1000(USER),4(adm),20(dialout),24(cdrom),27(sudo),29(audio),44(video),46(plugdev),60(games),100(users),102(input),105(render),106(netdev),995(spi),994(i2c),993(gpio),1001(iobroker)
                            

                            Der Gruppe root ist kein User zugeordnet.

                            1 Antwort Letzte Antwort
                            0
                            • S Offline
                              S Offline
                              Schorsch
                              schrieb am zuletzt editiert von
                              #19

                              Lösung gefunden.

                              Die Variable $PATH des Users iobroker konnte ich nicht editieren.
                              Ich habe jetzt einen Softlink im Verzeichnis /usr/local/bin mit dem Namen hoymiles-wifi gesetzt, der auf die Datei hoymiles-wifi im Verzeichnis /home/iobroker/.local/pipx/venvs/hoymiles-wifi/bin zeigt. Mit Blockly kann dann die Pfadangabe entfallen.
                              Erklärung auf den Seiten von ubuntuusers

                              Jetzt funktioniert auch der Adapter von @Michael-6.

                              1 Antwort Letzte Antwort
                              0
                              Antworten
                              • In einem neuen Thema antworten
                              Anmelden zum Antworten
                              • Älteste zuerst
                              • Neuste zuerst
                              • Meiste Stimmen


                              Support us

                              ioBroker
                              Community Adapters
                              Donate
                              FAQ Cloud / IOT
                              HowTo: Node.js-Update
                              HowTo: Backup/Restore
                              Downloads
                              BLOG

                              634

                              Online

                              32.4k

                              Benutzer

                              81.4k

                              Themen

                              1.3m

                              Beiträge
                              Community
                              Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen | Einwilligungseinstellungen
                              ioBroker Community 2014-2025
                              logo
                              • Anmelden

                              • Du hast noch kein Konto? Registrieren

                              • Anmelden oder registrieren, um zu suchen
                              • Erster Beitrag
                                Letzter Beitrag
                              0
                              • Home
                              • Aktuell
                              • Tags
                              • Ungelesen 0
                              • Kategorien
                              • Unreplied
                              • Beliebt
                              • GitHub
                              • Docu
                              • Hilfe