Como inserir o ícone de uma aplicação instalada via AppImage no menu de aplicações do Linux Mint 19.1 Cinnamon

Vamos pegar o Krita como exemplo:

Baixei a última versão do programa via terminal com o comando abaixo:

wget https://download.kde.org/stable/krita/4.2.0/krita-4.2.0-x86_64.appimage -O krita.appimage

Dei permissão de execução ao arquivo baixado com o comando abaixo:

chmod a+x krita.appimage

Movi o arquivo para o diretório “/usr/local/bin/” com o comando abaixo:

sudo mv krita.appimage /usr/local/bin/krita

No mesmo diretório acima criei um arquivo .desktop com as seguintes informações abaixo:

[Desktop Entry]
Type=Application
Categories=Graphics;
Name=Krita
Name[pt_BR]=Krita
Version=4.2
Comment[pt]=Crie e edite pinturas digitais
Exec=/usr/local/bin/krita
Icon=/usr/local/bin/krita.png

image

Porém não foi criado nenhum ícone no menu!

Imagem que gostaria de usar como ícone:

Krita

1 Curtida

Acho que você deveria usar o appimaged que integra o app no sistema

2 Curtidas

Onde baixar, como instalar e usar?

Será que é mais prático do que criar um arquivo .desktop?

Gostaria de saber o que está errado no processo que descrevi acima, se é algum parâmetro no arquivo .desktop, se é o diretório que coloquei os arquivos, tipo de imagem que usei para o ícone…

Mas se essa aplicação indicado por você for mais prático, prosseguimos com ela, afinal procuro o mais prático e funcional e pensei que o arquivo .desktop fosse o mais fácil…

1 Curtida

Como diz no site: "appimaged é um daemon opcional que observa locais como ~/bin e ~/Downloads para o AppImages e, se detectar algum, registra-os no sistema, para que apareçam no menu, exibam seus ícones, tipos MIME associados, etc. Ele também cancela o registro do AppImages de o sistema se eles forem excluídos.

Ae o link: https://github.com/AppImage/appimaged

Já que está no linux mint, use a versão .deb

1 Curtida

@Docmine7, seria só usar o comando “sudo dpkg -i appimaged_*.deb” no terminal?

image

Ou onde tem o “*” teria que usar o nome do arquivo baixado?

image

@D3XT3R

O correcto é deixar o caminho do ícone codificado suavemente sem extensão.
Esqueceste-te de executar o comando update-desktop-database para actualizar a lista de aplicações.

Preparei um pequeno tutorial de corrigir os ícones das aplicações do AppImage em português brasileiro para utilizadores do tema de ícones Suru++ 30. ESte tutorial vale para utilziadores de qualquer tema de ícones. Ei-lo:

WIki: Suru++ – Aplicativos do AppImage

1 Curtida

veja se esse post ajuda

https://forums.linuxmint.com/viewtopic.php?f=208&t=285623&p=1580201#p1580201

Realmente, analisando os atalhos criados pelo sistema, a linha “Icon=” contém apenas o nome da aplicação, em vez de um diretório e nome da imagem seguido da extensão. Como fazer isso?

Usei o comando e nada da aplicação aparecer listada no menu.

image

:laughing: Não amigo você deve executar esse comando na pasta aonde está o arquivo que você baixou, esse comando é só para instalar o arquivo .deb você pode instalar graficamente pelo gdebi também

2 Curtidas

Pela interface gráfica é só dar dois cliques no arquivo .deb e escolher a opção de instalar (ele vai pedir a sua senha então é só digitar a sua senha e esperar a instalação)

2 Curtidas

Fiz isso, não foi criado nenhuma entrada no menu para a aplicação “Appimaged”, digitei no terminal o nome appimaged na tentativa de abrir a aplicação, porém parece que rodou em segundo plano, a aplicação possui interface gráfica?
O único modo de executar é pelo terminal, para que dessa forma seja criada entradas no menu, para aplicações AppImage baixadas?
Toda vez que eu baixar uma nova aplicação em AppImage, terei que abrir o terminal e executar o comando appimaged ou será criado uma entrada no menu de forma automática?

image

Depois de executado o comando appimaged, foi criado a entrada da aplicação Krita no menu com seu respectivo ícone!

Appimaged ele não tem interface. Alem de exibir as aplicações no menu ele define como padrão para os arquivos salvos do krita por exemplo

2 Curtidas

@Docmine7, saberia responder essas minhas dúvidas?

1 Curtida

Você instala uma vez só, aqueles comandos que você executou são para fazer o appimaged funcionar, agora ele faz a integração automaticamente sem precisar do terminal.

Ele fica “observando” pastas como a Download para ver se tem novos appimages

2 Curtidas

@Docmine7, agora ficou claro como é o funcionamento do AppImaged , obrigado!
Por enquanto vou deixar o tópico em aberto, para ver se não aparece uma explicação/solução com a criação de um “arquivo.desktop”, caso contrário darei como resolvido a sua solução, que de uma forma ou de outra chegou no resultado final! :clap:

3 Curtidas

Os ícones do Krita ou de quaisquer aplicações precisam estar no directório ~/.local/share/icons/hicolor/[tamanho x tamanho]/apps/nome_da_aplicação.[qualquer formato]. No ficheiro .desktop, fica assim: Icon=nome_da_aplicação. Mas precisas incluir o StartupWMClass para renderizar correctamente o ícone. Basta abrir a aplicação, abre o terminal, executa o comando xprop WM_CLASS e calibra a janela da aplicação aberta, por exemplo, ao calibrar o Firefox, mostrou o resultado:

Copio Firefox Developer Edition, fica assim:

Icon=firefox_dev
StartupWMClass=Firefox Developer Edition

Apostei que tu guardaste o ficheiro .desktop do Krita no /usr/share/applications, que requer sudo update-desktop-database. Mas recomendo que guardes os ficheiros modificados no ~/.local/share/applications/, que não requer sudo. O teu sistema preferirá mais o directório ~/.local/share/applications, para não haver duplicados. Uma das vantagens desse directório que ele não será reescrito e sobrescrito quando fizeres actualização ou upgrade.

2 Curtidas

De onde você tirou a informação “Icon=firefox_dev” ?
A linha “StartupWMClass”, ficou claro de onde veio a informação e qual a necessidade!

Caso Firefox seja instalado via Debian, pacman, ou nativamente, os ícones do Firefox são enviados para /usr/share/hicolor/[tamanho x tamanho] || [scalable]/apps/firefox.[qualquer formato]. Caso seja via Flatpak, está no directório de ícones no directório do Flatpak, e via Snapcraft, a mesma coisa com o Flatpak.

Caso Firefox seja instalado localmente, como preparei um tutorial para @Zangief no Firefox atualizou e agora a interface não muda para pt-br (resolvido), os ícones não são enviados para aquele directório, por isso, tens de copiá-los para ~/.local/share/icons/, ou se tiveres um tema de ícones que vem com ícones disponíveis.

No AUR ou no directório /opt, os ficheiros das aplicações são enviados para ~/.loca/share/applications e os ícones são enviados para ~/.loca/share/icones.

@gusbemacbe, e no caso da aplicação (Krita - AppImage) deste tópico, ela não é instalada, é executada como uma espécie de contêiner que contém todos os arquivos (inclusive o ícone) e bibliotecas necessário para sua execução, correto?

Tem a solução aqui no grupo:

Fazer integração automática de AppImages

1 Curtida