2012-09-24 74 views
2

我想使用xdg-desktop-icon工具,因为它可以编写脚本并且可以跨桌面(至少在Linux上使用Gnome和KDE)。根据freedesktop.org至少它应该这样做。 1如何使用xdg-desktop-icon创建Linux桌面图标跨桌面(KDE,GNOME)?

做了一个最小的文件:(成功)test.desktop

[Desktop Entry] 

Encoding=UTF-8 
Type=Application 

Exec=test 
Icon=test 

Name=test 

使用XDG-桌面图标...

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

退出代码为0。但是......我在我的桌面上看不到任何新图标。也不是在重新启动后。这在使用KDE的Ubuntu Precise 12.04和使用KDE的Debian Wheezy上失败了。

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

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

+0

只要把'.desktop'文件放在任何你想要的地方。我不知道这个“安装”是什么。 –

回答

1

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

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

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

不要忘记,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 ... 

,这将给你一个多余的行告诉你桌面文件的安装位置。此时,如果图标尚未安装,它可能会显示一个丑陋的默认图标。

+0

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

+0

hey @詹姆斯米奇,你知道你需要默认或其他活动,包括桌面文件夹视图活动吗?图标很可能在桌面文件夹中创建,而不是直接在磁盘上。您也可以手动检查文件管理器中的桌面文件夹/ home/user/Desktop(Arbeitsfächein german)。这很尴尬,不是吗? –