I want to open a pdf-viewer (okular) with different icons from the gnome-console.
Basically I want to differentiate between pdfs I am reading. Some would have the default okular icon, but I would like to have a different/special icon for the pdf generated by the LaTeX document I am editing.
Thinking about how to do this, I realized that I am not sure how gnome knows what icon to use when I execute /usr/bin/okular from the console. How is that bin related with an icon, no .desktop file involved right?
Applications set their icon at launch, to a compiled-in value. Most do it using the API of their graphics toolkit (Gtk provides various forms of the
gtk_window_set_iconAPI call), but it has its roots in an X Windows window-manager property that's as old as dirt — which is why, for example,okularstill has an application icon in Gnome Shell even though it's a KDE application.You can see a grayscale representation of the icon(s) an application is exporting if you type
xpropin a terminal, then click the application's window. (You need to have the correct utilities package installed, it's calledxorg-x11-utilsin Fedora.)The application icon doesn't depend on Gnome or on the
.desktopfile under any circumstances.(In fact, you could create your own
$HOME/.local/share/applications/okular.desktopfile that represented the application with a different icon, and launch it by clicking that icon, but it would be ignored in favor of the one that's compiled in to the application once it started. I have some custom launchers in my Favorites panel for different VNC sessions, using a different icon for each, but they all show up as TigerVNC with the standard icon when launched.)AFAIK the only way to do what you want would be to compile your own separate version of
okularwith the icon changed to something else. That's just not the way application icons were meant to be used, sorry.