Open salami738 opened 4 years ago
Strange. There is one significant difference between "normal applications" (presuming that means "installed system wide via apt
") and AppImages that is that the desktop files, the files that define what icons and titles GNOME and other desktop should use, are stored in a user location.
I guess this one needs to be tested in a VM against some recent Ubuntu.
Does it work with other AppImages, or is it only Cura? Have you tested it with other AppImages?
This still seems to be an issue with Ubuntu 20.04. I see the same behavior with the Linphone AppImages: https://www.linphone.org/technical-corner/linphone
Confirm on
Linux 5.13.0-27-generic #29~20.04.1-Ubuntu SMP Fri Jan 14 00:32:30 UTC 2022 x86_64 x86_64 x86_64 GNU/Linux
GNOME Shell 3.36.9
But you still can add to favorites in Gnome applications overview menu (grid button at the bottom of the dash).
Yes, I can also add favorites from the grid, but those favorites seem to be only half functional, since they can be used to start a new window, but not to switch to the already running window.
This seems to be an issue an all the app-images I run, also including: charmtimetracker, ruqola
Linux 5.13.0-27-generic #29~20.04.1-Ubuntu SMP Fri Jan 14 00:32:30 UTC 2022 x86_64 x86_64 x86_64 GNU/Linux
GNOME Shell 3.36.9
It can be a problem of the application itself related to StartupWMClass. I just updated Joplin using AppImageLauncher and it works.
It seems all the apps I run with AppImageLauncher are Qt applications.
I have been seeing a similar issue with Logseq in Ubuntu 22.04 and it does relate to the desktop file either missing or having incorrectly set StartupWMClass
. The workaround is to modify the desktop file located in ~/.local/share/applications
folder.
For Logseq the value was set to undefined
so changed to:
Icon=appimagekit_ed9a76e1916136662c3567d0adcacb95_Logseq
-StartupWMClass=undefined
+StartupWMClass=Logseq
X-AppImage-Version=0.8.9
I also had a quick look at Cura and the key is missing entirely and not obvious what the correct value should be so used xprop
tool to find the value:
Run this command in terminal and click on open Cura application
$ xprop WM_CLASS
WM_CLASS(STRING) = "Ultimaker-Cura", "Ultimaker-Cura"
Add to the desktop file Desktop Entry
:
StartupWMClass=Ultimaker-Cura
The icon is replaced with a generic one after doing this which can be fixed by updating the Icon
path to an actual Cura icon, likely another bug.
Noticed this recently with AppImages on Ubuntu, too. Ideas welcome what the hell is wrong there...
Hello @TheAssassin. I was also having a similar problem with my appImage applications.
I had created a .desktop file for them. Their icon (which is specified in .desktop file) does show in application launcher in Ubuntu 22.04 but when I run the application, I was getting a generic icon on the ubuntu dock as well as top bar instead of the Icon I specified in the .desktop file. I also could not add it to favourites.
So as @cas-- specified I tried adding the StartupWMClass in the .desktop file which worked like a charm and all the prev issues were fixed. In order to find the StartupWMClass of your appimage, you need to follow these steps:
1. Open Gnome shell by hitting `Alt + F2`.
2. Then open looking glass by entering command `lg`.
3. On the window tab, You can find the `StartupWMClass` of your already running Appimage application.
Apparently StartupWMClass associates your running application with your .desktop file
Source: https://askubuntu.com/questions/1380516/custom-icon-not-displaying-for-appimage#answer-1380718
I see similar behavior with Evernote (closed) beta on Ubuntu 22.04. You can't add to favorites from the running icon but if you go to "Show Applications" you can add from there.
Problem is the other icon (black) also shows in running applications rather than adding the red dot by the green one.
I can start Cura (https://appimage.github.io/Cura/), and it runs fine. I see the icon of the running program on the left hand side in the ubuntu app launcher. On normal applications I can right-click to "add to favorites", so I can start the application again in the future without searching where it was installed. This is not possible with appimages started with the app image launcher, the option isn't there.
OS: Ubuntu 18.04.3