Como definir o ícone do aplicativo no arquivo .desktop de um aplicativo do Ubuntu Touch?

5

Estou aprendendo o SDK do Ubuntu e fiz um novo projeto HTML5 Touch UI com o Qt Creator.

A pasta do projeto tem um arquivo .desktop . Em seguida, adicionei um launcher.png à pasta do meu projeto.

Aqui está o meu arquivo .desktop :

[Desktop Entry]
Name=myapp
StartupNotify=true
Icon=/usr/share/myapp/launcher.png
MimeType=text/plain;
NoDisplay=true
Comment=something...
Exec=/usr/bin/qmlscene $@ /usr/share/myapp/diaspora-webclient.qml
Terminal=false
Type=Application
X-Ubuntu-Touch=true

Agora eu pressiono Ctrl + R para executar o aplicativo com qmlscene . O aplicativo é executado, mas launcher.png não é exibido como o ícone do aplicativo no Iniciador Unity.

Preciso executar um comando para atualizar as alterações? Ou preciso mover o launcher.png para /usr/share/myapp/launcher.png no código do aplicativo?

    
por Voidcode 15.08.2013 / 23:53

1 resposta

12

Há duas coisas erradas em como você está fazendo as coisas.

Todos os arquivos .desktop são destinados a aplicativos instalados, não para serem executados via Ctrl + R . Para instalar seu aplicativo, você precisa empacotá-lo e instalar o pacote. Você pode encontrar mais detalhes sobre como empacotar seu aplicativo e publicá-lo na Click App Store aqui .

Em segundo lugar, os caminhos que você tem no .desktop devem ser arquivos locais, não caminhos absolutos. Aqui está um exemplo de um arquivo .desktop :

[Desktop Entry]
Name=Tasks
Comment=Your tasks, every device, everywhere.
Exec=qmlscene $@ ubuntu-tasks.qml
Icon=ubuntu-tasks.png
Terminal=false
Type=Application
X-Ubuntu-Touch=true

Algumas coisas a serem observadas:

  • A linha Exec deve estar no formato qmlscene $@ <file.qml> , apenas com o nome do seu arquivo QML principal, sem informações de diretório.

  • A linha Icon deve estar na forma de Icon=<icon.png> , apenas com o nome do arquivo (incluindo a extensão), sem informações de diretório.

Agora, as informações fornecidas acima são para executar seu aplicativo em um dispositivo Ubuntu Touch, empacotando-o em um pacote do Click. Os pacotes de cliques são destinados ao Ubuntu Touch e atualmente não se integram à área de trabalho do Unity. Então, se você quer ser capaz de rodar seu aplicativo no Dash / Launcher e também ver seu ícone, você precisará fazer duas coisas:

  1. Copie seu arquivo .desktop para ~/.local/share/applications e use um caminho absoluto para seu ícone, em vez de apenas o nome do arquivo, como faria ao empacotar o aplicativo.

  2. Copie seu ícone para ~/.icons

por iBelieve 11.09.2013 / 03:19