当前位置: 首页>>技术教程>>正文


如何强制Unity重载〜/.local/share/applications/

, ,

问题描述

假设我在~/.local/share/applications/更改/添加了一些myapp.desktop文件。有一段时间Ubuntu Unity仍会在Ubuntu按钮下显示Unity镜头的旧应用程序快捷方式。需要一些时间(或只需一次重启)才能在那里更新应用程序列表。

我如何强制Unity重新加载~/.local/share/applications并在镜头中正确反映快捷方式?

最佳解决方案

有点晚了,但我在找到解决方案之前偶然发现了这个问题,至少我的问题,谷歌搜索相关的东西,几乎放弃了。

根据本指南help.ubuntu.com,不要只在/usr/local/share/applications~/.local/share/applications中编辑或创建.desktop文件。相反,在其他地方创建文件并使用

desktop-file-install <your_file.desktop>

添加文件。

例如。你创建~/myapp.desktop并做

desktop-file-install --dir=$HOME/.local/share/applications ~/myapp.desktop

现有的同名文件将被覆盖并统一更新,如果不再需要来源,可以使用--delete-original,或者

sudo desktop-file-install ~/myapp.desktop

为所有用户安装它。

次佳解决方案

执行此操作的方法是运行该命令

killall unity-scope-home

打开仪表板后,该过程将再次自动启动。

然后显示正确的图标……

第三种解决方案

根据this answer(并且您可以找到许多其他相同的意义),遗憾的是似乎没有命令让unity-applications-daemon刷新其应用程序缓存。但我可以确认unity将自动检测〜/.local /share /applications中的.desktop文件的任何更改。如果这些更改无法立即显示,请尝试注销并再次进行刷新。

第四种方案

update-desktop-database是刷新.desktop数据库的命令。

参考资料

本文由Ubuntu问答整理, 博文地址: https://ubuntuqa.com/article/1495.html,未经允许,请勿转载。