Processos e lançadores .desktop (Identificação)

2

Eu tenho um aplicativo python que se comporta de duas maneiras diferentes. Quando iniciado sem argumentos, ele é executado em CONFIGMODE e mostra uma GUI de Configuração (pygtk). Quando iniciado com um argumento, ele é executado em APPMODE.

Então eu tenho dois Bash-Scripts ( configmode e appmode ) para começar. Um inicia meu aplicativo com argumentos, o outro sem. Para cada script, criei um arquivo .desktop em ~/.local/share/applications com ícones diferentes.

Mas, mesmo quando eu começo a appmode.desktop , o iniciador do Unity mostra o ícone de configmode.desktop .

Eu também uso Kupfer para iniciar aplicativos. E quando configmode já está em execução, o Kupfer também acha que appmode já está em execução.

Portanto, pergunto-me como Unity e Kupfer identificam qual arquivo .desktop usar?

Meu objetivo é ver o ícone do arquivo .desktop que usei para a inicialização no iniciador do Unity. Como posso conseguir isso?

    
por Witek 13.12.2011 / 12:00

2 respostas

2

O Unity usa o Framework de correspondência de aplicativos do BAMF . Eu não sei sobre Kupfer.

    
por Florian Diesch 13.12.2011 / 19:26
1

Acho que o problema pode não estar nos próprios arquivos da área de trabalho, mas em qualquer um dos itens a seguir:

  • .ui file: se você estiver usando um arquivo de interface do usuário, talvez tenha definido a propriedade icon_name para a janela principal. Nesse caso, eu diria que o ícone no arquivo .desktop não é usado.

  • pygtk code: Similarmente ao caso do arquivo .ui , você pode ter definido o ícone para a janela principal usando gtk.Window.set_icon_name , gtk.Window.set_default_icon_name ou similar.

Meu conselho é definir programaticamente o ícone para a janela principal quando o aplicativo é iniciado usando gtk.Window.set_icon_name ou gtk.Window.set_default_icon_name dependendo dos argumentos passados para o aplicativo.

    
por jcollado 21.12.2011 / 13:18