Вопрос: Приложение Python не имеет иконки в Unity launcher


Я написал приложение Python (с pygtk и pymozembed), которое я использую очень часто.

В тире Unity мое приложение имеет значок (поскольку я .desktop файл). Но когда я начинаю, в пусковой установке нет иконки. Просто пустое отверстие.

Файл запуска: /home/witek/.local/share/applications/kadro-reader.desktop

[Desktop Entry]
Name=Google Reader
Comment=Open site with Kadro: reader -> https://www.google.com/reader/view/
Icon=/home/witek/.kadro/sites/reader/icon.png
Exec=/home/witek/.kadro/sites/reader/start.sh
Categories=Network;
Type=Application

Код Python для инициализации окна:

win = gtk.Window()
win.set_title("Google Reader")
win.set_icon_from_file("/home/witek/.kadro/sites/reader/icon.png")

Как добавить значок запуска Unity в мое приложение Python?


4
2017-12-06 13:42


Источник


Ваш значок - png или svg? Где вы его установили? Вы запустили gtk-update-icon-cache после установки значка? - Timo Kluck
Я редактировал свой вопрос, чтобы добавить свой конкретный пример. - Witek
Вы создаете веб-браузер? Потому что я хочу этого. - Ken Kinder
Я использую его для сайтов, таких как Facebook или Google, которые пытаются отслеживать меня. Таким образом, у меня есть определенный браузер для этих сайтов, и мой браузер по умолчанию не входит в эти службы. Вы можете скачать это здесь: github.com/witek/kadro/downloads - Witek


Ответы:


Я не думаю, что значок в .desktop файл имеет полный путь. Я думаю, что он берет имя значка и ищет этот значок в текущей теме значка.

Попробуйте поместить этот значок в ~/.icons/google-reader.png и в .desktop файл просто вставлен

Icon=google-reader

3
2017-12-08 21:07





У меня есть лучший ответ. Поскольку описанное решение добавляет приложение значка к панели Dash Unity, оно не может отображать значок на самом приложении в /usr/share/applications,

Вам нужно только добавить значок (с именем, объявленным в записи рабочего стола) в /usr/share/pixmaps/ каталог. Это каталог, в котором все приложения помещают свои значки. Таким образом вы получите отображение своего значка в Dash Unity и в приложении в папке приложений.

Кроме того, что текущий проверенный файл работает, он требует, чтобы вы создали новую папку в своем домашнем каталоге. Это не обязательно, если вы используете /usr/share/pixmaps каталог.


1
2018-02-16 01:18



Мое приложение создает пусковые установки (пользователем), которые являются специфичными для пользователя. Поэтому они должны быть в доме пользователей. Пользователь также не имеет прав на запись в / usr / share / pixmaps. - Witek