我有一个这样的 .desktop 文件,我用它来将一个内部工具分发给非技术人员,以便他们在我的 ubuntu 系统上安装。该工具以 CD/DVD 形式提供。在 18.04 上,他们会插入 CD/DVD,双击启动器图标,然后安装程序脚本就会启动(然后安装该工具)。
我无法在 22.04 上使用它。安装媒体后,我看到的不是“启动器”图标,而是 mytool.desktop 文件。双击该文件可在文本编辑器中打开 .desktop 文件。
.desktop 文件的权限为 555,如果我右键单击查看属性,则会选中“允许将文件作为程序执行”框。
此用例不再受支持吗?我还遗漏了什么吗?我看到过一些帖子建议将桌面文件移动到文件系统上的特定文件夹,但我的用例是让用户能够轻松地启动安装程序。
这是我的 .desktop 文件的一个经过稍微净化的版本。desktop-file-validate
没有报告任何错误。
[Desktop Entry]
Version=1.4
Name=Launch My Tool
Comment=Launch My Tool
Exec="/bin/sh -c /path/to/file/on/disk.sh"
Terminal=false
Type=Application
Icon=application-x-executable
答案1
事实上,正如您自己所怀疑的那样,这种用户案例不再受支持。从几个版本开始,.desktop
文件管理器中的文件不再以启动器的形式出现,而是以在文本编辑器中打开的纯文本文件的形式出现。事实上,Gnome 桌面(带有 nautilus)已经弃用了通过双击执行任何文件的整个概念。对于媒体,一些标准安装的应用程序可以在插入时自动启动(例如,插入音频 CD 时媒体播放器),但您无法自动运行插入媒体中的任何内容。
这是出于安全考虑。它避免了用户无意中运行软件,这些软件可能会造成损害,甚至可能是恶意的。这个想法是软件应该以标准方式运行(通过图标或通过键入搜索路径中正确安装的可执行文件的名称,尽管仍然可以通过键入完整路径(包括./...
当前目录中的可执行文件)在任何地方运行可执行文件。然而,后者不太可能意外完成。
显然,在您的使用案例中,这会导致从插入驱动器部署工具(在某种程度上)变得不太用户友好。
最方便用户使用的方法可能是将软件打包为.deb
文件。双击它后,软件中心将开始提示安装。这还会使您的工具集成到 APT 系统中,因此可以轻松将其删除。
显然,您也可以使用安装脚本,但您需要提供有关如何启动它的几个步骤的说明。