essai ça stp:
FLUTTER_LINUX_RENDERER=software gecko
essai ça stp:
FLUTTER_LINUX_RENDERER=software gecko
Ça ouvre l’application gecko
Et j’ai ça dans la fenêtre du terminal !
Martial@mxLinuxLenovoMartial:~/Gecko
$ FLUTTER_LINUX_RENDERER=software gecko
** (fr.axiomteam.gecko.gecko:8077): WARNING **: 23:28:18.405: Using the software renderer. Not all features are supported. This is not recommended.
To switch back to the default renderer, unset the FLUTTER_LINUX_RENDERER environment variable.
** (fr.axiomteam.gecko.gecko:8077): WARNING **: 23:28:18.964: Timed out waiting for software frame of size 1484x855 (have 800x600)
Connected to websocket.
Initialising connection
L’application semble fonctionner correctement
à la fermeture d’autres lignes s’ajoutent dans le terminal.
embedder.cc (2603): 'FlutterEngineRemoveView' returned 'kInvalidArguments'. Remove view info was invalid. The implicit view cannot be removed.
** (fr.axiomteam.gecko.gecko:8316): WARNING **: 23:33:18.264: Attempted to set message handler on an FlBinaryMessenger without an engine
** (fr.axiomteam.gecko.gecko:8316): WARNING **: 23:33:18.264: Attempted to set message handler on an FlBinaryMessenger without an engine
** (fr.axiomteam.gecko.gecko:8316): WARNING **: 23:33:18.264: Attempted to set message handler on an FlBinaryMessenger without an engine
Martial@mxLinuxLenovoMartial:~/Gecko
On peut s’appeler demain si tu veux qu’on fasse des trucs en direct.
Peux installer cette version stp pour voir si elle fonctionne telle quelle ?
Oui ça fonctionne impeccable !
Merci !
Est-il possible d’avoir un lien github ou gitlab pour installer Gecko sur Android en utilisant Obtainium?
Il suffit de visiter le gitlab duniter: Releases · clients / Ğecko · GitLab
Visiblement non car le lien n’est pas reconnu par Obtainium n’étant pas un Github ou Gitlab. En tout cas sur mon appareil j’ai un message me disant “Aucune releases appropriées”. Les sources supportées sont listées ici.
Solution ci-dessous
![]()
Trouvé ! C’était simple mais avec une subtilité ![]()
Dans Obtainium, ajouter l’url clients / Ğecko · GitLab et juste en-dessous dans “Remplacer la source”, sélectionner “GitLab” et hop! ![]()
@Chiara07
Hello @poka,
En accompagnant Christian, un utilisateur non-voyant, et en poussant les tests plus loin avec un lecteur d’écran sur l’application mobile Gecko (Flutter), nous avons identifié plusieurs points de blocage majeurs concernant l’accessibilité.
Actuellement, la navigation vocale est très difficile car le lecteur d’écran répète souvent “Bouton, bouton, bouton” sans donner d’indications, ou associe mal les icônes à leurs textes.
Pour tester ou reproduire fidèlement l’expérience de Christian sur Gecko, voici la procédure standard pour activer le lecteur d’écran TalkBack sur Android, ainsi que la méthode spécifique pour naviguer et valider des actions.
Il existe deux méthodes principales pour lancer le lecteur d’écran :
Appuyez simultanément sur les boutons Volume + et Volume - pendant environ 3 secondes.
Note : Si c’est la première fois, une notification peut vous demander de confirmer l’activation du raccourci.
Allez dans les Paramètres du téléphone.
Faites défiler jusqu’à la section Accessibilité.
Appuyez sur TalkBack.
Activez l’option Utiliser TalkBack.
Une fois TalkBack activé, la gestuelle tactile habituelle du téléphone change complètement pour permettre aux utilisateurs non-voyants de contrôler l’interface sans la voir.
Balayer vers la gauche ou la droite (Swipe) : Permet de passer d’un élément à un autre (bouton, texte, image) . TalkBack va lire à haute voix chaque élément sélectionné . C’est ce geste qui a mis en lumière le bug des colonnes et l’effet “Bouton, bouton, bouton” sur Gecko .
Glisser un doigt sur l’écran : Vous pouvez aussi déplacer lentement votre doigt sur l’écran pour explorer ce qui s’y trouve en direct.
Le problème actuel sur Gecko : Si le focus de TalkBack se trouve sur le texte (ex: “Faire un virement”), le double-clic ne fonctionne pas car l’action cliquable n’est pas codée sur l’ensemble du bloc, mais uniquement sur le petit icône graphique situé au-dessus .
Voici le récapitulatif des problèmes constatés et les pistes d’amélioration pour le code.
De nombreuses icônes interactives n’ont pas de description textuelle sous-jacente. Le lecteur d’écran détecte un composant cliquable, mais ne peut pas dire ce qu’il fait.
Ajouter/Supprimer un contact : Le bouton change d’état visuel (noir si le contact existe pour le supprimer, transparent/blanc pour l’ajouter). Le lecteur d’écran doit annoncer dynamiquement cet état (ex: “Bouton : Ajouter aux contacts” ou “Bouton : Supprimer des contacts”).
Bouton Copier (à côté de la clé publique) : Annoncé comme “Bouton”. Il devrait annoncer : “Bouton : Copier la clé publique”.
Photo de profil / Bouton d’activité : Annoncé comme “Bouton” juste après la clé. Il s’agit du bouton pour voir l’activité/le profil. Il devrait annoncer : “Bouton : Voir l’activité du profil”.
Dates clés isolées : À un endroit, le lecteur lit simplement “7 janvier”. Sans contexte visuel, l’utilisateur ne sait pas à quoi cela correspond. Il faudrait que le lecteur lise : “Date de la prochaine certification disponible : 7 janvier”.
Sur l’écran des actions (ex: Faire un virement, Planifier la certification, Copier l’adresse), trois icônes sont placées côte à côte avec leurs textes respectifs en dessous.
Le bug constaté : Le lecteur d’écran lit d’abord toutes les icônes de la ligne, puis tous les textes de la ligne du dessous. L’utilisateur entend : “Bouton, Bouton, Bouton” puis “Faire un virement, Planifier la certification, Copier l’adresse”. Il est impossible de savoir quelle icône correspond à quel texte.
Zone de clic trop restreinte : Sur l’action “Faire un virement”, si l’utilisateur double-clique sur le texte, rien ne se passe. Il est obligé de trouver précisément l’icône située juste au-dessus pour déclencher l’action.
Pour résoudre l’ensemble de ces points, voici les leviers à utiliser dans le code Dart/Flutter de Gecko :
Semantics pour nommer les boutons et les étatsChaque bouton-icône doit être enveloppé dans un widget Semantics pour lui donner un nom clair et explicite :
Semantics( label: contactExiste ? 'Supprimer des contacts' : 'Ajouter aux contacts', button: true, child: IconButton( ... ), )
MergeSemanticsPour régler le problème des lignes et des colonnes, il faut regrouper chaque bloc “Icône + Texte” dans un widget MergeSemantics. De plus, pour que le texte soit lui aussi cliquable, il faut s’assurer que le détecteur de geste (GestureDetector ou InkWell) englobe tout le bloc (l’icône ET le texte), et pas seulement l’icône.
// En encapsulant chaque action ainsi, le lecteur lira l'ensemble d'un coup
// et l'utilisateur pourra cliquer n'importe où sur le bloc.
GestureDetector(
onTap: () => faireLeVirement(),
child: MergeSemantics(
child: Column(
children: [
Icon(Icons.send, semanticLabel: ""), // On vide le label de l'icône pour éviter les doublons
Text("Faire un virement"),
],
),
),
)
Prendre soin de l’accessibilité dès maintenant permettra à Gecko d’être une application exemplaire et véritablement inclusive pour toute la communauté de la monnaie libre.
Merci beaucoup pour votre écoute et votre aide sur ce sujet !
Salut @BulmAnanaBelle ,
Est-ce que tu veux que je t’accompagne pour pouvoir faire ça au travers de Claude Code ?
Je pense que c’est un bon exercice pour commencer ![]()
Toi ou d’autre hein.
La première étape, la plus fastidieuse, consiste à installer l’environnement de développement de Gecko sur votre PC.
Une fois que c’est fait, tout sera bien plus simple pour la suite.
Pour faire ça, vous avez 2 possibilités:
Je vous recommande l’option B.
contact at axiom-team.fr, sur candidature, l’asso pourra vous mettre a disposition un compte Claude Code Max x20.
Vous devez adhérer à l’asso pour pouvoir candidater à cet accès: Asso - axiom-team.fr
claude --dangerously-skip-permissionsFélicitation vous êtes prêt à contribuer à Gecko et à n’importe quoi à vrai dire.
La dernière étape est d’executer Gecko en mode debug sur votre machine, demandez à claude comment faire, mais une fois que tout est installé sur votre machine, en fonction de gotre système, remplacez “linux” par “windows” ou “macos”:
flutter run -d linux
Gecko s’ouvre en mode debug en mode desktop.
Si vous le voulez en mode mobile, il faudra juste installer et ouvrir un émulateur android avant, claude le fera pour vous.
Maintenant il suffit de demander à claude ce que vous voulez faire, de lui faire faire, et de tester si ça foncitonne comme vous l’espérer dans l’app debug.
Une fois que tout fonctionne comme vous le voulez, faites une MR à partir d’un fork de gecko (claude peut le faire pour vous si vous avez cloné le repo par ssh, ce que je vous recommande.
Une fois que vous avez digéré cette procédure, dites le moi et on se fait une visio, je vous aide ce sur quoi vous bloquez, tranquilement ![]()
PS: Je refuserais toute MR dont le code n’a pas été fait par Claude Opus 4.8 ou Fable 5, et signé comme tel dans les commits.