问题描述
假设我在~/.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
数据库的命令。