HassIO/Raspberry Gazpar custom component installation #9
Replies: 19 comments 3 replies
-
L'installation du package PyGazpar est automatique à partir du custom_component correspondant. En effet, la dépendance est déclarée dans le fichier manifest.json, et Home Assistant va le télécharger et l'installer au démarrage. |
Beta Was this translation helpful? Give feedback.
-
Merci de ta réponse ! |
Beta Was this translation helpful? Give feedback.
-
Ah, oui, en effet, il faut le binaire du geckodriver et une installation firefox compatible. Et j'allais oublier le configuration HA qui va avec :
|
Beta Was this translation helpful? Give feedback.
-
Merci! Le configuration j’avais déjà trouvé dans un précédent post. |
Beta Was this translation helpful? Give feedback.
-
Firefox: oui, via une console Ssh, installe le paquet Firefox qui va bien. |
Beta Was this translation helpful? Give feedback.
-
Le problème est que je suis sur Home Assistant OS directement, et pas sur une raspbian classique. Je ne vois pas comment installer le paquet firefox, même en ssh les commandes apt install ne sont pas reconnues... :( |
Beta Was this translation helpful? Give feedback.
-
Je n'utilise pas Home Assistant OS. C'est probablement une distribution Linux fonctionnant avec un autre gestionnaire de package que apt. Alpine Linux est souvent utilisé comme distribution légère dans ce genre de contexte (comme docker). Son gestionnaire de package est apk (https://wiki.alpinelinux.org/wiki/Alpine_Linux_package_management). Tu peux essayer ce dernier pour commencer. |
Beta Was this translation helpful? Give feedback.
-
Merci de ton retour ! en effet, il s'agit bien du gestionnaire apk. Cependant, après de multiples essais, je pense que cela ne peut pas fonctionner car je fais tourner home assistant sur une Raspberry Pi, et malheureusement le Geckodriver n'est pas compatible avec les plateformes ARM (en tout cas pas depuis un certain temps)... |
Beta Was this translation helpful? Give feedback.
-
As-tu essayer avec la version 0.23 : https://github.com/mozilla/geckodriver/releases/download/v0.23.0/geckodriver-v0.23.0-arm7hf.tar.gz |
Beta Was this translation helpful? Give feedback.
-
Oui j’ai essayé justement celle ci, et avec Firefox-esr 78.6.1, mais toujours des messages d’erreurs, notamment :
FileNotFoundError: [Errno 2] No such file or directory: '/config/drivers/geckodriver'
Alors que j’ai bien mis le fichier geckodriver dans le dossier drivers du dossier config. J’ai même modifié les droits du fichier pour le rendre exécutable, rien n’y fait...
Envoyé de mon iPad
… Le 11 janv. 2021 à 14:44, ssenart ***@***.***> a écrit :
As-tu essayer avec la version 0.23 : https://github.com/mozilla/geckodriver/releases/download/v0.23.0/geckodriver-v0.23.0-arm7hf.tar.gz
Et firefox >= 66.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub, or unsubscribe.
|
Beta Was this translation helpful? Give feedback.
-
Ce n'est pas un problème de version car il n'arrive même pas à trouver le binaire. C'est peut-être un problème de droits. |
Beta Was this translation helpful? Give feedback.
-
Malheureusement j’avais essayé un 777 mais cela ne change rien...
Toujours les messages d’erreurs :
Failed to query PyGazpar library with exception : Traceback (most recent call last): File "/usr/local/lib/python3.8/site-packages/selenium/webdriver/common/service.py", line 72, in start self.process = subprocess.Popen(cmd, env=self.env, File "/usr/local/lib/python3.8/subprocess.py", line 854, in __init__ self._execute_child(args, executable, preexec_fn, close_fds, File "/usr/local/lib/python3.8/subprocess.py", line 1702, in _execute_child raise child_exception_type(errno_num, err_msg, err_filename) FileNotFoundError: [Errno 2] No such file or directory: '/config/drivers/geckodriver' During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/config/custom_components/gazpar/sensor.py", line 124, in update_gazpar_data client.update() File "/usr/local/lib/python3.8/site-packages/pygazpar/client.py", line 90, in update driver = webdriver.Firefox(executable_path=self.__firefox_webdriver_executable, firefox_profile=profile, options=options, service_log_path=geckodriverLogFile) File "/usr/local/lib/python3.8/site-packages/selenium/webdriver/firefox/webdriver.py", line 164, in __init__ self.service.start() File "/usr/local/lib/python3.8/site-packages/selenium/webdriver/common/service.py", line 81, in start raise WebDriverException( selenium.common.exceptions.WebDriverException: Message: 'geckodriver' executable needs to be in PATH.
Sachant que le geckodriver est bien dans config/drivers/, et que voici le config.yaml :
sensor:
- platform: gazpar
username: ***
password: ***
webdriver: /config/drivers/geckodriver
tmpdir: /tmp
scan_interval: 01:00:0
Vois tu d’où ça pourrait venir ?
Envoyé de mon iPad
… Le 12 janv. 2021 à 09:54, ssenart ***@***.***> a écrit :
Ce n'est pas un problème de version car il n'arrive même pas à trouver le binaire. C'est peut-être un problème de droits.
Pour éliminer ce cas, peux-tu essayer la commande et relancer :
# chmod 777 /config/drivers/geckodriver
Cela donne tous les droits à tout le monde.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub, or unsubscribe.
|
Beta Was this translation helpful? Give feedback.
-
Ok, et même question sur le dossier parent /config/drivers. Mettre le maximum de droits pour tous. Aussi, arrives-tu à exécuter manuellement ce binaire via la console SSH ? |
Beta Was this translation helpful? Give feedback.
-
Oui, je lui ai mis 777 aussi dans le doute. Mais je n’arrive pas à l’exécuter depuis la console. Si je fais un ls - /config/drivers/ il me trouve bien le fichier geckodriver avec tous les droits. Mais si j’essaie de l’exécuter /config/drivers/geckodriver il me dit no such file or directory... or il est bien là ! ... |
Beta Was this translation helpful? Give feedback.
-
Ok, on y est ! Il y a une incohérence quelque part:
Ca ressemble à une corruption du système de fichier. J'imagine que tu es sur une carte SD, et c'est fréquent avec ce genre de support.
|
Beta Was this translation helpful? Give feedback.
-
Le problème ne vient pas de la carte SD. J'ai testé sur une nouvelle installation de HomeAssistant sur une carte SD neuve, toujours le même problème. J'ai exploré plusieurs pistes :
Merci encore pour ton aide :) |
Beta Was this translation helpful? Give feedback.
-
Je me suis installé un HassIO sur Raspberry Pi 3 avec l'image hassos_rpi3-64-5.10.img.xz. Cela vient que l'image embarque une version 64 bits de Alpine Linux (architecture aarch64) et que l'on essaie d'utiliser un binaire 32 bits du geckodriver (architecture arm7hf). Par contre, j'ai recompilé le geckodriver en aarch64. J'ai tout expliqué ici : https://github.com/ssenart/ha-custom_components/blob/master En suivant ces explications, j'ai réussi à récupérer mes données Gazpar dans HassIO. Il y a tout le détail pour que tu y arrives aussi. Tiens-moi au courant ! |
Beta Was this translation helpful? Give feedback.
-
Génial, ça fonctionne, merci infiniment pour tout le temps que tu as consacré à mon problème ! :) |
Beta Was this translation helpful? Give feedback.
-
Merci pour ton retour. Je suis content que ça fonctionne ! |
Beta Was this translation helpful? Give feedback.
-
Bonjour,
Est-il possible d'installer PyGazpar sur Home Assistant OS ?
J'ai bien vu comment installer le custom_components, mais il requiert (ce qui est logique) cette librairie PyGazpar.
Il est possible de l'installer facilement sous HomeAssistant OS ? Merci d'avance :)
Beta Was this translation helpful? Give feedback.
All reactions