Учитывая путь к исполняемому файлу (скажем /usr/bin/gvim), как я могу найти файл Gnome .desktop для этого приложения?
Я запутался в python, поэтому самый полезный ответ на python был бы полезен.
Если ваш пакет установлен из пакета (а не из источника), вы можете использовать (в Bash):
dpkg -L $(dpkg -S /usr/bin/pidgin | cut -f1 -d: ) | grep \.desktop$
В случае gvim он ничего не выводит. У вас есть другая проблема, на самом деле, gvim является альтернативой. «True» gvim может быть несколькими программами. На моем компьютере это /usr/bin/vim.gnome. Давайте попробуем. Это тоже не работает ... потому что в том же пакете нет .desktop, что vim.gnome. Фактически, в этом сложном случае .desktop находится в другой упаковке, общей для всех графических интерфейсов Vim: vim-gui-common
Файлы .desktop для большинства приложений хранятся в:
/usr/share/applications
некоторые файлы .desktop также могут быть сохранены в:
/usr/local/share/applications
или (для пользовательских настроек ) в:
~/.local/share/applications
Вы можете искать все файлы на рабочем столе. Например, чтобы найти файл рабочего стола, относящийся к gedit:
grep -li exec=gedit $(locate -r '\.desktop$')
Вы можете выполнить 1. sudo find /path_to_folder/ -iname *.desktop в целом. И 2. sudo find / -iname *.desktop в вашем случае.