Salut !
Le retour du froid m’a fait remettre en route mon Jeedom sur ma Debian 11 (nom de code Bullseye) et là horreur ! le module zwave n’est pas compatible Debian 11, encore pire ! Debian 11 n’est pas supporté par Jeedom
Pour la petite histoire j’ai récemment mis à jour mon serveur Debian de la version 10 vers la 11 : packages + distrib, aimant être sur des versions récentes et mon serveur n’a pas que Jeedom: serveur web, Elasticsearch, serveur multimedia, TV, retro gaming, … pas possible de réinstaller tout çà rapidement donc j’ai décidé de quand même essayer d’installer les parties manquantes sur Debian 11.
Niveau Jeedom « Core » l’installation reste simple sous Debian 11 et tourne correctement, vous trouverez des posts sur le forum pour cela.
Coté Zwave il faut savoir que le plugin est compatible Python 2 uniquement… (Python 2 en arrêt initialement prévu en 2015 mais s’est finalement poursuivi jusqu’en janvier 2020)
Sous Debian 11 python2 est encore présent mais le minimum du minimum, histoire de laisser tourner les quelques bouts de python2 qui doivent rester non encore migrés
Les étapes qui vont suivre sont vraiment du patching Debian « maison » pour installer ce qui manque
##############
ATTENTION :
- Je ne garanti pas que cela fonctionne sur toutes les Debian 11.
- Je ne peux être tenu responsable si vous cassez votre distribution.
- Il doit y avoir plus propre (je suis preneur) mais cela fait la job.
- Vous devrez aussi effectuer ces commandes en root.
##############
1/ Première étape la commande /usr/bin/python utilisée par Jeedom n’existe plus…
Il existe une commande python2 qui pointe vers un python2.7 et la commande python3 qui pointe vers python3.9 on va donc la rajouter :
ln -s /usr/bin/python2 /usr/bin/python
2/ Deuxième étape (et pas des moindre): le module Jeedom zwave a besoin de packages python non installés (cf. script d’installation du plugin zwave /var/www/html/plugins/openzwave/resources/install_apt.sh
):
Sauf que :
- ces packages (en python2) ne sont plus disponibles via la command Debian
apt
- les commandes Debian
pip
et pip3
(permettant d’installer des packages python) ne sont linkées qu’avec python3
- il semble y avoir un résidu de easy_install permettant d’installer des packages python mais je n’ai pas réussi à l’utiliser
On va donc partir sur une installation de pip sur le python2 uniquement :
wget https://bootstrap.pypa.io/pip/2.7/get-pip.py
python2 get-pip.py
# Check :
python2 -m pip --version
Je vais vous passer les problèmes de dépendances, versions, … grosso modo j’ai installé les packages de cette façon:
python2 -m pip install configparser
python2 -m pip install pyudev
python2 -m pip install serial
python2 -m pip install lxml
python2 -m pip install requests
python2 -m pip install louie==1.1
3/ Troisième étape: vu que la partie python a été taclée il nous suffit de modifier le script d’installation du plugin zwave.
Dans le fichier /var/www/html/plugins/openzwave/resources/install_apt.sh
J’ai commenté (avec un # en début de ligne) :
#apt_install git python-pip python-dev python-pyudev python-setuptools python-louie make build-essential libudev-dev g++ gcc python-lxml unzip libjpeg-dev python-serial python-requests
et j’ai rajouté en dessous uniquement ce qu’il nous faut :
apt_install git make build-essential libudev-dev g++ gcc unzip libjpeg-dev
J’ai aussi commenté (avec des #) dans ce même script les autres dépendances python qui ont déjà été installées via les commandes précédentes :
# pip_install wheel
# pip_install urwid
# pip_install louie
# pip_install six
# pip_install tornado
4/ Dernière étape:
on retourne sous Jeedom,
dans la configuration du plugin Zwave on clic sur le bouton « Relancer » de la partie installation.
Et magie ! Zwave est là et tourne comme sur des roulettes.
J’espère que cela en sauvera certains