Вызов файла .desktop из программы запуска открывает его в редакторе, а не программу, которую он описывает.

Oct 29 2019

Я работаю с vanilla-gnome-desktopGNOME Classic на Ubuntu 18.04.

При нажатии Superи ввод KeePassплюса Enter, то ~/Desktop/KeePass.desktopфайл будет открыт в редакторе ( geditв моем случае). Любопытно, что когда - после включения отображения символов рабочего стола ( gsettings set org.gnome.desktop.background show-desktop-icons true) - я дважды щелкаю тот же самый элемент на рабочем столе, приложение открывается, как ожидалось. При отображении в панели запуска .desktopфайл отображается с соответствующим значком приложения (как и на самом рабочем столе) и отображается с путем к ~/Desktop(хотя и расширенным).

Что дает? И как заставить лаунчер вызывать программу, описанную в .desktopфайле?


Возможно актуальная информация:

$ cat ~/Desktop/KeePass.desktop |sed 's|'$(whoami)'|username|g'
#!/usr/bin/env xdg-open

[Desktop Entry]
Version=1.0
Type=Application
Terminal=false
Icon[en_US]=/home/username/bin/KeePass/KeePass_icon.png
Exec=mono /home/username/bin/KeePass/KeePass.exe
Name[en_US]=KeePass
Name=KeePass
Icon=/home/username/bin/KeePass/KeePass_icon.png
X-Desktop-File-Install-Version=0.23

... и:

$ ls -l bin/KeePass/KeePass.exe Desktop/KeePass.desktop |sed 's|'$(whoami)'|username|g'
-rwxr-xr-x 1 username username 3315280 2019-09-22 21:27 bin/KeePass/KeePass.exe
-rwxr-xr-x 1 username username     302 2019-09-22 21:27 Desktop/KeePass.desktop

Кроме того, desktop-file-validate Desktop/KeePass.desktopвозвращается пустой с кодом выхода 0. Насколько я помню, я desktop-file-editизначально создавал указанный .desktopфайл, но добавил monoв Execстроку, чтобы не запутать систему, потому что я также использую Wine и Crossover для определенных приложений.

Ответы

3 vanadium Oct 30 2019 at 09:28

Ваш файл .desktop, вероятно, появится как найденный файл в обзоре оболочки Gnome, и, следовательно, обрабатывается соответствующим образом.

Убедитесь, что ваш файл .desktop находится в ~/.local/share/applications. Только тогда его правильно подберут как приложение. Вы можете оставить копию на рабочем столе, если вам нравится возможность запускать ее прямо с рабочего стола, или удалить ее там и закрепить на Dash (для этого щелкните правой кнопкой мыши в обзоре), если вы хотите следовать рабочему процессу, который имеют в виду разработчики Gnome.