如何为非管理员安装程序以使其出现在他的活动中?

如何为非管理员安装程序以使其出现在他的活动中?

我为妻子创建了一个账户,她没有管理员权限。她需要的音乐程序之一是 Rosegarden。有两个问题:

  1. 我为她安装的所有程序均未出现在她的“活动”屏幕中。她可以搜索这些程序,但我想她不会记得要搜索的程序名称。搜索显示的内容如下: 活动

  2. Rosegarden 不能成为最爱

最喜欢的

我能做些什么来帮助她?如果我使用她的用户名登录,则没有 sudo 命令。我仍然可以从 sudo 存在的我的帐户访问她的文件。显然,我无法从我的帐户更改她的活动屏幕中的应用程序。

编辑:为了更正桌面文件,我添加了该行(但没有帮助):

StartupWMClass="Rosegarden"

镜子给了我

Untitled - Rosegarden
wmclass Rosegarden
<untracked>

编辑 2:我仍然不明白究竟是什么原因导致应用程序在未经搜索的情况下在“活动”中可见。我想也许有一个程序可以在启动时进行扫描,所以我将 rosegarden 放在桌面上,并将 Qsynth 和 Qjack 固定在收藏夹栏中。

然后我注销了,甚至尝试关机,但它们在“活动”中仍然不可见(不进行搜索)。所以这仍然是个谜,但至少我的妻子有足够的时间工作,而不必被迫记住程序名称。也许随着时间的推移,这些程序会神奇地变得可见???

同样,我可以将此讨论的链接转发给 rosegarden 开发人员,这样他们就能清楚地知道需要修复哪些问题。我修复的问题是一个好的开始,但还不够。

提前感谢所有的建议。

答案1

Rosegarden 不能成为最爱

联系 rosegarden 的开发人员。他们需要修复软件的执行方式,并且可能需要修复 .desktop 文件。


但是,您可以在桌面上放置一个应用程序启动器。

将 .desktop 文件复制到您的桌面(从您妻子的帐户执行此操作,您不需要 sudo)。

cp /usr/share/applications/com.rosegardenmusic.rosegarden.desktop ~/Desktop/
chmod +x ~/Desktop/com.rosegardenmusic.rosegarden.desktop

现在它应该出现在桌面上(作为应用程序启动器)。

答案2

Rosegarden 无法固定可能是因为 shell 无法将正在运行的窗口与图标关联。如果生成的窗口的 WM_CLASS 完全不同,则会发生这种情况。

修正桌面启动器

将 .desktop 文件复制到~/.local/share/applications(以便在用户级别进行更改)或复制到/usr/local/share/applications(如果要为所有用户进行更改)并在文本编辑器中打开该副本(在后一个目录中,您需要 root 权限)。

添加如下行

StartupWMClass=<WM_Class>

您可以<WM_Class>用正在运行的应用程序的实际窗口类来替换。

确定 WMClass

启动程序并

如果你韓國:运行命令xprop WM_CLASS。您需要第二个字符串,例如在 中WM_CLASS(STRING) = "Navigator", "firefox",您需要firefox

如果你在 Gnome Shell 中韦兰Alt+ ,然后F2输入,并在“镜子”中,在 Windows 选项卡上找到窗口和类。lgEnter

经过这些更改后,shell 会将正在运行的应用程序与正确的启动器关联起来,然后您就可以固定它。

相关内容