Pages : 1
#1 Le 25/02/2018, à 05:01
- Compte anonymisé
Argonauta, extension pour GNOME Shell.
https://extensions.gnome.org/extension/1395/files-view/
Voici une extension qui affiche, avec le raccourci super+F, vos fichiers dans une vue semblable à celle des applications (celle qui est obtenue avec super+A).
Pas encore sur les dépôts de GNOME, elle attend vos retours : https://framagit.org/abakkk/Argonauta/issues
et en vidéo : https://peertube.mastodon.host/videos/w … 60d0c6d005
Dernière modification par abakkk (Le 23/08/2018, à 18:28)
#2 Le 25/02/2018, à 12:18
- Roschan
Re : Argonauta, extension pour GNOME Shell.
Assez semblable à ce que j'avais fait, j'ai pas testé la tienne mais je vais déjà te donner les retours basés sur mon "expérience" de développeur d'extension :
- Le nom n'est pas très explicite. Bon, c'est plus créatif que moi, mais pour lancer l'extension c'est pas très vendeur, ça exige que les gens retiennent le nom.
- Le readme est en français. Là encore pour lancer l'extension ça ne va pas t'aider.
- Toujours à propos du readme, tu dis qu'il y a un onglet pour les favoris, on ne le voit pas sur les screenshot (on en voit le bouton mais pas le contenu ni le comportement du clic droit)
- tu dis que ce sont des favoris spécifiques à l'extension, pourquoi ? (ça oblige à passer par l'extension quand on est dans nautilus et veut ses favoris de l'extension, et vice versa)
- "Ce n'est pas (encore) un gestionnaire de fichiers" -> en quoi ça devrait l'être ? K.I.S.S. n'est pas un vain proverbe, l'idée de parcourir ses dossiers dans une joli vue avec transparence et larges icônes, c'est rigolo, mais le système d'extension n'a pas été conçu pour reproduire des applications complètes : j'ai pas regardé le code mais fait attention à l'architecture de ton code, il faut t'assurer que ce soit facilement débuggable et modifiable, car à un moment donné, les développeurs de GS vont changer des trucs sans te prévenir et ça pétera tout.
Hors ligne
#3 Le 25/02/2018, à 15:11
- Compte anonymisé
Re : Argonauta, extension pour GNOME Shell.
Le nom n'est pas très explicite
J'ai choisi ce nom parce qu'après 10 jours de travail intensif dessus, "Files View" me sortait par les yeux. Quand on fait que manipuler des objets machinView et des variables fileMachin, on a envie d'un peu plus de poésie.
J'ai ouvert le dépôt cette nuit mais je compte bien traduire le readme. Sur Github je l'aurai fait directement en globish, ça aurai été plus simple. Et il est vrai que les captures d'écran sont pour certaines vieilles. La quatrième est celle de la version actuelle. Je mettrai tout ça bien comme il faut avant de la soumettre à extensions.gnome.org.
Assez semblable à ce que j'avais fait
Non ce n'est pas semblable. En tout cas pas plus que la vue "Applications" n'est semblable à un dash ou un bureau avec ses lanceurs. Après bien sûr dans le code ça fait appel aux même objets GFile, GFileInfo etc.
tu dis que ce sont des favoris spécifiques à l'extension, pourquoi ?
D'une ça demande d'écrire sur le système de signets car si les favoris ne sont pas dynamiques, je pense que ça perd un peu de son intérêt. Et c'est pas anodin, ça demande une vue parfaitement synchronisée avec le système de signets , ce qui n'est pas le cas, et une couche de sécurité dans le code. Actuellement si il y a un problème, ça affecte uniquement la clé gsetting de l'extension, c'est pas bien grave.
Les contextes d'usages entre l'extension et Nautilus sont très différents. A partir de là, c'est plutôt cohérent d'avoir des favoris différents. Dans Nautilus j'utilise surtout des dossiers de travail qui restent ouvert.
""Ce n'est pas (encore) un gestionnaire de fichiers" -> en quoi ça devrait l'être ?"
Pour être un gestionnaire de fichier, il faudrait rajouter les fonctionnalités "dupliquer", "déplacer" , "supprimer" et "renommer". ça demande beaucoup de travail, pour des raisons évidentes de fiabilité. On revient aux problèmes de synchronisation. Je ne sais pas si c'est faisable. Dans tout les cas je privilégie la simplicité et la pertinence à l'usage, pas la course aux fonctionnalités. Par exemple j'ai bien failli virer la vue des fichiers récents car ça ralentissait fortement l'extension partout ailleurs et du coup elle perdait de son intérêt. Autre exemple, je ne vais pas proposer une nouvelle recherche de fichiers, mais laisser celle de Gnome Shell bien que défaillante. Je veux juste qu'elle s'intègre parfaitement dans l'environnement, avec le minimum de fonctionnalités nécessaires pour me passer de Nautilus dans un cas d'utilisation très bref (quelques secondes).
Je dois bien avouer que le drag'n drop déjà implémenté dans la vue "Applications" me fait de l’œil. Juste pour la beauté de la chose. A tester.
Pour ce qui est du code, je suis parti de appDisplay.js, j'ai rajouter mes trucs et puis j'ai élagué. Le fonctionnement de l'extension est assez simple à comprendre : displayManager --> filesDisplay --> AllView||RecentView||FavoriteView --> fileIcon --> fileIconMenu.
Comme ça reprend appDisplay, et que les devs de Gnome ne changeront plus trop ce fichier à ce stade de développement, je pense être assez tranquille. Par contre je ne suis pas du tout sûr de moi sur ce qu'il faut mettre dans le disable().
Merci à toi Roschan pour tes remarques.
#4 Le 25/02/2018, à 15:47
- Roschan
Re : Argonauta, extension pour GNOME Shell.
Roschan a écrit :Assez semblable à ce que j'avais fait
Non ce n'est pas semblable. En tout cas pas plus que la vue "Applications" n'est semblable à un dash ou un bureau avec ses lanceurs. Après bien sûr dans le code ça fait appel aux même objets GFile, GFileInfo etc.
J'ai littéralement une extension qui propose des signets, des fichiers récents, et même si ce n'est plus inclus dans le code de mon github, une gestion des fichiers. Alors certes, depuis les versions récentes, c'est sur le bureau plutôt que dans une vue à part (en décembre ça ressemblait à ça https://twitter.com/Maoschanz/status/947131801029562368 j'ai abandonné l'idée parce que c'était chiant de devoir ouvrir cette vue à chaque fois que je voulais faire un test), mais si c'est bien semblable.
D'où ma question :
Roschan a écrit :tu dis que ce sont des favoris spécifiques à l'extension, pourquoi ?
D'une ça demande d'écrire sur le système de signets car si les favoris ne sont pas dynamiques, je pense que ça perd un peu de son intérêt. Et c'est pas anodin, ça demande une vue parfaitement synchronisée avec le système de signets , ce qui n'est pas le cas, et une couche de sécurité dans le code. Actuellement si il y a un problème, ça affecte uniquement la clé gsetting de l'extension, c'est pas bien grave.
Les contextes d'usages entre l'extension et Nautilus sont très différents. A partir de là, c'est plutôt cohérent d'avoir des favoris différents. Dans Nautilus j'utilise surtout des dossiers de travail qui restent ouvert.
Tu peux trouver des exemples de signaux correspondant à un changement dynamique des signets dans le code d'appDisplay de l'extension "Places Status Indicator", ça n'est pas particulièrement compliqué à mettre en place, et si les développeurs de GNOME jugent ça fiable, tu devrais pouvoir aussi, non ?
Roschan a écrit :""Ce n'est pas (encore) un gestionnaire de fichiers" -> en quoi ça devrait l'être ?"
Pour être un gestionnaire de fichier, il faudrait rajouter les fonctionnalités "dupliquer", "déplacer" , "supprimer" et "renommer". ça demande beaucoup de travail, pour des raisons évidentes de fiabilité. On revient aux problèmes de synchronisation. Je ne sais pas si c'est faisable. Dans tout les cas je privilégie la simplicité et la pertinence à l'usage, pas la course aux fonctionnalités. Par exemple j'ai bien failli virer la vue des fichiers récents car ça ralentissait fortement l'extension partout ailleurs et du coup elle perdait de son intérêt. Autre exemple, je ne vais pas proposer une nouvelle recherche de fichiers, mais laisser celle de Gnome Shell bien que défaillante. Je veux juste qu'elle s'intègre parfaitement dans l'environnement, avec le minimum de fonctionnalités nécessaires pour me passer de Nautilus dans un cas d'utilisation très bref (quelques secondes).
Je dois bien avouer que le drag'n drop déjà implémenté dans la vue "Applications" me fait de l’œil. Juste pour la beauté de la chose. A tester.
Je ne t'ai pas demandé en quoi ça ne l'est pas, mais en quoi ça devrait l'être : niveau "pertinence à l'usage", un gestionnaire de fichiers, j'en ai déjà un, et je ne pense pas pertinent d'impacter la performance globale de GS en y ajoutant un deuxième, ou du moins pas un 2ème gestionnaire complet : si ça peut ouvrir, exécuter, voir copier/coller les fichiers c'est génial mais si ce serait dommage que la maintenabilité, la fiabilité et les performances globales soient impactées parce que tu veux presque toutes les fonctionnalités d'un gestionnaire de fichiers.
Le déplacement/copie/etc. peut se faire via dbus et nautilus, ce qui n'est pas évident à accomplir mais est théoriquement faisable, je te suggère d'attendre que les développeurs de l'extension officielle pour fournir un bureau sur GS 3.28 aient fini leur truc.
Par contre je ne suis pas du tout sûr de moi sur ce qu'il faut mettre dans le disable().
Soit tu construis les objets dans le init() et ton enable() est un simple ajout à l'interface, auquel cas il faut juste retirer les acteurs, soit tu construis dans le enable() et il faut donc détruire les acteurs dans le disable(), ce qui est généralement pas trop compliqué si tes classes ont des destroy() corrects.
Dernière modification par Roschan (Le 25/02/2018, à 16:20)
Hors ligne
#5 Le 25/02/2018, à 20:58
- Compte anonymisé
Re : Argonauta, extension pour GNOME Shell.
Je ne connaissais que la version desktop de ton extension dont tu parlais sur le topic de bionic. Je suis parti de l'extension Sticky Notes View pour comprendre comment afficher une vue.
Tu peux trouver des exemples de signaux correspondant à un changement dynamique des signets dans le code d'appDisplay de l'extension "Places Status Indicator", ça n'est pas particulièrement compliqué à mettre en place, et si les développeurs de GNOME jugent ça fiable, tu devrais pouvoir aussi, non ?
Je dis pas que c'est pas faisable. Mais c'est pas faisable par moi aujourd'hui. J'ai pas encore approfondi les signaux. L'utilisation que j'en fais est encore très basique, à la limite du copier/coller. J'apprends.
si ça peut ouvrir, exécuter, voir copier/coller les fichiers c'est génial mais si ce serait dommage que la maintenabilité, la fiabilité et les performances globales soient impactées parce que tu veux presque toutes les fonctionnalités d'un gestionnaire de fichiers.
On est bien d'accord. Je ne cherche pas à remplacer Nautilus. Je n'ai pas étudié les possibilités pour manipuler le système de fichiers mais si c'est lourd et compliqué, je ne le ferai pas.
#6 Le 25/02/2018, à 22:31
- Roschan
Re : Argonauta, extension pour GNOME Shell.
Je ne connaissais que la version desktop
Normal, j'ai jamais mis en ligne la version des screenshots ci-dessus, mais bon ça reste quasi le même code, je comptais en fusionner les 2 codes et proposer une option pour décider où ça s'afficherait.
J'ai enfin installé et testé ton extension, j'ai quelques remarques :
- contrairement à ce qu'en affirme la 1ère ligne, tu peux totalement éditer metadata.json, c'est même très conseillé si tu veux déclarer supporter plusieurs versions de GS simultanément
- le design de l'interface des préférences laisse un peu à désirer c'est pas la partie la plus importante mais bon
- les noms des classes... euh... ça se voit que tu apprends en faisant des copiés-collés "allviewbis" etc. c'est pas génial, ça décrit au final assez mal ce que ça représente
- je vois qu'on peut mettre des fichiers en favori, t'as anticipé la prochaine mise à jour de Nautilus ? bon du coup si les favoris c'est dossiers ET fichiers, je comprends mieux pourquoi tu n'as pas utilisé ceux de Nautilus, le concept est cool
Et surtout :
- Un bouton dans le panneau supérieur pour ouvrir à la souris, ce ne serait pas absurde, car si je n'avais pas lu les préférences avant de l'activer, j'aurais pas su comment l'ouvrir
----
Au final à part quelques finitions, c'est bien fait et ça a l'air plutôt solide (le disable a l'air de fonctionner très bien)
Dernière modification par Roschan (Le 25/02/2018, à 22:34)
Hors ligne
#7 Le 25/02/2018, à 23:51
- Compte anonymisé
Re : Argonauta, extension pour GNOME Shell.
Je pensais rajouter un bouton, mais en optionnel. Du coup ça ne résout pas le problème de la personne qui n'a pas bien lu présentation de l'extension.
ça me fait penser que je pourrais aussi utiliser un "coin d'écran actif", si c'est possible.
Effectivement, l'interface des préférence est minimale, je vais rajouter un à propos.
Pour les favoris. En effet j'avais pas d'obstacle technique à mettre des dossiers alors pourquoi s'en priver ? Par contre quand on commence à ouvrir un dossier dans les favoris, c'est assez déconcertant car le dossier s'ouvre dans "l'onglet du milieu" mais on ne s'en rend pas compte car il n'y pas d'animation qui fasse ressentir un déplacement horizontal et les boutons de contrôle ne changent presque pas.
#8 Le 25/02/2018, à 23:57
- Compte anonymisé
Re : Argonauta, extension pour GNOME Shell.
les noms des classes... euh... ça se voit que tu apprends en faisant des copiés-collés wink "allviewbis" etc. c'est pas génial, ça décrit au final assez mal ce que ça représente
Il y a 24h il y avait encore les noms d'origine (appDisplay, FrequentView ...)
Je ne suis pas du tout programmeur de formation alors je bricole.
Entre le Javascript ancienne version, Gjs et GObject, et le javascript moderne d'ECMAScript, je m'y perd pas mal sur les syntaxes pour les objets. Dans ce cas là le copier-coller est une valeur sûre, sans que cela m’empêche de comprendre ce que je fais par ailleurs.
Dernière modification par abakkk (Le 26/02/2018, à 00:21)
#9 Le 26/02/2018, à 01:18
- Roschan
Re : Argonauta, extension pour GNOME Shell.
- contrairement à ce qu'en affirme la 1ère ligne, tu peux totalement éditer metadata.json, c'est même très conseillé si tu veux déclarer supporter plusieurs versions de GS simultanément
Ah en fait après revérification ce n'est même pas écrit dans le tien ?! D'habitude il y a une ligne "do not edit"...
Si tu veux écrire un à propos, c'est selon moi une bonne idée est de le faire en te basant sur les infos de metadata.json (genre ce qu'il y a en bas de ça https://github.com/Maestroschan/emoji-s … r/prefs.js ) auquel cas n'oublie pas de rajouter aussi l'URL de ton framagit dans le fichier metadata pour pouvoir proposer un lien direct à la fois dans le "à propos" et sur la page web de l'extension (les infos qui s'affichent sur extensions.gnome.org viendront de metadata.json)
Et toutes les classes qui sont dans le 2ème fichier (filetruc.js) il faut théoriquement les déclarer avec var, pas avec const
Dernière modification par Roschan (Le 27/02/2018, à 03:12)
Hors ligne
#10 Le 10/03/2018, à 18:30
- Compte anonymisé
Re : Argonauta, extension pour GNOME Shell.
Merci pour tes conseils.
Ça se passe comment pour extensions.gnome.org ? Il leur faut combien de temps ?
A chaque nouvelle version il leur faudra autant de temps ?
Je peux leur soumettre une nouvelle version alors que la première est en attente ou ça risque de les froisser ?
#11 Le 10/03/2018, à 18:58
- Roschan
Re : Argonauta, extension pour GNOME Shell.
Ça se passe comment pour extensions.gnome.org ? Il leur faut combien de temps ?
Jusqu'à l'année dernière, ils étaient assez réactifs, mais depuis décembre la personne qui faisait ça semble avoir arrêté, et la nouvelle personne qui s'en occupe depuis février m'a dit qu'il n'était encore assez sûr de son expertise pour valider les extensions "100% nouvelles" pour le moment.
Donc je ne sais pas du tout quand est-ce que ce sera validé, mais je pense que ça bougera avant la sortie de 3.28 (espérons-le).
----
Aussi, j'en profite pour te recopier ce que le nouveau "reviewer" m'avait écrit :
the review isn't a full code review. It's basically to make sure that:
- The extension leaves the shell in the same state that it was found in (handlers are destroyed etc)
- It's not shoving user data to a random data mining source
- It's not behaving like malware etc
- It's not trying to be a 'program' (ie: it should simply be a GTK app instead)
Bon, le 2ème et le 3ème, je pense qu'ya pas de souci le 1er c'est technique (restaurer l'interface, retirer les timeout, déconnecter les signaux, ...) j'ai pas été vérifier ce que tu fais mais en activant/désactivant ton extension il n'y avait aucun problème visible, et le 4ème je l'avais déjà lu quelque part : c'était l'origine de mes remarques de l'autre jour, mais je ne sais pas du tout quels sont les critères qui déterminent la limite à ne pas dépasser (bon, ils sont civilisés, ils feront ptêt une remarque mais je ne pense pas qu'ils t'enverraient bouler pour ça non plus).
A chaque nouvelle version il leur faudra autant de temps ?
Mes vieilles extensions où j'ai fais des mises à jour "mineures" ont été validées fin février : si ce n'est pas trop gros, ils comparent juste les changements (sur leur site on voit les +/- en vert/rouge comme avec git) donc c'est théoriquement assez régulier (environ une à 2 semaines).
Je peux leur soumettre une nouvelle version alors que la première est en attente ou ça risque de les froisser ?
Non ça ne va pas les froisser, seules les différences entre les versions seront revues, ça ne leur duplique pas leur travail.
(Bon, évite quand même de les spammer avec 20 versions, typiquement je pense que le développeur de "Time++" est en train de les faire chier https://extensions.gnome.org/review/ )
Dernière modification par Roschan (Le 10/03/2018, à 19:17)
Hors ligne
#12 Le 10/03/2018, à 19:20
- Compte anonymisé
Re : Argonauta, extension pour GNOME Shell.
merci pour le lien ! Je ne connaissais pas l'existence de cette page.
#13 Le 12/04/2018, à 19:02
- Compte anonymisé
Re : Argonauta, extension pour GNOME Shell.
J'ai sorti une nouvelle version.
#14 Le 22/08/2018, à 00:20
- bishop
Re : Argonauta, extension pour GNOME Shell.
Salut abakkk
Je viens d'installer ton extension. Pour l'instant je ne rencontre pas de problème particulier et si ça se confirme je vais l'adopter.
Merci pour le travail.
La plus grande surprise que puisse faire un con c'est de faire une pause.
Hors ligne
#15 Le 23/08/2018, à 18:36
- Compte anonymisé
Re : Argonauta, extension pour GNOME Shell.
J'avais oublié de préciser qu'elle est maintenant disponible sur le dépôt d'extensions de Gnome (j'ai changé le lien), ce qui permet de bénéficier facilement des mises à jour éventuelles.
#16 Le 23/08/2018, à 22:59
- bishop
Re : Argonauta, extension pour GNOME Shell.
J'avais oublié de préciser qu'elle est maintenant disponible sur le dépôt d'extensions de Gnome (j'ai changé le lien), ce qui permet de bénéficier facilement des mises à jour éventuelles.
Merci pour l'info. J'ai désinstallé l'extension Argonauta puis installé Files View à partir de GNOME Extensions.
La plus grande surprise que puisse faire un con c'est de faire une pause.
Hors ligne
#17 Le 24/08/2018, à 00:20
- Roschan
Re : Argonauta, extension pour GNOME Shell.
ça revient au même non ? l'identifiant n'a pas changé on peut juste faire la mise à jour depuis le site et ça marche ?
Hors ligne
#18 Le 24/08/2018, à 00:45
- bishop
Re : Argonauta, extension pour GNOME Shell.
ça revient au même non ? l'identifiant n'a pas changé on peut juste faire la mise à jour depuis le site et ça marche ?
Je ne sais pas si on peut faire la mise à jour Argonauta vers Files View à partir de GNOME Extensions. Je n'ai pas regardé...
La plus grande surprise que puisse faire un con c'est de faire une pause.
Hors ligne
#19 Le 24/08/2018, à 01:10
- Roschan
Re : Argonauta, extension pour GNOME Shell.
Dans la section "Installed extensions" du site, mais c'est sans doute faisable depuis la logithèque si les bons paquets sont installés
Dernière modification par Roschan (Le 24/08/2018, à 01:10)
Hors ligne
#20 Le 02/09/2018, à 12:06
- Compte anonymisé
Re : Argonauta, extension pour GNOME Shell.
La version sur framagit et la version sur extensions.gnome.org ont un nom, mais aussi un identifiant et un schéma GSettings différents. L'avantage, pour moi ou ceux qui veulent contribuer, c'est qu'on peut avoir les deux installées, avec chacune ses préférences (sans les activer en même temps bien sûr).
#21 Le 12/09/2018, à 14:10
- rj45
Re : Argonauta, extension pour GNOME Shell.
bonjour j'ai adopter ton extensions merci pour ton travail
Hors ligne