.desktop 文件的自定义图标未出现

use*_*669 7 icons

我打算从 Windows 7 更改为 Ubuntu。

我想在 Ubuntu 上使用桌面上的一些图标。

我将这些图标转换为 *.png 64*64 像素并放入 /home/user/icons

然后我使用终端:

sudo gedit
Run Code Online (Sandbox Code Playgroud)

到:

[desktop entry]
Name=Account
Exec=/home/user/jameica/jameica.sh
Icon=/home/user/icons/ico_account.png
Terminal=false
Type=application
Run Code Online (Sandbox Code Playgroud)

我将此文件存储/usr/share/application在名称中account.desktop

桌面条目已创建,但没有使用所需的图标。

怎么了?

Jac*_*k M 9

截至 2018 年 7 月,Unity 在读取 .desktop 文件方面似乎存在一些错误。具体来说,为 Icon 字段提供的路径不能包含在引号中。即使路径包含空格,也不能用引号括起来。

另一方面,这里值得一提的是,为 Exec 字段提供的路径如果包含空格,则必须用引号括起来。如果它不包含空格,则可以省略引号。这种行为上的不一致非常令人困惑,应该真正被视为一个错误。

因此,以下是有效的 .desktop:

[Desktop Entry]
Name=Firefox Developer Edition
Comment=The developer edition of Firefox Quantum.
Exec="/home/jack/Applications/Firefox Developer Edition/firefox"
Icon=/home/jack/Applications/Firefox Developer Edition/browser/chrome/icons/default/default32.png
Terminal=false
Type=Application
Run Code Online (Sandbox Code Playgroud)

以下将运行,但不显示图标:

[Desktop Entry]
Name=Firefox Developer Edition
Comment=The developer edition of Firefox Quantum.
Exec="/home/jack/Applications/Firefox Developer Edition/firefox"
Icon="/home/jack/Applications/Firefox Developer Edition/browser/chrome/icons/default/default32.png"
Terminal=false
Type=Application
Run Code Online (Sandbox Code Playgroud)

以下甚至不会运行:

[Desktop Entry]
Name=Firefox Developer Edition
Comment=The developer edition of Firefox Quantum.
Exec=/home/jack/Applications/Firefox Developer Edition/firefox
Icon=/home/jack/Applications/Firefox Developer Edition/browser/chrome/icons/default/default32.png
Terminal=false
Type=Application
Run Code Online (Sandbox Code Playgroud)


Jac*_*ijm 7

您的桌面文件有一些问题:

[Desktop Entry]: 两者都应该大写(而不是[desktop entry]),

与:(Type=Application而不是Type=application)相同

由于这些错误,桌面文件既不能工作,也不能显示它的图标,但是:

请注意,有时,即使使用正确的桌面文件,您也不会在文件本身上看到图标(尤其是 .png 图标),但它会显示(带有图标)并且在启动器中运行良好。

除非您从桌面使用桌面文件,否则它不需要是可执行的。由于您从 from 运行它/usr/share/applications,因此使其可执行毫无意义。一旦您更正了上述错误,它应该会在启动器中显示并正常工作。(鉴于脚本有效:))


bla*_*899 5

  • 启用它作为可执行文件运行(右键单击 > 属性):

作为可执行文件运行

或者

  • 我已经尝试过这个,而且我的“桌面”文件位于“/usr/share/applications”中,图标仍然没有显示。 (3认同)
  • 伙计们,操作员正在从“/usr/share/applications”运行他的桌面文件(“我将此文件存储到/usr/share/application”),在其中使其可执行是没有意义的。 (2认同)