Python 应用程序在 Unity 启动器中没有图标

Python 应用程序在 Unity 启动器中没有图标

我已经编写了一个 Python 应用程序(使用 pygtk 和 pymozembed),我经常使用它。

在 Unity dash 中,我的应用程序有一个图标(正如我在文件中定义的.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")

如何向我的 Python 应用程序添加 Unity 启动器图标?

答案1

我不认为.desktop文件中的图标采用完整路径。我认为它采用图标的名称并在当前图标主题中搜索该图标。

尝试将该图标放在刚刚放入的文件~/.icons/google-reader.png.desktop

Icon=google-reader

答案2

我得到了一个我认为更好的答案。由于描述的解决方案将图标应用程序添加到 Dash Unity 面板,因此无法在应用程序本身上显示图标/usr/share/applications

您只需要在目录中添加图标(使用在桌面条目中声明的名称)/usr/share/pixmaps/。这是所有应用程序放置其图标的目录。这样,您的图标就会显示在 Dash Unity 中以及应用程序文件夹中的应用程序上。

/usr/share/pixmaps除了当前检查的那个正在工作之外,它要求您在主目录中创建一个新文件夹。如果您使用该目录,则不需要这样做。

相关内容