Identifica pacote por janela?

5

Às vezes, encontro pequenos bugs em diálogos ou janelas. Por exemplo, eu encontrei um erro muito pequeno na caixa de diálogo de preferência de som. Eu pensei em informar isso, mas não era óbvio qual pacote fornece o diálogo.

Existe uma ferramenta simples para fazer isso? Eu imagino algo como xwininfo; você executaria o comando, o ponteiro do mouse mudaria e, quando você clicasse em uma janela, o comando retornaria o nome do pacote. Com esse comando, seria fácil expandi-lo para coletar informações de versão, distribuir e abrir o rastreador de bugs na página da direita.

Estamos acostumados a ter o Help > Relate um problema, mas como o Gnome Control Center não usa menus, essa opção não está disponível. Isso, é claro, seria verdadeiro para todas as janelas que não usam menus. Assim; Existe uma alternativa?

    
por Jo-Erlend Schinstad 18.01.2012 / 05:19

2 respostas

10

Abra um terminal ( ctrl - alt - t ) e digite

ubuntu-bug -w

uma mensagem será exibida, instruindo você a clicar em uma janela para registrar um relatório de erros sobre o aplicativo que possui essa janela.

A propósito, isso usa o apport, que coleta muitas informações úteis de depuração automaticamente e é a maneira preferida de relatar bugs do Ubuntu.

    
por roadmr 18.01.2012 / 05:31
8

A resposta do roadmr acima é de longe o melhor caminho a percorrer, mas eu queria ver se poderia criar um one-liner bash que reportasse o pacote fonte correto. É ainda mais complicado do que imaginei, já que aparentemente você não pode canalizar para dpkg ou which .

dpkg -S $(which $(xprop | grep "WM_CLASS(STRING)" | grep -o "\".*\"" | cut -d "," -f 1 | tr -d '""')) | cut -d ":" -f 1

Vamos descompactar isso um pouco. As coisas grep e cut estão simplesmente procurando e manipulando strings. As coisas interessantes são:

  • xprop - Permite que você descubra informações sobre a janela em que você clicou.

  • which - Retorna o caminho completo do comando usado. Exemplo:

    $ which  gnome-control-center
    /usr/bin/gnome-control-center
    
  • dpkg -S - Dado um arquivo, fornece o nome do pacote de origem de onde ele vem. Muito útil quando o nome binário e o nome do pacote fonte diferem. Exemplo:

    $ dpkg -S /usr/bin/orca
    gnome-orca: /usr/bin/orca
    
por andrewsomething 18.01.2012 / 06:15

Tags