在带有 Gnome 的 Fedora 16/17 上,PNG 图像不显示为桌面图标

在带有 Gnome 的 Fedora 16/17 上,PNG 图像不显示为桌面图标

我尝试在 Fedora Gnome 中创建桌面图标,但我只为我的应用程序获得一个通用的二进制图标。安装 Gimp 或 OpenOffice 会神奇地出现我的图标。

我在 Fedora 上使用 Google Chrome 作为使用 png 图像制作桌面图标的参考。 Google Chrome 在 中使用 32 位 PNG 文件/usr/share/icons/hicolor/#x#/apps/google-chrome.png,其中#x#是各种分辨率:16x16、22x22、24x24、32x32、48x48、64x64、128x128 和 256x256。这些文件的权限是 all0644-rw-r--r--.谷歌在获得许可的情况下放置了他们的google-chrome.desktop文件。/usr/local/share/applications/0644

试图:

我复制了除 .desktop 文件的位置之外的所有这些条件:

  • my-app.desktop/usr/share/applications文件已获得许可放入0644
  • 所有 png 文件均保存为 32 位图像,并在/usr/share/icons/hicolor/#x#/apps获得许可的情况下正确定位0644
  • 我的桌面文件如下:

(我的应用程序.桌面)

[Desktop Entry]
Version=1.0
Name=My-App
GenericName=My Application
Comment=Test Application
Terminal=false
Icon=my-app.png
Type=Application
Exec=/opt/my-app/my-app
MimeType=application/x-executable
Categories=Network


结果:

导航到/usr/share/applications我的 my-app.desktop 文件看起来像一个普通文件:
在此输入图像描述

在 Gnome 桌面菜单中,我的应用程序看起来像一个通用的二进制文件:
在此输入图像描述

安装 Gimp 或 OpenOffice 将使我的图标按预期显示,而无需修改文件my-app.desktop或 png 文件。

我尝试了以下不同的方法来解决该问题:

  • 更改Icon=my-app.pngIcon=my-appmy-app.desktop
  • 将 PNG 文件另存为 24 位

答案1

说什么~/.xsession-errors?它是否暗示验证会给出错误?

说什么desktop-file-validate

它应该这样说:

sm.desktop: error: (will be fatal in the future): value "sm.png" for key "Icon" in group "Desktop Entry" is an icon name with an extension, but there should be no extension as described in the Icon Theme Specification if the value is not an absolute path

编辑: 桌面文件看起来是固定的:

[Desktop Entry]
Version=1.0
Name=My-App
GenericName=My Application
Comment=Test Application
Terminal=false
Icon=my-app
Type=Application
Exec=/opt/my-app/my-app
MimeType=application/x-executable;
Categories=Network;

答案2

问题是“Terminal=false”行。这似乎触发了 GNOME 和 Unity 处理 .desktop 文件的错误。 KDE 不受此错误的影响。

我遇到了类似的问题,删除该行后我的图标正确显示。

这甚至影响到最近的桌面,至少 Ubuntu 17.04 和 Fedora Core 26 仍然受到这个错误的困扰。

相关内容