.desktop 文件 EXEC 字段如何工作?

.desktop 文件 EXEC 字段如何工作?

几个月来我一直被这个可怕的问题困扰。我目前正在使用 Unity 2D,我使用 .desktop 文件管理菜单条目,这很累。有没有更好的方法来管理它们?无论如何,问题来自 EXEC 字段。我太累了!我已经努力解决这个问题好几天了!有一次我差点精神崩溃。例如,我尝试添加的最新条目是一个 Windows 游戏的条目(使用 Wine):

[Desktop Entry]
Name=Venus Patrol 1.1
Icon=/usr/share/icons/venuspatrol.jpg
Type=Application
Categories=Game;
Exec=wine "/home/LOL/Autres/ProgramFiles/Games/Venus Patrol 1.1/VENUS PATROL.exe"
Path="/home/LOL/Autres/ProgramFiles/Games/Venus Patrol 1.1"
Keywords=game;indie;jam;
Terminal=true
GenericName=Indie game by Neil Thapen originally made for TIGSource Cockpit Competition 2009

我把可直接执行的程序和游戏(不需要安装,主要是 Windows 的)放在“/home/LOL/Autres/ProgramFiles”目录中。我不喜欢摆弄根文件夹,因为我必须以根用户身份打开文件管理器并浏览所有系统文件夹。

无论路径是否包含空格,它都不起作用。无论我是否指定环境 WINEPREFIX 路径,它都不起作用。我试过 Alacarte,但它效果不好。我一直在阅读,但没有帮助。

请帮帮我,我需要一些帮助。你有什么想法吗?

PS:...嗯,是的,我是个挑剔的人

编辑:因此,在格鲁伯先生回复之后,我更新了我的 .desktop 文件,但没有成功:

[Desktop Entry]
Name=Venus Patrol 1.1
Icon=/usr/share/icons/venuspatrol.jpg
Type=Application
Categories=Game;
TryExec=/home/LOL/Autres/ProgramFiles/Games/Venus\sPatrol\s1.1/VENUS\sPATROL.exe
Exec=wine "/home/LOL/Autres/ProgramFiles/Games/Venus Patrol 1.1/VENUS PATROL.exe"
Path="/home/LOL/Autres/ProgramFiles/Games/Venus Patrol 1.1"
Keywords=game;indie;jam;
Terminal=true
GenericName=Indie game by Neil Thapen originally made for TIGSource Cockpit Competition 2009.

无论我是否精确指定 Path 变量,它都不起作用。这可能与 Wine(WINEPREFIX 等)有关,因为我(据说)最终很好地编写了 Exec 字段。

答案1

如果您使用 shell 功能,则需要使用sh -c "the command"。此外,使用 Wine 时,您需要为某些内容设置当前目录。man wine

答案2

我建议您尝试将 Exec 行更改为:

Exec="/usr/bin/wine /home/LOL/Autres/ProgramFiles/Games/Venus Patrol 1.1/VENUS PATROL.exe"

答案3

我也遇到了同样的问题,我无法使用任何我能找到的答案来解决这个问题。结果发现我错误地为桌面文件设置了错误的权限。如果权限未设置为 644 ( sudo chmod 644 [filename]),启动板中的链接出于某种原因对我来说不起作用。也许这也是你的问题?

答案4

在 Path= 上将 / 放在末尾

例子:

路径=“/home/LOL/Autres/ProgramFiles/Games/Venus Patrol 1.1/”

相关内容