2

我想使用 xdg-desktop-icon 工具,因为它可以编写脚本并且可以跨桌面工作(至少在带有 Gnome 和 KDE 的 Linux 上)。至少根据 freedesktop.org 应该这样做。1

制作了一个最小的文件:test.desktop

[Desktop Entry]

Encoding=UTF-8
Type=Application

Exec=test
Icon=test

Name=test

使用 xdg-desktop-icon...

xdg-desktop-icon install --novendor test.desktop

退出代码为 0。(成功。)但是... 我在桌面上没有看到任何新图标。重启后也不行。这在带有 KDE 的 Ubuntu Precise 12.04 和带有 KDE 的 Debian Wheezy 上失败了。

如何正确使用 xdg-desktop-icon 工具?

KDE 的问题与桌面设置有关。文件夹视图、报纸视图等。

4

1 回答 1

1

xdg-desktop-icon依赖于xdg-user-dir确定用户桌面目录。您可以检查该命令和文件管理器(或处理桌面的程序)的设置。

假设默认情况下它是/home/user/Desktop,那么您必须在那里检查文件名。如果文件在那里,xdg-desktop-icon则按预期工作。

您必须考虑必须test使用单独安装图标(在您的情况下)xdg-icon-resource。也就是说,如果您没有使用已安装的股票图标或自定义图标,或者您没有使用图标的绝对路径。

不要忘记xdg-desktop-icon仅将.desktop文件复制到特定目录中。不多不少。

如果我正在处理 ~/myapp 目录,我会通过以下方式进行检查:

$ xdg-user-dir
/home/user/Desktop
$ ls `xdg-user-dir`/test.desktop
ls: cannot access /home/user/Desktop/test.desktop: No such file or directory
$ xdg-desktop-icon install --novendor test.desktop
$ ls `xdg-user-dir`/test.desktop
/home/user/Desktop/test.desktop

最终,您可以使用任何xdg-脚本运行:

$ XDG_DEBUG_LEVEL=1 xdg-desktop-icon ...

这将为您提供额外的一行,告诉您桌面文件的安装位置。此时,如果该图标尚未安装,它可能会出现一个难看的默认图标。

于 2012-09-27T00:52:03.567 回答