Livraison 1.7.{20,21} bêta sur G1-test? Build ARM

J’ai réussi a builder le paquet debian sur mon rpi4, il est dispo sur la page de téléchargement : https://git.duniter.org/nodes/typescript/duniter/-/tags/v1.7.21

EDIT: par contre impossible de lancer duniter, le paquet a du mal se builder :

$ duniter webstart
module.js:557
    throw err;
    ^

Error: Cannot find module 'wotb'
    at Function.Module._resolveFilename (module.js:555:15)
    at Function.Module._load (module.js:482:25)
    at Module.require (module.js:604:17)
    at require (internal/module.js:11:18)
    at Object.<anonymous> (/opt/duniter/app/lib/wot.js:15:14)
    at Module._compile (module.js:660:30)
    at Object.Module._extensions..js (module.js:671:10)
    at Module.load (module.js:573:32)
    at tryModuleLoad (module.js:513:12)
    at Function.Module._load (module.js:505:3)
1 Like

Oui, c’est simplement parce que tu n’as pas réussi à builder wotb, comme ce qui m’arrive depuis quelques releases. Le paquet deb est créé et l’erreur n’est pas vraiment mise en avant, mais elle est bien là et le paquet ne contient pas tout.

2 Likes

Et du coup tu avais résolu ça comment ?

Ben @cgeek avait fait une release wotb qu’il a publiée, et à partir de là ça fonctionnait. Je ne maîtrise pas les subtilités du packaging node, je suppose qu’il a buildé avec des versions plus récentes et qui compilaient, une fois le paquet dans le repository node ma compil n’avait qu’à le télécharger et ça passait.

Si le Raspi4 repose sur une nouvelle architecture alors oui, il faut que je republie un nouveau binaire précompilé.

1 Like

Oui c’est une architecture arm v8 :

https://www.raspberrypi.org/products/raspberry-pi-4-model-b/specifications/

Pareil, sur mon serveur en ARMv8, j’ai abandonné l’idée de compiler duniter depuis un moment à cause de problèmes de build. Pas le temps de mettre le nez dedans.

Oui, mais le problème que j’ai se pose sur mon bon vieux pi 3. :slight_smile: Ce qui veut dire qu’il faudrait soumettre un binaire de wot pour pi 3 aussi pour que je puisse faire la build. En fait, j’aimerais bien comprendre comment tu fais, toi, pour compiler et que ça passe lors de la publication du binaire, histoire de pas te pinger à chaque fois. :slight_smile:

1 Like

Ouais, moi j’ai tenté mais je suis vraiment trop une bille, il me manque plein d’infos et surtout de compétences. Je vous laisse faire, c’est mieux.

@cgeek a tu documenté cette procédure quelque part ? :slight_smile:
La tous est près pour déployer la 1.7.21 on attend plus que la release ARM et sans toi on est coincés :confused:

Je regarde demain.

J’ai suivi le tuto.
Pour résoudre le problème (TypeScript) :

sed -i "s/^npm install$/yarn/" release/arch/arm/build-arm.sh
sed -i "s/^npm install duniter-ui@1.7.x --save/yarn add duniter-ui@1.7.x/" release/arch/arm/build-arm.sh

Relancer le build. Apprécier.

Explication : pour le build ARM c’est la command npm install qui est utilisée, or Duniter ne bénéficie que du fichier yarn.lock pour figer les versions. Donc utiliser npm fait que l’on récupère une version plus récente de TypeScript qui n’est pas compatible avec le code actuel.

edit : cette procédure et le fix ci-dessus ont été exécutées sur un Raspi4. A priori la synchro fonctionne donc cela devrait débloquer la situation.

2 Likes

C’est là mon erreur, j’ai tout fait avec yarn sur mon rpi4, ok je referai avec npm ce WE :slight_smile:

cgeek, dis justement qu’il faut faire avec yarn.

2 Likes

Tu n’as pas fait d’erreur, c’est plutôt qu’il manque un fichier package-lock.json pour que le build ARM soit bon. Les commandes ci-dessus permettent de contourner le problème.

1 Like

Merci @cgeek cela a fonctionné, le paquet deb pour rpi4 est désormais pleinement fonctionnel :smiley:

@jytou peut tu réessayé sur rpi3 avec les commandes de cgeek ? Merci :slight_smile:

1 Like

Ça a compilé… reste à le tester un peu et zou. Je posterai dans la discussion de l’annonce de la release si ça fonctionne. :slight_smile:

2 Likes

La synchro se lance, mais à chaque fois mon raspi gtest a planté en cours de synchro, il ne répond carrément plus. Peut-être la carte SD qui commence à ne plus être trop en forme, il faudra que j’essaie avec une neuve. Du coup, j’hésite à publier, même si tout semble bien se passer…

@jytou ne publi pas sur la page des tag mais upload ton paquet quelque part que @Attilax puisse tester par exemple :slight_smile:

1 Like

En attendant mieux, je l’ai posé . @Attilax, si tu veux tester…