安装包后将图标添加到桌面

安装包后将图标添加到桌面

有没有办法在安装包时自动为应用程序添加图标?

理想的用例是,用户决定安装某个应用程序,并且作为安装后脚本的一部分,该应用程序图标被添加到桌面。之后,当卸载该应用程序时,这些图标会自动从桌面上删除。

答案1

正如前面提到的,这不是官方软件包应该做的事情。虽然我可以看到这在本地部署中可能很有用。

使用类似这样的内容debian/postinst

#!/bin/sh
for user in /home/*
do
    cp /usr/share/applications/foo.desktop ${user}/Desktop/
    chmod 755 ${user}//Desktop/foo.desktop
done

答案2

从 Unity 的设计来看,桌面并不是应用程序图标放置的首选位置(当然,如果您的工作流程需要,您可以轻松地将它们放在那里)。

话虽如此,将新安装的应用程序放在启动器上而不是桌面上是合理的。通过从软件中心安装,您需要More InfoInstall

在此处输入图片描述

找到Add to Launcher右下角的按钮:

在此处输入图片描述

选择此选项可在安装成功后将应用程序的图标放在启动器上:

在此处输入图片描述

答案3

正如之前的发帖者所说,在安装过程中触碰 /home/USER 中的内容是错误的。如上所述,没有可以将其添加到的全局桌面,那么如果系统上有多个用户会发生什么?或者在安装后添加了用户?

话虽如此,我相信您可以在 postinst 中通过将 .desktop 文件复制到 /home//Desktop/ 文件夹来完成此操作。您还需要有一个 prerm(或者可能是 postrm)来在卸载期间删除该文件。在删除之前验证该文件是否存在,以防用户删除了桌面图标(此外,如果其他用户卸载它会发生什么?)。此时,这变得非常混乱。

从技术上讲,这应该可行。我只是不确定你是否能够超越 REVU 并将其纳入官方 Ubuntu 存储库。

相关内容