Como envolver mais pessoas na melhoria do X.org para Ubuntu? [fechadas]

18

No Ubuntu, o X é uma das partes mais críticas da pilha. Como tal, recebemos MUITAS perguntas e relatórios de erros, provavelmente cerca de 100 vezes mais do que temos mão de obra para lidar.

A Canonical está contratando engenheiros adicionais para trabalhar no X, o que ajudará, mas ainda existem muitas coisas que estão fora do escopo do que a Canonical pode fazer, então eu sinto que é realmente importante ter uma comunidade forte envolvida na melhoria do X no Ubuntu, particularmente em torno de obter todas essas quantidades maciças de relatórios de bugs respondidos, triados e (espero) resolvidos.

No entanto, é difícil encontrar pessoas para trabalhar no X ou convencer as pessoas de que vale a pena investir seu tempo nele. Como você sugeriria incentivar as pessoas a se envolverem, que de outra forma não estariam pensando em trabalhar no X?

Bryce
fonte
3
Eu sugeriria fazer desta uma entrada no Wiki da comunidade.
Marco Ceppi
Onde as pessoas que desejam começar podem ter uma entrada fácil para ajudar?
precisa saber é o seguinte
Pelo menos você não está pedindo como obter mais pessoas envolvidas com XFree86;)
Stefan Lasiewski
11
Temos vários documentos no wiki.ubuntu.com/X para ajudar as pessoas que querem ajudar no X. Abrange problemas básicos do X, descreve alguns dos processos de tratamento de erros do X e assim por diante. É um wiki, então sinta-se livre para adicioná-lo também.
Bryce

Respostas:

7

Bem, como tudo isso está tornando fácil e acessível as pessoas descobrirem sobre isso. Então, pelo que me lembro originalmente da triagem de bugs, não havia muita ajuda vinda da comunidade. Então, quando algumas páginas wiki explicando os processos regulares de triagem de bugs e alguns dias de bugs envolveram muito mais membros da comunidade. Além disso, se você puder iniciar uma atividade regular para a comunidade e oferecer ajuda àqueles que a experimentarem, terá algum interesse.

Se precisar de ajuda com a atividade, envie-me um e-mail e ajudarei na organização.

Portanto, minha resposta é criar uma página wiki com perguntas e comandos para obter boas informações de triagem de bugs para envolver as pessoas nisso.

Para o desenvolvimento é um grande problema. O material Xorg e Kernel requerem habilidades de programação de baixo nível para a maioria dos recursos de correção e implementação de erros. Então você precisa direcionar um grupo específico de programadores e interessá-los. Eu não tenho nenhuma sugestão aqui, exceto perguntar um pouco e ver quem fica no # ubuntu-x e perguntar se eles podem ajudar.

Shane Fagan
fonte
Não tem como objetivo implementar Wayland no futuro? Não seria melhor fazer as pessoas trabalharem nisso?
Ingo
12

O motivo pelo qual o X não recebe muito trabalho é que ele requer uma enorme quantidade de conhecimento sobre como as GPUs, a memória etc. funcionam, além de familiaridade com a base de código do X.org e, até certo ponto, com a programação do kernel. Não é algo trivial entrar e de uma perspectiva da comunidade aqueles que estão interessados ​​em trabalhar com drivers X ou X provavelmente já o estão fazendo. Atualmente, não há motivação para um desenvolvedor trabalhar no Xorg, além do interesse pessoal.

O que a comunidade possui e que os desenvolvedores do X.org não necessariamente têm é o acesso a uma ampla variedade de hardware. Ter pessoas dispostas a dedicar tempo a escrever 'bons' relatórios de erros e testar drivers e partes da pilha do Xorg antes do lançamento provavelmente ajudará os engenheiros mais do que qualquer coisa.

Atualmente, existe um repositório de editores Xorg que eu uso para testar drivers no meu sistema estável. É muito fácil reverter um único pacote depois de concluir o teste. No entanto, a única outra maneira de testar é construir o X você mesmo ou instalar o repositório edgers que é criado a partir do upstream. Isso faz uma substituição X por atacado, tanto quanto eu posso dizer. Isso significa que é uma abordagem tudo ou nada para testar o X.

Ter uma maneira de ter duas versões do X (e escolher com facilidade) qual você deseja usar permitiria que os testadores não testassem apenas o X, mas subseqüentemente retornassem ao Xorg em funcionamento para que pudessem enviar o relatório de erro.

user543
fonte
3
Na verdade, o que precisamos não é realmente mais relatórios de bugs (temos TONS), mas pessoas que passam por todos os relatórios que as pessoas enviaram para o Ubuntu, separam os bons dos maus e ajudam os usuários sempre que possível. Na verdade, temos poucos problemas para fazer com que muitas pessoas testem; muitos deles não sabem escrever relatórios de erros 'bons', mas com algum trabalho de triagem, eles podem ser aprimorados (e encaminhados a montante para trabalhos futuros). É
Bryce
11
Talvez devêssemos fazer um dia de abraços para o x-server?
precisa saber é o seguinte
12

Falando como desenvolvedor casualmente interessado em X, eis meus problemas:

  1. Eu só tenho acesso a um punhado de placas gráficas e suspeito que a maioria das pessoas só tenha acesso a uma. Portanto, não posso fazer muito pela grande maioria dos bugs, que sempre estarão em "alguma outra placa".

  2. Diferentemente da maioria dos pacotes, não posso criar trivialmente um ambiente de teste para uma nova versão de driver; máquinas virtuais têm seus próprios drivers X.

  3. Não consigo atualizar facilmente para o driver mais recente, testá-lo e depois reverter. Isso desencoraja a experimentação (porque se algo der errado, eu também poderia estar empedrada); também dificulta o teste de regressão.

  4. Da última vez que olhei, aplicar com êxito um patch, foi difícil fazer a compilação e execução do X, pisei em todo o gerenciador de pacotes, exigi que os módulos do kernel também fossem corrigidos e era praticamente uma etapa irreversível.

  5. Atualmente, os drivers X dividem seu código entre os drivers do kernel, Mesa, udev (para configurações e padrões) e do usuário. O que significa que os patches também são divididos ...

Portanto, acho que a resposta é tornar a aplicação e a reversão de alterações algo que é tratado pelo gerenciador de pacotes e fácil de recuperar quando ele quebra o sistema.

Além disso, um sistema como o DKMS deve ser procurado por drivers X; se eu pudesse consertar / compilar / testar / desinstalar facilmente, digamos, o driver de entrada da minha tela sensível ao toque sem precisar reconstruir toda a engenhoca monolítica (com a ameaça de tornar o X completamente inutilizável), você obteria uma contribuição mais casual e me motivaria a observe erros de triagem e teste de patches relacionados a esse pouco de hardware.

jbowtie
fonte
Eu acho que você está certo em relação a todos esses problemas que um voluntário em potencial pode pensar como razões para não trabalhar no X. No entanto, há muitas coisas que não exigem "abrir o capô" que uma pessoa poderia fazer para ajudar muito - rastreando bugs, respondendo a perguntas dos usuários, rastreando bons patches que valem a pena incluir no Ubuntu. Coisas que realmente não enfrentam esses problemas específicos.
Bryce
11
Eu tenho mais medo do X do que do kernel. Eu posso inicializar um kernel antigo facilmente.
maco 21/08/10
11
Eu nunca tenho medo: o Você pode configurar facilmente um ambiente de inicialização dupla, onde pode testar patches de kernel, bem como servidores Xorg instáveis. Nem precisa ser tão grande, já que você não precisa da maioria das ferramentas da GUI para simplificar, e enquanto compila, você pode estar em seu ambiente normal e se conectar com o sistema instável.
precisa saber é o seguinte
4

Para complementar o que jbowtie disse, eu acrescentaria que, como triager de bugs, acho X bugs muito difíceis de lidar, simplesmente porque X é uma besta muito complexa. Isso se reflete na complexidade da página wiki de solução de problemas . O que definitivamente ajudaria é um tipo de programa de orientação para os membros do BugSquad aprenderem a lidar melhor com os erros do X. Talvez um dia de abraço de inseto em torno dele? Ou uma sessão de treinamento prático na # ubuntu-classroom?

Bruno Girin
fonte
Um programa de orientação é realmente uma boa ideia. Nós conversamos sobre algumas idéias sobre isso, mas o desafio até agora tem sido encontrar pessoas dispostas a experimentá-lo.
Bryce
Eu fiz dois dias de abraço de bug para o X até agora. Dificilmente alguém apareceu para fazer triagem, e não ganhamos nenhum membro novo com isso.
Bryce
1

É difícil melhorar o X.org quando muitos usuários usam drivers proprietários que substituem partes da pilha de gráficos e consultam a equipe do X.org quando uma atualização do kernel / atualização do X.org interrompe a instalação do driver.

Muita conversa sobre "Não tenho todos os cartões disponíveis" também é válida.

A programação gráfica é bastante difícil se você não é um bom programador. A depuração pode ser uma verdadeira dor, especialmente se você não consegue ver o que está acontecendo.

Broam
fonte
Eu concordo com você sobre a dor dos drivers proprietários do ponto de vista do desenvolvedor. Mas no nível de distribuição do ubuntu, principalmente, estamos interessados ​​no empacotamento dos drivers, que é de código aberto e pode se beneficiar do envolvimento da comunidade para melhorá-lo.
Bryce
Ter uma variedade de placas gráficas parece ser importante, mas, na minha experiência até agora, é útil, mas não crítico. O que eu acho mais útil é ter 2 computadores - um para o seu uso diário regular que é mantido estável, e um segundo você pode quebrar X, depurar ssh em, etc.
Bryce