Betatest: LoxBerry 3.x auf Debian 12 (Bookworm) - Python-basierende Plugins

Einklappen
X
 
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge
  • olicat
    MS Profi
    • 25.08.2015
    • 577

    #1

    Betatest: LoxBerry 3.x auf Debian 12 (Bookworm) - Python-basierende Plugins

    Hi!

    Die Installation von Python-Bibliotheken ist ja unter Debian 12 und Derivaten erheblich verkompliziert - es wird erwartet, das diese in einem virtuellen Environment installiert werden.
    Ist angedacht, ein zentrales venv-Verzeichnis fuer alle Plugins einzufuehren? Oder sollten die Plugin-Autoren sich ueber die Ablage des erforderlichen Verzeichnis selbst Gedanken machen?
    Aktuell wuerde ich wohl unter data/plugins/pluginname ein Verzeichnis .venv anlegen, in dem das virtuelle Environment fuer mein jeweiliges Plugin liegt.
    Somit wuerde man fuer jedes einzelne Plugin eine eigene virtuelle Laufzeitumgebung kreieren - uebliche Bibliotheken etwa wie paho-mqtt oder requests wuerden demnach zigfach installiert werden.

    Oder favorisieren die LB-Core-Entwickler da den Einsatz von pipx oder gar das Loeschen der globalen Datei "EXTERNALLY-MANAGED", um pip wie bisher nutzen zu koennen?

    Siehe auch hier.

    Ich bastle hier (erstmals) mit dem venv-Kram in Python rum und bin selbst noch etwas unschluessig, wie ich das mit meinen generic-Versionen handhaben soll. Da es aber immer mehr auf Debian 12 basierende Distributionen gibt, werde ich da kurzfristig eine Loesung finden muessen - aktuell favorisiere ich tatsaechlich .venv/ im data-Verzeichnis.

    Hat sich hier bereits ein anderer Plugin-Entwickler mit diesem Problem befasst?

    Gruss, Oliver
  • Prof.Mobilux
    Supermoderator
    • 25.08.2015
    • 5457

    #2
    Ich favorisiere aktuell pipx, weil wir damit am wenigsten zu tun haben. Das installiert nach "/opt/loxberry/.local". Das würde ich in unserem Profile auch schon einmal in den $PATH mit aufnehmen. Letztendlich ist es aber jedem selbst überlassen... Der "Best Practise" Artikel steht noch aus (aber angelegt isser schon ;-)): https://wiki.loxberry.de/entwickler/...ages_with_pipx

    Aktuell haben wir Python3 aber für den LoxBerry unter Bookworm wieder "aufgemacht", sodass noch über pip3 installiert werden kann. Mit dem nächsten Debian Release schwenken wir aber um - daher alles Neue mit pipx oder einer Alternative.

    Auch bei PHP gibt es erhebliche Neuerungen mit Wechsel auf PHP8, daher installieren wir aktuell als Default noch 7.4 und 8.0 nur zum Testen: https://wiki.loxberry.de/entwickler/...lugin_for_php8
    LoxBerry: https://wiki.loxberry.de/start

    Kommentar

    • olicat
      MS Profi
      • 25.08.2015
      • 577

      #3
      Moin,

      ich habe heute erfolgreich FOSHKplugin v0.10Beta unter LoxBerry3@Bookworm installiert - ohne jegliche Aenderungen am Plugin selbst.
      Das waere wirklich ein sehr smoother Uebergang!
      Danke!

      Dann muss ich nur noch lernen, wie ich die Plugin-Installation auf pipx und venv aendere ...
      Theoretisch sollte es doch ausreichen, im Installationsscript statt pip3 einfach pipx zu nutzen, oder?
      Wobei - dann wuerde ja ein einfacher symlink von pip3 auf pipx ausreichen. Vermutlich ist es wohl doch nicht so leicht ...

      Schoenes Wochenende,

      Oliver

      Kommentar


      • Prof.Mobilux
        Prof.Mobilux kommentierte
        Kommentar bearbeiten
        Auf jeden Fall ändern sich die Pfade der installierten Programme. Und einige Programme sind selbst noch nicht so weit und funktionieren unter pipx nicht oder nur mit Anpassungen. MotionEye zum Beispiel.

        Also erst einmal noch abwarten - wir packen dann noch ein „Best Practice“ ins Wiki. Aktuell bleibt es bei pip3.
    • Prof.Mobilux
      Supermoderator
      • 25.08.2015
      • 5457

      #4
      olicat Danke fürs Testen! Ich habe jetzt auch schon einiges ausprobiert. Ich denke wir werden das Installskript dann zeitnah umstellen.
      LoxBerry: https://wiki.loxberry.de/start

      Kommentar

      • olicat
        MS Profi
        • 25.08.2015
        • 577

        #5
        Hi!

        Gibt es bzgl. der Umstellung der Plugins auf LoxBerry v4 irgendwo hilfreiche Hinweise?
        Primaer wuerde mich natuerlich interessieren, wie wir das mit dem virtuellen Environment fuer Python in LoxBerry v4 handhaben.

        Also erst einmal noch abwarten - wir packen dann noch ein „Best Practice“ ins Wiki. Aktuell bleibt es bei pip3.
        Ein "Best Practice" ist leider noch immer eine leere Huelle?
        ;-)

        Ich setze jetzt erstmals den LB v4 auf und bin gespannt, wie sich meine Plugins verhalten.
        Erste Nutzermeldungen waren leider nicht so toll ...

        Gruss, Oliver

        Kommentar

        • Prof.Mobilux
          Supermoderator
          • 25.08.2015
          • 5457

          #6
          Der LoxBerry V4 verhält sich gleich wie der LoxBerry V3 - da hat sich rein gar nichts geändert. Die Änderungen betreffen den LoxBerry selbst (das MQTT Gateway, die WebUI). Python läuft weiterhin ohne venv und es wird auch weiterhin PHP7.x verwendet. Beides hatten wir mal vor im LB4 zu ändern, dass würde aber zu viele Plugins brechen.

          Du kannst also Python-Module weiterhin als root (postroot.sh oder preroot.sh) per pip3 systemweit installieren. Wir werden das auch zeitnah nicht ändern, solange Debian das so weiterhin zulässt.

          Wenn Deine User Probleme mit Deinem Plugin haben, dann vermutlich eher wegen Debian Trixi. Schau es Dir gerne an und melde Dich, wenn etwas nicht läuft. Dann schauen wir uns das an.
          LoxBerry: https://wiki.loxberry.de/start

          Kommentar

          • olicat
            MS Profi
            • 25.08.2015
            • 577

            #7
            Hi Micha,

            Zitat von Prof.Mobilux
            Der LoxBerry V4 verhält sich gleich wie der LoxBerry V3 - da hat sich rein gar nichts geändert.
            das kann ich jetzt vollumfaenglich bestaetigen.
            Eine Installation von FOSHKplugin lief hier problemlos durch - alles funktioniert.
            Keine Ahnung, wieso andere Nutzer da irgendwelche Probleme hatten.
            Vielen Dank!

            Oliver

            Kommentar

            Lädt...