Как принудительно перезагрузить Unity ~/.local/share/applications/

Как принудительно перезагрузить Unity ~/.local/share/applications/

Допустим, я изменил/добавил какой-то myapp.desktopфайл в ~/.local/share/applications/. Некоторое время Ubuntu Unity будет показывать мне старые ярлыки приложений в линзе Unity под кнопкой Ubuntu. Потребуется некоторое время (или всего одна перезагрузка), чтобы обновить список приложений там.

Как принудительно перезагрузить Unity ~/.local/share/applicationsи правильно отобразить сочетания клавиш в Lens?

решение1

Немного поздно, но я наткнулся на эту ветку, прежде чем нашел решение, по крайней мере, моей проблемы, гуглил что-то похожее и почти сдался.

Согласно этому руководствуhelp.ubuntu.com, не просто редактируйте или создавайте .desktopфайлы в /usr/local/share/applicationsили ~/.local/share/applications. Вместо этого создайте файл в другом месте и используйте

desktop-file-install <your_file.desktop>

чтобы добавить файл.

Например, вы создаете ~/myapp.desktopи делаете

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

Существующие файлы с тем же именем будут перезаписаны, а Unity обновлены, вы можете использовать их, --delete-originalесли исходный код больше не нужен, или

sudo desktop-file-install ~/myapp.desktop

установить его для всех пользователей.

решение2

sudo update-desktop-databaseобновит .desktopбазу данных.

решение3

Для этого выполните команду

killall unity-scope-home

после открытия панели процесс автоматически запускается снова.

Затем отображаются правильные значки...

решение4

Этот ответ не подразумевает перезагрузку рабочего стола.


Хоть и довольно поздно, но появилась служебная команда для обновления кэша базы данных рабочего стола под названием update-desktop-database.

Обновление материалов, добавленных в $HOME/.local/share/applications/, используйте:

>> update-desktop-database

Обновление вещей, добавленных в глобальные, таких как /usr/share/ubuntu/applications, /usr/share/gnome/applications, /usr/share/applications, и т.д., выполняется с помощью:

>> sudo update-desktop-database

Связанный контент