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

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

我打算从 Windows 7 改为 Ubuntu。

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

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

然后我使用终端:

sudo gedit

到:

[desktop entry]
Name=Account
Exec=/home/user/jameica/jameica.sh
Icon=/home/user/icons/ico_account.png
Terminal=false
Type=application

我将此文件存储/usr/share/applicationaccount.desktop

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

怎么了?

答案1

截至 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

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

[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

下面的命令根本就无法运行:

[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

答案2

您的桌面文件存在一些问题:

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

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

由于这些错误,桌面文件将无法工作,也不会显示其图标,但是:

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

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

答案3

  • 使其作为可执行文件运行(右键单击>属性):

作为可执行文件运行

或者

  • 使其作为可执行文件(命令行)运行:

    sudo chmod +x /usr/share/application/account.desktop
    

答案4

我使用 运行 .desktop 文件gtk-launch,这解决了我的问题,我不知道为什么,但它有效

相关内容