Build Domoticz from source
Build Domoticz from source
Hello,
Avez-vous déjà compilé une ancienne release de Domoticz via la procédure officielle: https://www.domoticz.com/wiki/Build_Dom ... rom_source ?
Lien vers les release: https://github.com/domoticz/domoticz/releases/
Je bloque à l'étape For the first time, you need to checkout the source from GitHub onto your system: git clone https://github.com/domoticz/domoticz.git dev-domoticz , celle-ci install par défaut la dernière version stable,
J'aimerai compiler la release 2022.2 mais je ne sais pas quel lien github il faut utiliser ?
Je vous remercie d'avance
T.o.y.o
Avez-vous déjà compilé une ancienne release de Domoticz via la procédure officielle: https://www.domoticz.com/wiki/Build_Dom ... rom_source ?
Lien vers les release: https://github.com/domoticz/domoticz/releases/
Je bloque à l'étape For the first time, you need to checkout the source from GitHub onto your system: git clone https://github.com/domoticz/domoticz.git dev-domoticz , celle-ci install par défaut la dernière version stable,
J'aimerai compiler la release 2022.2 mais je ne sais pas quel lien github il faut utiliser ?
Je vous remercie d'avance
T.o.y.o
Re: Build Domoticz from source
Bonjour toyoco et bienvenu sur le forum
Je viens de déplacer ton sujet dans la section générale.
Tu as vraiment besoin de recompiler DomoticZ. Le retour à une version précédente n'est pas suffisante ?
Je viens de déplacer ton sujet dans la section générale.
Tu as vraiment besoin de recompiler DomoticZ. Le retour à une version précédente n'est pas suffisante ?
Comment bien utiliser le forum : Poser une question, Mettre un script, un fichier, une image ou des logs
Mes petits guides : Débuter en programmation, Le débogage, Le choix de matériel, Les sauvegardes
Ma présentation - Mes Tutos
Mes petits guides : Débuter en programmation, Le débogage, Le choix de matériel, Les sauvegardes
Ma présentation - Mes Tutos
Re: Build Domoticz from source
Bonjour Keros,
Oui j'aimerai compiler une ancienne version, le procédure "Build Domoticz from source" fonctionne sauf qu'elle compile forcément la dernière release ;-(
Je ne comprends pas comment faire un git d'une ancienne version avec ces sources : https://github.com/domoticz/domoticz/releases
Sinon, ou trouver les anciennes releases en format domoticz_linux_armv7l.tgz ? car dans les sources https://github.com/domoticz/domoticz/releases il manque l'exécutable "domoticz" !
Oui j'aimerai compiler une ancienne version, le procédure "Build Domoticz from source" fonctionne sauf qu'elle compile forcément la dernière release ;-(
Je ne comprends pas comment faire un git d'une ancienne version avec ces sources : https://github.com/domoticz/domoticz/releases
Sinon, ou trouver les anciennes releases en format domoticz_linux_armv7l.tgz ? car dans les sources https://github.com/domoticz/domoticz/releases il manque l'exécutable "domoticz" !
Re: Build Domoticz from source
Tu avais fait la moitié du chemin. Depuis la page des releases, en cliquant sur la 2022.2: https://github.com/domoticz/domoticz/re ... tag/2022.2
Je pense qu'on doit pouvoir utiliser le tag directement avec git, sinon il faut utiliser le SHA sur cette page :
Je pense qu'on doit pouvoir utiliser le tag directement avec git, sinon il faut utiliser le SHA sur cette page :
Code : Tout sélectionner
git clone https://github.com/domoticz/domoticz.git dev-domoticz
cd dev-domoticz
git reset --hard eea9db7Domoticz v2022.2 sur linux-mint / Z-Wave-JS / RFXCom / Zigbee2MQTT
Re: Build Domoticz from source
Merci, je viens de suivre la procédure
pi@raspberrypi:~/dev-domoticz $ git reset --hard eea9db7
HEAD is now at eea9db734 Merge pull request #5391 from domoticz/2022.2-dp
en effet avec le tag eea9db7 je cible la release 2022.2
Après ça , je ne sais pas comment continuer le build ?
Edit: je suis nul!!! sûrement avec
git pull
cmake -DCMAKE_BUILD_TYPE=Release CMakeLists.txt
make
je vais essayer ce de suite!
pi@raspberrypi:~/dev-domoticz $ git reset --hard eea9db7
HEAD is now at eea9db734 Merge pull request #5391 from domoticz/2022.2-dp
en effet avec le tag eea9db7 je cible la release 2022.2
Après ça , je ne sais pas comment continuer le build ?
Edit: je suis nul!!! sûrement avec
git pull
cmake -DCMAKE_BUILD_TYPE=Release CMakeLists.txt
make
je vais essayer ce de suite!
Re: Build Domoticz from source
oui, voilà, il faut suivre la procédure du wiki après le git pull.
La seule manip pour changer de version est de faire le `git reset` (ou `git checkout`) après le `git pull`.
Le pull récupère les données depuis github. Il est inutile après un clone qui fais la même chose en plus d'initialiser le dépôt.
Le reset permet de remplacer la copie locale par une version spécifique. Dans ce cas spécifique où il n'y a aucune modification locale, un checkout ou switch serait équivalent.
La seule manip pour changer de version est de faire le `git reset` (ou `git checkout`) après le `git pull`.
Le pull récupère les données depuis github. Il est inutile après un clone qui fais la même chose en plus d'initialiser le dépôt.
Le reset permet de remplacer la copie locale par une version spécifique. Dans ce cas spécifique où il n'y a aucune modification locale, un checkout ou switch serait équivalent.
Domoticz v2022.2 sur linux-mint / Z-Wave-JS / RFXCom / Zigbee2MQTT
Re: Build Domoticz from source
Mille merci !!! Ça fonctionne à merveille 
J'ai ensuite juste déplacé le dossier domoticz-dev vers home/pi/domoticz puis bingo!
Je suis vraiment une quiche en GitHub!
Plus qu'a mettre l'archive de coté, Au cas où
J'ai ensuite juste déplacé le dossier domoticz-dev vers home/pi/domoticz puis bingo!
Je suis vraiment une quiche en GitHub!
Plus qu'a mettre l'archive de coté, Au cas où
Re: Build Domoticz from source
Salut à toutes et tous.
@toyoco
Pour ma part, j'en était au même point git clone et compilation de la dernière version 2023.1 .
@ boum
Mon objectif est un peu différent, mais tout ça va m'être très utile.
Voilà, je suis depuis 2018 sur un raspi 1B+ passé en 3B cette année.
Avec Raspbian Jessie et domoticz 4.97 donc ma base sqlite a 5 ans d'historique et je désire la conserver.
D'après ce que je comprends, impossible de passer directement de 4.97 en 2023.1, il faut passer par toutes les versions intermédiaires, soit:
Version ____ Tag
4.9700 ____ 2772d9f
4.10659 ___ 785c6b1
4.10717 ____ be79a17
2020.1 _____ 63fa969
2020.2 ____ aad6500
2021.1 _____ 037a429
2022.1 ____ c952685
2022.2 ____ eea9db7
2023.1 ____ 79a3538
Donc compiler tous les Domoticz et migrer à chaque fois la base ... exact ?
Un détail, il est mentionné que compiler Domoticz sous Raspi est très long.
@toyoco
Quel RaspberryPi a été utilisé pour la compilation de la 2022.2 et combien de temps a-t-elle duré ?
On peut compiler Domoticz en ArmV7, Intel32bits ou Amd64 sur ces trois environnements, la base sqlite est-elle la même?
Et cette base est-elle interchangeable entre les trois environnements ?
Si je prends ma base sqlite 4.97 Jessie ArmV7 sur un PC Amd64 Bullseye, va-t-elle fonctionner ?
Je pourrai alors compiler tous les domoticz sur ce PC (plus rapide que sous RaspberryPi) jusqu'à 2023.1 et migrer à chaque fois la base.
Et enfin replacer cette base sur un raspberrypi 3B Raspbian Bullseye 32bit ...
À votre avis, je rêve ?
Sinon, GCC10 peut faire une compilation croisée (cross-compilation) pour Arm, à condition sûrement de savoir s'en servir ...
Est-il envisageable de cross-compiler pour Arm 32bits sur un PC Amd64 Bullseye ?
Et comment ?
Et encore merci @toyoco et @ boum.
Cordialement.
Rpx.
@toyoco
Histoire de rassurer, je pense qu' on doit être assez nombreux! D' ailleurs, à quelques jours près je posais la même question.Je suis vraiment une quiche en GitHub!
Pour ma part, j'en était au même point git clone et compilation de la dernière version 2023.1 .
@ boum
Grand merci @boum pour la commande git, le tag est sur chaque page de version ("release")Je pense qu'on doit pouvoir utiliser le tag directement avec git,
Mon objectif est un peu différent, mais tout ça va m'être très utile.
Voilà, je suis depuis 2018 sur un raspi 1B+ passé en 3B cette année.
Avec Raspbian Jessie et domoticz 4.97 donc ma base sqlite a 5 ans d'historique et je désire la conserver.
D'après ce que je comprends, impossible de passer directement de 4.97 en 2023.1, il faut passer par toutes les versions intermédiaires, soit:
Version ____ Tag
4.9700 ____ 2772d9f
4.10659 ___ 785c6b1
4.10717 ____ be79a17
2020.1 _____ 63fa969
2020.2 ____ aad6500
2021.1 _____ 037a429
2022.1 ____ c952685
2022.2 ____ eea9db7
2023.1 ____ 79a3538
Donc compiler tous les Domoticz et migrer à chaque fois la base ... exact ?
Un détail, il est mentionné que compiler Domoticz sous Raspi est très long.
@toyoco
Quel RaspberryPi a été utilisé pour la compilation de la 2022.2 et combien de temps a-t-elle duré ?
On peut compiler Domoticz en ArmV7, Intel32bits ou Amd64 sur ces trois environnements, la base sqlite est-elle la même?
Et cette base est-elle interchangeable entre les trois environnements ?
Si je prends ma base sqlite 4.97 Jessie ArmV7 sur un PC Amd64 Bullseye, va-t-elle fonctionner ?
Je pourrai alors compiler tous les domoticz sur ce PC (plus rapide que sous RaspberryPi) jusqu'à 2023.1 et migrer à chaque fois la base.
Et enfin replacer cette base sur un raspberrypi 3B Raspbian Bullseye 32bit ...
À votre avis, je rêve ?
Sinon, GCC10 peut faire une compilation croisée (cross-compilation) pour Arm, à condition sûrement de savoir s'en servir ...
Est-il envisageable de cross-compiler pour Arm 32bits sur un PC Amd64 Bullseye ?
Et comment ?
Et encore merci @toyoco et @ boum.
Cordialement.
Rpx.
Re: Build Domoticz from source
Avec plaisir. Pour git, on a basculé dessus au boulot, donc maintenant je maitrise. Le plus dur est d'expliquer avec le minimum de commandes pour que ça marche. C'est super facile d'arriver dans des situations tordues avec ce système de contrôle de sources.
À titre personnel, j'étais en 4.9700 pendant longtemps, et j'étais passé directement en 2020.2. J'essaie maintenant de mettre à jour une fois par an, mais pas à toutes les releases. (La suppression d'ozw va peut-être me faire passer en 2023.1 au lieu d'attendre un peu plus).
Je copie l'intégralité du répertoire de domoticz avant de tenter une mise à jour. Si ça carempouille, je rebascule sur l'ancienne version le temps de comprendre plutôt que de rester trop longtemps sans le service qui tourne. (En plus de la copie, je nettoie les anciennes copies de BDD, je targz et j'envoie sur le NAS comme dernière version connue qui marche.)
Donc ça se tente la mise à jour directe. Ou en quelques étapes si certaines difficultés sont connues. Surtout, faire une sauvegarde à chaque fois que tout marche.
Il est peut-être plus risqué de le faire en une seule fois, mais rien ne l'empêche. Au lancement de domoticz, l'application met à jour la base de données. Il part de la version sauvegardée et fait chaque étape de version de la BDD (dans CSQLHelper::OpenDatabase).Rpx a écrit : Avec Raspbian Jessie et domoticz 4.97 donc ma base sqlite a 5 ans d'historique et je désire la conserver.
D'après ce que je comprends, impossible de passer directement de 4.97 en 2023.1, il faut passer par toutes les versions intermédiaires
À titre personnel, j'étais en 4.9700 pendant longtemps, et j'étais passé directement en 2020.2. J'essaie maintenant de mettre à jour une fois par an, mais pas à toutes les releases. (La suppression d'ozw va peut-être me faire passer en 2023.1 au lieu d'attendre un peu plus).
Je copie l'intégralité du répertoire de domoticz avant de tenter une mise à jour. Si ça carempouille, je rebascule sur l'ancienne version le temps de comprendre plutôt que de rester trop longtemps sans le service qui tourne. (En plus de la copie, je nettoie les anciennes copies de BDD, je targz et j'envoie sur le NAS comme dernière version connue qui marche.)
Donc ça se tente la mise à jour directe. Ou en quelques étapes si certaines difficultés sont connues. Surtout, faire une sauvegarde à chaque fois que tout marche.
Domoticz v2022.2 sur linux-mint / Z-Wave-JS / RFXCom / Zigbee2MQTT
Re: Build Domoticz from source
Oula, peut être pas loin d'une heure il me semble (sur un PI 4, 4GB), uniquement pour l'exécutable de domoticz, j'ai laissé tourner le pc pour aller vaquer à d'autres occupations....@toyoco
Quel RaspberryPi a été utilisé pour la compilation de la 2022.2 et combien de temps a-t-elle duré ?
Personnellement j'ai migré de la release 2023 à 2021 en modifiant simplement la valeur de "DB_Version" (2021.1 -> 148).
Je n'ai pour le moment pas rencontré de problème particulier.
Bon courage pour ta migration.