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

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

Sim, mas se ele não contiver a opção StartupWMClass no ficheiro .desktop, dentro do container do AppImage, ele exibir-se-á com o ícone incorrectamente renderizado. Por isso, tens de criar manualmente o ficheiro .desktop no directório ~/.local/share/applications/ e copiar os ícones para ~/.local/share/icons/. Então executas update-desktop-database.

Testei o AppImage do Krita, o ficheiro .desktop renderiza correctamente o ícone, mas como não conseguiste instalar o pacote, preparar-te-ei um tutorial:

  1. Cria o novo directório no directório inicial, executando o comando no terminal:
mkdir -p ~/Aplicações/AppImage
  1. Move o AppImage do Krita para este directório e renomeia-o para Krita.AppImage;
  2. Executa no terminal:
chmod a+x ~/Aplicações/AppImage/Krita.AppImage
  1. Cria um novo ficheiro com a extensão .desktop (por exemplo, krita.desktop) no ~/.local/share/applications e copia no ficheiro:
[Desktop Entry]
Categories = Drawing; Graphics;
Comment = Krita is an open source professional drawing app for cartoon professionals
Comment[pt] = Krita é uma aplicação profissional open source de desenho para desenhistas de banda desenhada
Comment[pt_BR] = Krita é um aplicativo profissional open source de desenho para desenhistas de história em quadrinhos
Comment[pt_PT] = Krita é uma aplicação profissional open source de desenho para desenhistas de banda desenhada
Exec = $HOME/Aplicações/AppImage/Krita.AppImage
GenericName = Drawing editor
GenericName[pt] = Editor de desenho
GenericName[pt_BR] = Editor de desenho
GenericName[pt_PT] = Editor de desenho
Icon = krita
Keywords = cartoon; cartoonist; draw; drawing; krita; painting; wacom;
Keywords[pt] = banda desenhada; desenhar; desenhista; desenho; mesa digitalizadora; pintar; wacom;
Keywords[pt_BR] = desenhar; desenhista; desenho; história em quadrinhos; mesa digitalizadora; pintar; wacom;
Keywords[pt_PT] = banda desenhada; desenhar; desenhista; desenho; mesa digitalizadora; pintar; wacom;
Name = Krita
StartupWMClass = krita
Terminal = false
Type = Application
Version = 1.1
  1. Copia os ícones do Krita no ~/.local/share/icons/, executando no terminal:
mkdir -p ~/.local/share/icons/hicolor/512x512/apps
wget -nv -O ~/.local/share/icons/hicolor/512x512/apps/krita.svg https://upload.wikimedia.org/wikipedia/commons/3/31/Calligra_Krita_icon.svg
mkdir -p ~/.local/share/icons/hicolor/scalable/apps
wget -nv -O ~/.local/share/icons/hicolor/scalable/apps/krita.svg https://upload.wikimedia.org/wikipedia/commons/3/31/Calligra_Krita_icon.svg
1 curtida

Exatamente, todo AppImage é assim, você pode fazer a integração com o sistema como descrito no meu outro comentário,um jeito fácil de entender os AppImages são associar eles aos .apk do Android

2 curtidas

Cara, o AppImageD automatiza isso

2 curtidas

@Natanael.755

Depende do AppImage, alguns AppImages não contêm a opção StartupWMClass no ficheiro .desktop dentro do AppImage, vê como os ícones estão ausentes nalguns AppImages:

Outra desvantagem do AppImage é que, se pretendes utilizar o tema de ícones Papirus, os AppImages não renderizarão os ícones de Papirus, por isso, o ícone dos AppImage é fixamente codificado.

2 curtidas

@gusbemacbe, no caso dessas aplicações “GravitDesigner3.5.xx.AppImage” e “Joplin.AppImage”, para corrigir isso você teria que criar um arquivo.desktop (etapa 4 e 5) manualmente como ensinou acima?

Esse ícone nunca vai acompanhar o tema e vai depender do tamanho do arquivo pra ser exibido,nesse caso o gerenciador de arquivos está carregando um arquivo DENTRO do AppImage

Isso só acontece quando o tema de ícones não tem o ícone (nesse caso é feito um fallback pro tema HiColor) ou quando o ícone é codificado, mas nesse caso independente do método de empacotamento não vai ocorrer a combinação, a limitação não está no AppImage

1 curtida

Sim.

Compara o ícone de Krita no estilo de Papirus:

image

Utilizo o Papirus, vê como ficou o ícone do Krita:

1 curtida

Muito obrigado @gusbemacbe, não tem dúvida que seguindo o tutorial e fazendo uso do Ctrl+C e Ctrl+V das suas informações, vai funcionar, mas agora eu quero é tentar entender linha por linha da etapa 4 e 5 (vou deixar isso para amanhã, hoje já não estou mais conseguindo raciocinar e armazenar mais informação :rofl::joy::rofl:) e o que não entender irei reportar aqui para que você ou outro colega possa tentar me explicar.

Desde já agradeço a paciência e boa vontade de todos.

2 curtidas

Actualizei e melhorei o tutorial.

2 curtidas

O numix funciona :thinking: tem algo de errado

1 curtida

Oi, @Natanael.755

Acabei de testar, utilizando o tema de ícones Numix Square:

1 curtida

Que estranho aqui funciona tranquilo com o mesmo tema, ai eu já não sei o que falar man kkkkk