web-dev-qa-db-fra.com

Comment impliquer davantage de personnes dans l'amélioration de X.org pour Ubuntu?

Dans Ubuntu, X est l'une des pièces les plus critiques de la pile. En tant que tel, nous recevons une tonne de questions et de rapports de bogues à ce sujet, probablement environ 100 fois plus que nous avons de main-d'œuvre à gérer.

Canonical embauche des ingénieurs supplémentaires pour travailler sur X, ce qui aidera, mais il y a encore beaucoup de choses qui sortent du cadre de ce que Canonical peut faire, donc je pense qu'il est vraiment important d'avoir une communauté forte impliquée dans l'amélioration de X dans Ubuntu, en particulier autour de l'obtention de toutes ces quantités massives de rapports de bogues répondus, triés et (espérons-le) résolus.

Cependant, il est difficile de trouver des gens pour travailler sur X ou de convaincre les gens qu'il vaut la peine d'y investir leur temps. Comment proposeriez-vous d'encourager les gens à s'impliquer, qui ne penseraient pas autrement à travailler sur X?

18
Bryce

Eh bien, comme beaucoup de choses, il est facile et accessible aux gens de le découvrir. Donc, d'après ce dont je me souviens avec le triage des bogues à l'origine, il n'y avait pas beaucoup d'aide venant de la communauté. Puis, lorsque certaines pages wiki expliquant les processus réguliers de tri des bogues et certains jours de bogue ont impliqué beaucoup plus de membres de la communauté. De plus, si vous pouvez commencer une activité régulière pour la communauté et offrir de l'aide à ceux qui l'essaient, vous obtiendrez un certain intérêt.

Si vous avez besoin d'aide pour l'activité, vous pouvez m'envoyer un e-mail et de l'aide pour l'organiser.

Donc, ma réponse est de créer une page wiki avec des questions et des commandes pour obtenir de bonnes informations de triage des bogues pour impliquer les gens dans cela.

Pour le développement, c'est un gros problème. Les trucs Xorg et Kernel nécessitent des compétences de programmation de bas niveau pour la plupart des fonctionnalités de correction de bogues et d'implémentation. Vous devez donc cibler un groupe spécifique de programmeurs et les intéresser. Je n'ai pas de suggestions ici, sauf demander un peu et voir qui traîne dans # ubuntu-x et leur demander s'ils peuvent aider.

7
Shane Fagan

La raison pour laquelle X ne reçoit pas beaucoup de travail est qu'il nécessite une énorme quantité de connaissances sur le fonctionnement des GPU, de la mémoire, etc., ainsi qu'une familiarité avec la base de code X.org et dans une certaine mesure la programmation du noyau. Ce n'est pas une chose triviale d'entrer dans une perspective communautaire et ceux qui sont intéressés à travailler sur des pilotes X ou X le font probablement déjà. Il n'y a actuellement aucune motivation pour qu'un développeur travaille sur Xorg en dehors de son intérêt personnel.

Ce que la communauté possède, que les développeurs de X.org n'ont pas nécessairement, c'est l'accès à une grande variété de matériel. Avoir des gens qui sont prêts à passer du temps à écrire de "bons" rapports de bogues et à tester des pilotes et des parties de la pile Xorg avant une version va probablement aider les ingénieurs plus que tout.

Il existe actuellement un repo Xorg edgers que j'utilise pour tester les pilotes sur mon système stable. Il est assez facile de restaurer un seul package une fois les tests terminés. Cependant, la seule autre façon dont nous pouvons tester est de construire X vous-même ou d'installer le référentiel edgers qui se construit à partir de l'amont. Cela fait un remplacement en gros de X pour autant que je sache. Cela signifie que c'est une approche tout ou rien pour tester X.

Avoir un moyen d'avoir 2 versions de X (et de choisir assez facilement) celle que vous souhaitez utiliser permettrait aux testeurs non seulement de tester X, mais de revenir ensuite à un Xorg fonctionnel afin de pouvoir soumettre le rapport de bogue.

12
user543

Parlant en tant que développeur intéressé par X avec désinvolture, voici mes problèmes:

  1. Je n'ai accès qu'à une poignée de cartes graphiques et je soupçonne que la plupart des gens n'ont accès qu'à une seule. Je ne peux donc pas faire grand-chose pour la grande majorité des bugs, qui seront toujours sur "une autre carte".

  2. Contrairement à la plupart des packages, je ne peux pas créer trivialement un environnement de test pour une nouvelle version de pilote; les machines virtuelles ont leurs propres pilotes X.

  3. Je ne peux pas facilement mettre à jour le dernier pilote, le tester, puis revenir en arrière. Cela décourage l'expérimentation (parce que si quelque chose ne va pas, je pourrais aussi bien être maçonné); cela entrave également les tests de régression.

  4. La dernière fois que j'ai regardé, appliquer un correctif avec succès, compiler et exécuter X était difficile à faire, j'ai parcouru le gestionnaire de paquets, exigé que les modules du noyau soient également corrigés et était à peu près une étape irréversible.

  5. De nos jours, les pilotes X divisent leur code entre les pilotes du noyau, Mesa, udev (pour les paramètres et les valeurs par défaut) et les pilotes utilisateur. Ce qui signifie que les patchs sont également divisés ...

Donc, je suppose que la réponse est de faire en sorte que les changements appliqués et annulés soient gérés par le gestionnaire de paquets et faciles à récupérer lorsqu'ils cassent votre système.

En outre, un système comme DKMS doit être examiné pour les pilotes X; si je pouvais facilement patcher/compiler/tester/désinstaller, disons, le pilote d'entrée de mon écran tactile sans avoir à reconstruire l'ensemble de l'engin monolithique (avec sa menace de rendre X complètement inutilisable), vous obtiendriez une contribution plus décontractée et me motiveriez à regardez les bogues de tri et les correctifs de test relatifs à ce morceau de matériel.

12
jbowtie

Pour compléter ce que jbowtie a dit, j'ajouterais qu'en tant que trieur de bogues, je trouve que les bogues X sont très difficiles à gérer, tout simplement parce que X est une bête très complexe. Cela se reflète dans la complexité de la page wiki de dépannage . Ce qui aiderait certainement, c'est une sorte de programme de mentorat pour les membres de BugSquad afin d'apprendre à mieux gérer les bogues X. Peut-être faire une journée de câlins autour de lui? Ou une session de formation pratique dans # ubuntu-class?

4
Bruno Girin

Il est difficile d'améliorer X.org lorsque de nombreux utilisateurs utilisent des pilotes propriétaires qui remplacent des parties de la pile graphique, puis se tournent vers l'équipe X.org lorsqu'une mise à niveau du noyau/X.org interrompt l'installation de leur pilote.

Une grande partie de la discussion sur "Je n'ai pas toutes les cartes disponibles" est également valable.

La programmation graphique est assez difficile si vous n'êtes pas un bon programmeur. Le débogage peut être une vraie douleur, surtout si vous ne pouvez pas voir ce qui se passe.

1
Broam