Тот же исполняемый файл с разными значками

Я хочу открыть PDF-просмотрщик (okular) с различными значками из консоли gnome.

В основном я хочу различать pdfs Я читаю. У некоторых будет по умолчанию okular значок, но я хотел бы иметь другой / специальный значок для pdf генерируется LaTeX документ я редактирую.

Размышляя о том, как это сделать, я понял, что не знаю, как gnome знает, какую иконку использовать при выполнении /usr/bin/okular с консоли. Как эта корзина связана со значком, нет .desktop файл участвует правильно?

1 ответ

Решение

Приложения устанавливают свой значок при запуске на скомпилированное значение. Большинство делают это, используя API своего графического инструментария (Gtk предоставляет различные формы gtk_window_set_icon Вызов API), но у него есть корни в свойстве оконного менеджера X Windows, которое так же стара, как грязь - вот почему, например, okular в Gnome Shell по-прежнему есть значок приложения, хотя это приложение KDE.

Вы можете увидеть в градациях серого значки, которые приложение экспортирует, если вы наберете xprop в терминале, затем щелкните окно приложения. (Вам нужно установить правильный пакет утилит, он называется xorg-x11-utils в Fedora.)

Значок приложения не зависит от Gnome или от .desktop файл при любых обстоятельствах.

(На самом деле, вы можете создать свой собственный $HOME/.local/share/applications/okular.desktop файл, представляющий приложение с другим значком, и запустите его, нажав на этот значок, но он будет проигнорирован в пользу того, который был скомпилирован в приложение после его запуска. У меня есть несколько пользовательских модулей запуска в панели "Избранное" для разных сеансов VNC, для каждого из которых используется разные значки, но все они отображаются как TigerVNC со стандартным значком при запуске.)

AFAIK единственный способ сделать то, что вы хотите, это составить свою собственную отдельную версию okular с иконкой поменял на что то другое. Это просто не то, как иконки приложений должны были использоваться, извините.

Другие вопросы по тегам